Function SecurityDiscountedRedemption(SettlementDate, MaturityDate, Price, DiscountRate, Basis)

SecurityDiscountedRedemption

The function SecurityDiscountedRedemption returns the repayment at maturity date of a discounted security.

SecurityDiscountedRedemption(
    SettlementDate,   ! (input) scalar string expression
    MaturityDate,     ! (input) scalar string expression
    Price,            ! (input) numerical expression
    DiscountRate,     ! (input) numerical expression
    [Basis]           ! (optional) numerical expression
    )

Arguments

SettlementDate

The date of settlement of the security. SettlementDate must be given in a date format.

MaturityDate

The date of maturity of the security. MaturityDate must also be in date format and must be a date after SettlementDate.

Price

The price of the security at settlement date. Price must be a positive real number.

DiscountRate

The rate the security’s value increases per year as a fraction of the redemption value. DiscountRate must be a positive real number.

Basis

The day-count basis method to be used. The default is 1.

Return Value

The function SecurityDiscountedRedemption returns the amount paid at maturity date.

Note

  • This function can be used in an objective function or constraint and the input parameters Price and DiscountRate can be used as a variable.

  • The function SecurityDiscountedRedemption is similar to the Excel function RECEIVED.

Example

Buying a security now for a given price, what will be the maturity value next year with a discount rate of 10%:

_p_sdr := SecurityDiscountedRedemption(
    SettlementDate :  "2024-01-01",
    MaturityDate   :  "2025-01-01",
    Price          :  90,
    DiscountRate   :  0.1,
    Basis          :  1);
block where single_column_display := 1, listing_number_precision := 6 ;
    display _p_sdr ;
endblock ;

This results in the following redemption value:

_p_sdr := 100 ;

References