BBS: Inland Empire Archive Date: 07-11-92 (16:02) Number: 287 From: DON KROUSE Refer#: NONE To: RICHARD ATTENBOROUGH Recvd: NO Subj: Amortization Formuli Conf: (2) Quik_Bas
PL> RA> basis. Maybe I am just missaplying the equation. It seems to tell me PL> RA> that if I go from monthly payments to biweekly payments that I end up PL> RA> paying the same amount of money! (wierd) Here is the equation that I PL> RA> have. Hi Richard, I missed your original post, but saw part of your message that someone else quoted. I've been a loan officer for many years, and have written quite a few applications that involve "Time Value of Money" calculations, so mabey I can help. The problem is not in the use of the formula, it's in an incorrect assumption of what a BiWeekly mortgage is. A BiWeekly mortgage is simply a monthly mortgage in which you pay half of the monthly payment amount every two weeks. This amounts to the eqiuvalent of 13 monthly payments per year instead of 12. There is only a small effect from increasing the number of Payment/Interest periods. The big effect is from accelerated principal reduction. The excess payments reduce the principal balance which therefore reduces the interest due for the next period which means that even more of the next payment goes to reduce principal......... The end effect is that a 30 year loan will pay off in "about" 20 years. It varies a little depending on the interest rate. You pay about 1/12 more per year, but you pay for about a third less years. Below is a small pgm that illustrates the principle. It is not well commented, to save space, so if it's not clear just ask. The _ at the end of some lines means that it is continued on the next line. MAKE SURE YOU APPEND THEM! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Calc: CLS INPUT "Annual Interest Rate "; I# INPUT "Loan Amount "; PV# PPY% = 12 FV# = 0 N# = 360 '---- Calc Adjusted rate MonthI# = I# / 1200 BiWeekI# = I# / 2600 WeekI# = I# / 5200 '---- Calc payment amount MonthPmt# = -PV# / ((1 - (1 + MonthI#) ^ -N#) / MonthI#) BiWeekPmt# = MonthPmt# / 2 WeekPmt# = MonthPmt# / 4 '---- Calc no. of patments necessary to amortize MonthN# = -(LOG(1 - ((MonthI# * PV#) / -MonthPmt#)) / LOG(1 + MonthI#)) +- (LOG(1 - ((MonthI# * -FV#) / -MonthPmt#)) / LOG(1 + MonthI#)) BiWeekN# = -(LOG(1 - ((BiWeekI# * PV#) / -BiWeekPmt#)) / LOG(1 + BiWeekI#)_ ) + (LOG(1 - ((BiWeekI# * -FV#) / -BiWeekPmt#)) / LOG(1 + BiWeekI#)) WeekN# = -(LOG(1 - ((WeekI# * PV#) / -WeekPmt#)) / LOG(1 + WeekI#)) + (LOG_ (1 - ((WeekI# * -FV#) / -WeekPmt#)) / LOG(1 + WeekI#)) '---- Convert the no. of payments to years MonthYrs# = MonthN# / 12 BiWeekYrs# = BiWeekN# / 26 WeekYrs# = WeekN# / 52 '---- Calc the total amount paid TotalMonthPaid# = MonthN# * MonthPmt# TotalBiWeekPaid# = BiWeekN# * BiWeekPmt# TotalWeekPaid# = WeekN# * WeekPmt# '---- Calc the total interest paid MonthInterestPaid# = TotalMonthPaid# + PV# BiWeekInterestPaid# = TotalBiWeekPaid# + PV# WeekInterestPaid# = TotalWeekPaid# + PV# '---- Print to screen PRINT " Monthly BiWeekly Weekly" PRINT " ------------- ------------ ------------" PRINT USING "Payment #####,.## #####,.## #####,_ .##"; MonthPmt#; BiWeekPmt#; WeekPmt# PRINT USING "No. payments ####, ####, ####,"_ ; MonthN#; BiWeekN#; WeekN# PRINT USING "Number of years ####,.## ####,.## ####,._ ##"; MonthYrs#; BiWeekYrs#; WeekYrs# PRINT USING "Apx Total Payments ########,.## ########,.## ########,._ ##"; ABS(TotalMonthPaid#); ABS(TotalBiWeekPaid#); ABS(TotalWeekPaid#) PRINT USING "Apx Total Interest ########,.## ########,.## ########,._ ##"; MonthInterestPaid#; BiWeekInterestPaid#; WeekInterestPaid# PRINT:PRINT "Press ESC to QUIT or any other key to calculate another term" DO ky$ = INKEY$ LOOP WHILE ky$ = "" SELECT CASE ky$ CASE CHR$(27):END CASE ELSE:GOTO Calc END SELECT ' That's ALL --- FMail 0.90 * Origin: Silver Lake Systems * Bothell,WA (1:343/58)
Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET