Function InvestmentConstantCumulativeInterestPayment(PresentValue, FutureValue, NumberPeriods, StartPeriod, EndPeriod, InterestRate, Type)

InvestmentConstantCumulativeInterestPayment

The function InvestmentConstantCumulativeInterestPayment returns the cumulative interest payment for the specified interval for an investment based on periodic, constant payments and a constant interest rate. Every periodic payment can be divided in two parts: an interest payment and a principal payment.

InvestmentConstantCumulativeInterestPayment(
    PresentValue,            ! (input) numerical expression
    FutureValue,             ! (input) numerical expression
    NumberPeriods,           ! (input) numerical expression
    StartPeriod,             ! (input) numerical expression
    EndPeriod,               ! (input) numerical expression
    InterestRate,            ! (input) numerical expression
    Type                     ! (input) numerical expression
    )

Arguments

PresentValue

The total amount that a series of future payments is worth at this moment. PresentValue must be a real number.

FutureValue

The cash balance you want to attain after the last payment is made. FutureValue must be a real number.

NumberPeriods

The total number of payment periods for the investment. NumberPeriods must be a positive integer.

StartPeriod

The starting period of the interval for which you want to compute the cumulative interest payment. StartPeriod must be an integer in the range \(\{ 1, NumberPeriods \}\).

EndPeriod

The ending period of the interval for which you want to compute the cumulative interest payment. EndPeriod must be an integer in the range \(\{ StartPeriod, NumberPeriods\}\).

InterestRate

The interest rate per period for the investment. InterestRate must be a numerical expression in the range \((-1, 1)\).

Type

Indicates when payments are due. \(Type = 0\): Payments are due at the end of each period. \(Type = 1\): Payments are due at the beginning of each period.

Return Value

The function InvestmentConstantCumulativeInterestPayment returns the sum of the interest payments for the periods in the specified interval.

Note

  • This function can be used in an objective function or constraint and the input parameters PresentValue, FutureValue and InterestRate can be used as a variable.

  • The function InvestmentConstantCumulativeInterestPayment is similar to the Excel function CUMIPMT.

Example

How much of the payments during the first half of the loan is interest?

_p_interestFirstFiveYears :=
    InvestmentConstantCumulativeInterestPayment(
        PresentValue  :  10,
        FutureValue   :  0,
        NumberPeriods :  10,
        StartPeriod   :  1,
        EndPeriod     :  5,
        InterestRate  :  0.1,
        type          :  0);
block where single_column_display := 1, listing_number_precision := 6 ;
    display _p_interestFirstFiveYears ;
endblock ;

That is significant:

_p_interestFirstFiveYears := -4.306601 ;

References

  • General equations for investments with constant, periodic payments.