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

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