- Function InvestmentConstantPeriodicPayment(PresentValue, FutureValue, NumberPeriods, InterestRate, Type)
InvestmentConstantPeriodicPayment
The function InvestmentConstantPeriodicPayment
returns the periodic
payment for an investment based on periodic, constant payments and a
constant interest rate.
InvestmentConstantPeriodicPayment(
PresentValue, ! (input) numerical expression
FutureValue, ! (input) numerical expression
NumberPeriods, ! (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.
- 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
InvestmentConstantPeriodicPayment
returns the periodic payment for the investment.
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
InvestmentConstantPeriodicPayment
is similar to the Excel functionPMT
.
Example
Perhaps the following will encourage you to save up first:
! How much needs to be paid per period,
! for 10 periods, and an interest rate of 4%
! to attain a capital of 100 in the end?
_p_constPeriodicPaymentSavingup := InvestmentConstantPeriodicPayment(
PresentValue : 0,
FutureValue : 100,
NumberPeriods : 10,
InterestRate : 0.04,
type : 0);
! Spending a 100 now, how much do I have to
! reimburse/compensate over each of the 10 periods,
! whereby the interest rate is 4%
_p_constPeriodicPaymentReimbursing := InvestmentConstantPeriodicPayment(
PresentValue : 100,
FutureValue : 0,
NumberPeriods : 10,
InterestRate : 0.04,
type : 0);
block where single_column_display := 1, listing_number_precision := 6 ;
display { _p_constPeriodicPaymentSavingup, _p_constPeriodicPaymentReimbursing } ;
endblock ;
The result of this example shows there is a 50% difference in amount to be saved per period, if you spent it at the beginning or at the end:
_p_constPeriodicPaymentSavingup := -8.329094 ;
_p_constPeriodicPaymentReimbursing := -12.329094 ;
References
General equations for investments with constant, periodic payments.