DISCOUNT_PR Function
Evaluates the price of a security sold for less than its face value.
Usage
result = DISCOUNT_PR(settlement, maturity, discount_rate, redemption, 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 .
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 .
discount_rate—The interest rate implied when a security is sold for less than its value at maturity in lieu of interest payments.
redemption—Redemption value per $100 face value of the security.
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 price per face value for a discounted security. If no result can be computed, NaN is returned.
Input Keywords
Double—If present and nonzero, double precision is used.
Discussion
Function DISCOUNT_PR computes the price per $100 face value of a discounted security.
It is computed using the following:
In the equation above, DSM represents the number of days starting at the settlement date and ending with the maturity date. B represents the number of days in a year based on the annual basis.
Example
In this example, DISCOUNT_PR computes the price of the discounted bond with the settlement date of July 1, 2000, and maturity date of July 1, 2001, at the discount rate of 5% using the US (NASD) 30/360 day count method.
settlement = VAR_TO_DT(2000, 7, 1)
maturity = VAR_TO_DT(2001, 7, 1)
discount = .05
redemption = 100.
basis = 1
PRINT, DISCOUNT_PR(settlement, maturity, discount, redemption, $
   basis
; PV-WAVE prints: 95.0000