Return the (signed fractional) number of years between two dates.

Synopsis

Declared in <bbldc_terminatedisda30360eom.h>

static
double
yearsDiff(
    bdlt::Date const& beginDate,
    bdlt::Date const& endDate,
    bdlt::Date const& terminationDate = bdlt::Date(9999, 12, 31));

Description

Return the (signed fractional) number of years between the specified beginDate and endDate, with the optionally specified terminationDate, according to the ISDA 30/360 end‐of‐month day‐count convention. If beginDate <= endDate, then the result is non‐negative. Note that reversing the order of beginDate and endDate negates the result; specifically, |yearsDiff(b, e) + yearsDiff(e, b)| <= 1.0e‐15 for all dates b and e. Also note that, in accordance with the convention definition, there are no constraints upon the supplied dates.

Return Value

the signed fractional number of years between the dates

Parameters

Name

Description

beginDate

start of the date range

endDate

end of the date range

terminationDate

optional termination date (e.g., maturity date)

Created with MrDocs