Payment (PMT)
|
Compute the payment against loan principal plus interest. |
- syse.pmt(rate, nper, pv, fv=0, when='end')
Compute the payment against loan principal plus interest.
- Given:
a present value, pv (e.g., an amount borrowed)
a future value, fv (e.g., 0)
an interest rate compounded once per period, of which there are
nper total
and (optional) specification of whether payment is made at the beginning (when = {‘begin’, 1}) or the end (when = {‘end’, 0}) of each period
- Returns:
the (fixed) periodic payment.
- Parameters:
rate (array_like) – Rate of interest (per period)
nper (array_like) – Number of compounding periods
pv (array_like) – Present value
fv (array_like, optional) – Future value (default = 0)
when ({{'begin', 1}, {'end', 0}}, {string, int}) – When payments are due (‘begin’ (1) or ‘end’ (0))
Returns:
ndarray: Payment against loan plus interest. If all input is scalar, returns a scalar float. If any input is array_like, returns payment for each input element. If multiple inputs are array_like, they all must have the same shape.
Note
- The payment is computed by solving the equation::
fv + pv*(1 + rate)**nper + pmt*(1 + rate*when)/rate*((1 + rate)**nper - 1) == 0
- or, when
rate == 0
:: fv + pv + pmt * nper == 0
for
pmt
. Note that computing a monthly mortgage payment is only one use for this function. For example, pmt returns the periodic deposit one must make to achieve a specified future balance given an initial deposit, a fixed, periodically compounded interest rate, and the total number of periods.Examples:
What is the monthly payment needed to pay off a $200,000 loan in 15 years at an annual interest rate of 7.5%?
import syse as syse syse.pmt(0.075/12, 12*15, 200000) Output = -1854.0247200054619
In order to pay-off (i.e., have a future-value of 0) the $200,000 obtained today, a monthly payment of $1,854.02 would be required. Note that this example illustrates usage of fv having a default value of 0.