DISCOUNT_YLD Function

Evaluates the annual yield of a discounted security.

Usage

result = DISCOUNT_YLD(settlement, maturity, price, redemption, basis)

Input Parameters

settlementThe 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.

maturityThe 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.

pricePrice per $100 face value of the security.

redemptionRedemption value per $100 face value of the security.

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

0Actual/Actual

1US (NASD) 30/360

2Actual/360

3Actual/365

4European 30/360

Returned Value

resultThe annual yield for a discounted security. If no result can be computed, NaN is returned.

Input Keywords

DoubleIf present and nonzero, double precision is used.

Discussion

Function DISCOUNT_YLD computes the annual yield for a discounted security.

It is computed using the following:

 

In the equation above, B represents the number of days in a year based on the annual basis, and DSM represents the number of days starting with the settlement date and ending with the maturity date.

Example

In this example, DISCOUNT_YLD computes the annual yield for a discounted security which is selling at $95.40663 with the settlement date of July 1, 1995, and maturity date of July 1, 2005, using the US (NASD) 30/360 day count method.

settlement = VAR_TO_DT(1995, 7, 1)
maturity = VAR_TO_DT(2005, 7, 1)
price = 95.40663
redemption = 105.
basis = 1
PRINT, DISCOUNT_YLD(settlement, maturity, price, redemption, $
   basis)
; PV-WAVE prints: 0.0100552