Discover

AMORTIZATION SCHEDULE


An 'amortization schedule' is a table detailing each periodic payment on a loan (typically a mortgage), as generated by an amortization calculator.
While a portion of every payment is applied towards both the interest and the principal balance of the loan, the exact amount applied to principal each time varies (with the remainder going to interest). An amortization schedule reveals the specific dollar amount put towards interest, as well as the specific put towards the Principal balance, with each payment. Initially, a large portion of each payment is devoted to interest. As the loan matures, larger portions go towards paying down the principal.
Many kinds of amortization exist, including:

★ Straight line (linear)

★ Declining balance

★ Annuity

★ Bullet (all at once)

★ Increasing balance (negative amortization)
Amortization schedules run in chronological order. The first payment is assumed to take place one full payment period after the loan was taken out, not on the first day (the amortization date) of the loan. The last payment completely pays off the remainder of the loan. Often, the last payment will be a slightly different amount than all earlier payments.
In addition to breaking down each payment into interest and principal portions, an amortization schedule also reveals interest-paid-to-date, principal-paid-to-date, and the remaining principal balance on each payment date.

Contents
Example amortization schedule
Creating an Amortization Schedule
Sample VB.NET Program
External links

Example amortization schedule


(To run your own numbers, try an amortization calculator.)
This amortization schedule is based on the following assumptions:

★ Principal = $100,000

★ Annual Interest rate = 8%

★ Number of payments = 360 (30 years x 12 months x 1 payment per month)

★ Amortized Payment = $733.76
# of payments Principal Interest Principal to-date Interest to-date Principal balance
1 67.09 666.67 67.09 666.67 99932.91
2 67.54 666.22 134.63 1332.89 99865.37
3 67.99 665.77 202.62 1998.66 99797.38
4 68.44 665.32 271.06 2663.98 99728.94
5... 68.90 664.86 339.96 3328.84 99660.04
...359 724.03 9.73 99264.28 164155.56 735.72
360 735.72 4.90 100000.00 164160.46 0.00

There are a few crucial points worth noting when mortgaging a home with an amortized loan.
First, there is substantial disparate allocation of the monthly payments toward the interest, especially during the first '18 years' of the mortgage. Payment 1 allocates 90% of the total payment towards interest and only $67.09 (or 10%) toward the Principal balance. Not until payment '257 or 21 years into the loan' does the payment allocation towards principal and interest even out and subsequently tip the majority of the monthly payment toward Principal balance pay down.
Second, understanding the above statement, the repetitive refinancing of an amortized mortgage loan, even with decreasing interest rates and decreasing Principal balance, can cause the borrower to pay over 500% of the value of the original loan amount. 'Re-amortization' or restarting the amortization schedule via a refinance causes the 90/10 rule of payment allocation to interest and Principal balance accordingly, thus causing substantial monies to be reallocated toward interest again. This economically unfavorable situation is often mitigated by the apparent decrease in monthly payment and interest rate of a refinance, when in fact the borrower is increasing the total cost of the property. This fact is often (understandably) overlooked by borrowers.
Third, the payment on an amortized mortgage loan remains the same for the entire loan term, regardless of Principal balance owed. For example, the payment on the above scenario will remain $733.76 regardless if the Principal balance is $100,000 or $50,000. Paying down large chunks of the Principal balance in no way affects the monthly payment, it simply reduces the term of the loan and reduces the amount of interest that can be charged by the lender resulting in a quicker payoff.
To avoid these caveats of an amortizing mortgage loan many borrowers are choosing an Interest-only loan to satisfy their mortgage financing needs. Interest-only loans have their caveats as well which must be understood before choosing the mortgage payment term that is right for the individual borrower.

Creating an Amortization Schedule


In order to create an amortization schedule, you will need to use the following formula to calculate a periodic payment, P:
P = rac{i imes Principal imes (1 + i)^n}{(1+i)^n-1}
Where i is the periodic interest rate and n is the number of periods (payments) in which the principal is to be paid.
The interest portion of each periodic payment is equal to the periodic interest rate multiplied by the outstanding principal. The principal portion of each periodic payment is equal to the total periodic payment minus the interest portion of the periodic payment.
As an example, let's say that we're lending $100 at a 10% periodic rate to be paid back in five monthly payments (~120% APR). The payment would be:
rac{10% imes $100 imes (100% + 10%)^5}{(100% + 10%)^5-100%} = $26.38
We can now create a table detailing the principal, and interest.
Period Outstanding Balance Payment Principal Interest
1 $100 $26.38 $16.38 $10.00
2 $83.62 $26.38 $18.02 $8.36
3 $65.60 $26.38 $19.82 $6.56
4 $45.78 $26.38 $21.80 $4.58
5 $23.98 $26.38 $23.98 $2.40

Sample VB.NET Program


The following code sample is intended for use in a Microsoft Visual Basic .NET 2005 Windows Console application. With minimal effort is could be converted to work in an ASP.NET or Windows Forms environment. Considering the formula in the previous section, this program will generate payments P1 through Pn-1 having an amount equal to P. Payment Pn will be adjusted to account for any rounding errors. Pn may be less than, equal to, or greater than P.

Sub DoLoanCalc()
' ~120% APR w/ five monthly payments on $100.00 loan
WritePaymentSchedule(120 / 100 / 12, 5, 100)
Console.WriteLine()
Console.WriteLine()
' ~140% APR w/ 19 bi-weekly payments on $2500.00 loan
WritePaymentSchedule(140 / 100 / 365
★ 14, 19, 2500)
End Sub


