This calculates the years between two dates using the 30/360 (US) day basis convention. This convention assumes that months consists of 30 days and years consist of 360 calendar days.

thirty_360_us(date1, date2)

Arguments

date1

A date-time object.

date2

A date-time object.

Value

A numeric value representing the number of years between date1 and date2.

Details

The day count is determined after making the following (ordered) modifications:

  1. If both the start and end dates are the last day of February, set the end date to the 30th.

  2. If the start date is the last day of February, set the start date to the 30th.

  3. If the end date is the 31st and the start date is either the 30th or the 30th, set the end date to the 30th

  4. If the start date is the 31st, set the start date to the 30th.

The year fraction is then calculated as:

$$\frac{(d_2 - d_1) + (m_2 - m_1) \times 30 + (y_2 - y_1) \times 30}{360}$$

The order of date1 and date2 is not important. If date1 is less than date2 then the result will be non-negative. Otherwise, the result will be negative.

This is also known as the EOM adjusted bond basis.

See also