COUPON_DNC Function

Evaluates the number of days starting with the settlement date and ending with the next coupon date.

Usage

result = COUPON_DNC(settlement, maturity, frequency, basis)

Input Parameters

settlement—The date on which payment is made to settle a trade. For a more detailed discussion on dates see Chapter 8, Working with Date/Time Data in the PV‑WAVE User Guide.

maturity—The date on which the bond comes due, and principal and accrued interest are paid. For a more detailed discussion on dates see Chapter 8, Working with Date/Time Data in the PV‑WAVE User Guide.

frequency—Frequency of the interest payments. It should be 1, 2, or 4.

1—One payment per year (Annual payment)

2—Two payments per year (Semi-annual payment)

4—Four payments per year (Quarterly payment)

basis—The method for computing the number of days between two dates. It should be 0, 1, 2, 3, or 4.

0—Actual/Actual

1—US (NASD) 30/360

2—Actual/360

3—Actual/365

4—European 30/360

Returned Value

result—The number of days starting with the settlement date and ending with the next coupon date.

Input Keywords

Double—If present and nonzero, double precision is used.

Discussion

Function COUPON_DNC computes the number of days from the settlement date to the next coupon date. For a good discussion on day count basis, see SIA Standard Securities Calculation Methods 1993, vol. 1, pp. 17-35.

Example

In this example, COUPON_DNC computes the number of days from November 11, 1996, to the next coupon date of a bond with the maturity date of March 1, 2009, using the Actual/365 day count method.

settlement = VAR_TO_DT(1996, 11, 11)
maturity = VAR_TO_DT(2009, 3, 1)
frequency = 2
basis = 3
PRINT, COUPON_DNC(settlement, maturity, frequency, basis)
; PV-WAVE prints: 110