amort.table {FinancialMath} | R Documentation |
Amortization Table
Description
Produces an amortization table for paying off a loan while also solving for either the number of payments, loan amount, or the payment amount. In the amortization table the payment amount, interest paid, principal paid, and balance of the loan are given for each period. If n ends up not being a whole number, outputs for the balloon payment, drop payment and last regular payment are provided. The total interest paid, and total amount paid is also given. It can also plot the percentage of each payment toward interest vs. period.
Usage
amort.table(Loan=NA,n=NA,pmt=NA,i,ic=1,pf=1,plot=FALSE)
Arguments
Loan |
loan amount |
n |
the number of payments/periods |
pmt |
value of level payments |
i |
nominal interest rate convertible ic times per year |
ic |
interest conversion frequency per year |
pf |
the payment frequency- number of payments per year |
plot |
tells whether or not to plot the percentage of each payment toward interest vs. period |
Details
Effective Rate of Interest: eff.i=(1+\frac{i}{ic})^{ic}-1
j=(1+eff.i)^{\frac{1}{pf}}-1
Loan=pmt*{a_{\left. {\overline {\, n \,}}\! \right |j}}
Balance at the end of period t: B_t=pmt*{a_{\left. {\overline {\, n-t \,}}\! \right |j}}
Interest paid at the end of period t: i_t=B_{t-1}*j
Principal paid at the end of period t: p_t=pmt-i_t
Total Paid=pmt*n
Total Interest Paid=pmt*n-Loan
If n=n^*+k
where n^*
is an integer and 0<k<1
:
Last regular payment (at period n^*
) =pmt*{s_{\left. {\overline {\, k \,}}\! \right |j}}
Drop payment (at period n^*+1
) =Loan*(1+j)^{n^*+1}-pmt*{s_{\left. {\overline {\, n^* \,}}\! \right |j}}
Balloon payment (at period n^*
) =Loan*(1+j)^{n^*}-pmt*{s_{\left. {\overline {\, n^* \,}}\! \right |j}}+pmt
Value
A list of two components.
Schedule |
A data frame of the amortization schedule. |
Other |
A matrix of the input variables and other calculated variables. |
Note
Assumes that payments are made at the end of each period.
One of n, Loan, or pmt must be NA (unknown).
If pmt is less than the amount of interest accumulated in the first period, then the function will stop because the loan will never be paid off due to the payments being too small.
If pmt is greater than the loan amount plus interest accumulated in the first period, then the function will stop because one payment will pay off the loan.
Author(s)
Kameron Penn and Jack Schmidt
See Also
Examples
amort.table(Loan=1000,n=2,i=.005,ic=1,pf=1)
amort.table(Loan=100,pmt=40,i=.02,ic=2,pf=2,plot=FALSE)
amort.table(Loan=NA,pmt=102.77,n=10,i=.005,plot=TRUE)