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