' Create a simple interest amoritization schedule, rounding each periodic interest payment to the nearest 1/100th (US penny)
Sub WritePaymentSchedule(ByVal PeriodicRate As Double, ByVal NumberOfPeriods As Integer, ByVal LoanAmount As Decimal)
Dim decI, decPmt As Decimal
Dim decTotP, decTotI, decTotPmt As Decimal
Dim strP, strI, strBal, strPmtAmount As String
Dim intColWidth As Integer = 12
' get the simple interest payment
decPmt = GetRoundedSimpleInterestPayment(PeriodicRate, NumberOfPeriods, LoanAmount)
' Write out pretty header
Console.CursorLeft = intColWidth + NumberOfPeriods.ToString.Length - 6
Console.Write("Payment")
Console.CursorLeft = intColWidth
★ 2 + NumberOfPeriods.ToString.Length - 7
Console.Write("Principal")
Console.CursorLeft = intColWidth
★ 3 + NumberOfPeriods.ToString.Length - 5
Console.Write("Interest")
Console.CursorLeft = intColWidth
★ 4 + NumberOfPeriods.ToString.Length - 3
Console.Write("Balance")
Console.WriteLine()
' Write out starting balance
Console.CursorLeft = intColWidth
★ 4 + NumberOfPeriods.ToString.Length - Format(LoanAmount, "0.00").Length + 4
Console.Write(Format(LoanAmount, "0.00"))
Console.WriteLine()
' make a pretty payment amount
strPmtAmount = Format(decPmt, "0.00")
For intX As Integer = 1 To NumberOfPeriods
' figure out amount of current payment that goes to interest
decI = CDec(Math.Round(LoanAmount
★ PeriodicRate, 2))
' adjust the last payment to account for accumulated rounding errors
If intX = NumberOfPeriods Then
decPmt = LoanAmount + decI
strPmtAmount = Format(decPmt, "0.00")
End If
decTotP += decPmt - decI
decTotI += decI
decTotPmt += decPmt
' reduce the loan balance by the amount of the principal payment
LoanAmount -= decPmt - decI
' make pretty strings for output
strI = Format(decI, "0.00")
strP = Format(decPmt - decI, "0.00")
strBal = Format(LoanAmount, "0.00")
' output the pretty values that make up one line in the amort schedule
Console.CursorLeft = NumberOfPeriods.ToString.Length - intX.ToString.Length
Console.Write(intX.ToString)
Console.CursorLeft = intColWidth + NumberOfPeriods.ToString.Length - strPmtAmount.Length + 1
Console.Write(strPmtAmount)
Console.CursorLeft = intColWidth
★ 2 + NumberOfPeriods.ToString.Length - strP.Length + 2
Console.Write(strP)
Console.CursorLeft = intColWidth
★ 3 + NumberOfPeriods.ToString.Length - strI.Length + 3
Console.Write(strI)
Console.CursorLeft = intColWidth
★ 4 + NumberOfPeriods.ToString.Length - strBal.Length + 4
Console.Write(strBal)
Console.WriteLine()
Next
' Write out totals
Console.CursorLeft = intColWidth + NumberOfPeriods.ToString.Length - Format(decTotPmt, "0.00").Length + 1
Console.Write(Format(decTotPmt, "0.00"))
Console.CursorLeft = intColWidth
★ 2 + NumberOfPeriods.ToString.Length - Format(decTotP, "0.00").Length + 2
Console.Write(Format(decTotP, "0.00"))
Console.CursorLeft = intColWidth
★ 3 + NumberOfPeriods.ToString.Length - Format(decTotI, "0.00").Length + 3
Console.Write(Format(decTotI, "0.00"))
Console.WriteLine()
End Sub


' Calculates a loan payment using simple interest - this is the same as the Excel PMT function except we round to the nearest 1/100th (US penny)
Function GetRoundedSimpleInterestPayment(ByVal RatePerPeriod As Double, ByVal NumberOfPeriods As Integer, ByVal LoanAmount As Double) As Decimal
Return CDec(Math.Round((RatePerPeriod
★ LoanAmount
★ (1 + RatePerPeriod) ^ NumberOfPeriods) / ((1 + RatePerPeriod) ^ NumberOfPeriods - 1), 2))
End Function

The output from the above program is as follows:

Payment Principal Interest Balance
100.00
1 26.38 16.38 10.00 83.62
2 26.38 18.02 8.36 65.60
3 26.38 19.82 6.56 45.78
4 26.38 21.80 4.58 23.98
5 26.38 23.98 2.40 0.00
131.90 100.00 31.90
Payment Principal Interest Balance
2500.00
1 213.14 78.89 134.25 2421.11
2 213.14 83.13 130.01 2337.98
3 213.14 87.59 125.55 2250.39
4 213.14 92.30 120.84 2158.09
5 213.14 97.25 115.89 2060.84
6 213.14 102.48 110.66 1958.36
7 213.14 107.98 105.16 1850.38
8 213.14 113.78 99.36 1736.60
9 213.14 119.89 93.25 1616.71
10 213.14 126.32 86.82 1490.39
11 213.14 133.11 80.03 1357.28
12 213.14 140.26 72.88 1217.02
13 213.14 147.79 65.35 1069.23
14 213.14 155.72 57.42 913.51
15 213.14 164.09 49.05 749.42
16 213.14 172.90 40.24 576.52
17 213.14 182.18 30.96 394.34
18 213.14 191.96 21.18 202.38
19 213.25 202.38 10.87 0.00
4049.77 2500.00 1549.77

External links



Amortization schedule

This article provided by Wikipedia. To edit the contents of this article, click here for original source.

psst.. try this: add to faves