home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d9xx
/
d987
/
loancalc.lha
/
LoanCalc
/
LoanCalc.doc
< prev
next >
Wrap
Text File
|
1994-04-05
|
19KB
|
428 lines
LoanCalc V2.0d - by Robert Bromley
TABLE OF CONTENTS
1 Copyrights
2 Introduction
3 The Main Menu
4 Sample Data Files
5 The Interest Compound Period
6 Calculation of the Payment Date
7 Program Requirements
8 Program Limitations
9 Error Messages
10 Accuracy
11 Files Included With This Program
1 COPYRIGHTS
LoanCalc is © 1990, 1991, 1994 by Robert Bromley. All rights reserved.
LoanCalc may be considered to be what I have heard refered to as
"giftware". This means that it is freely distributable, as long as the
entire package is distributed unaltered and intact, and no charge is
made for it other than reasonable costs for copying and media.
There is no payment required for the use of LoanCalc, but, if you find
the program to be
particularly
useful, then I would request that you
send me whatever you think it is worth.
MuchMore is © 1991 by Fridtjof Seibert.
Refer to the "MuchMore.ReadMe" file for further information.
ARP is © 1987, 88, 89 by ARP Authors.
2 INTRODUCTION
Although there are many mortgage calculation programs available, all
that I have seen are designed around 'fixed' mortgages, ie. mortgages
that have a fixed payment due on a fixed date. As well as providing a
printed Amortization Table for Fixed Mortgages with Monthly, Semi-
Monthly, Bi-Weekly and Weekly payment schedules, (including a provision
for making Lump Sum Payments), LoanCalc (LC) is designed to track
'Open' mortgages that allow any size payment to be made at any time.
If you are looking for a program that will quickly give you payments or
amortization periods of loans with fixed monthly payments, without the
printed Amortization Table, I can heartily recommend MortCalc, written
by Michel Laliberte, available on Fish 385. It will be easier to use
for this purpose. The advantage of LC is the flexability to calculate
repayment schedules for almost any timetable, the Lump Sum Payment
option, the Open Mortgage option, and the ability to give you an easy
to read printed Amortization Table.
I apologize for the size of this program. Being a 'weekend' programer,
my programing style could not be described as elegant. The program is
written in BASIC, compiled with the HiSoft BASIC Professional compiler.
To anyone out there who still programs with the AmigaBASIC interpreter,
I admire your dedication. The frustration of it all was just too much
for me. Look into HiSoft BASIC Professional, and put the joy back into
programing.
This version of LC supports both mouse and keyboard for most of its
functions, the major exception of course being specific data which must
be input (ie. payments, dates, etc), and it uses the ARP requester for
the input of filenames.
As of Version 2.0, LC utilizes the freely distributable file viewer
"MuchMore" for all viewing and printing of data files. MuchMore is a
terrific, full-featured file viewer, and I thank Fridtjof and AMOK for
making this program freely distributable. Please read the
"MuchMore.ReadMe" file to fully appreciate all of the features of this
program. Pressing the <Help> key while MuchMore is running will give
you a synopsis.
Note that for the viewing or printing of datafiles, the MuchMore
program will have to be either in the Current Directory, or in your
search path. The C: directory would probably be the best place to put
it, as I would not be surprised if you decided to use it as your
regular text viewer.
At any time, if the 'Esc' key is hit, then LC will escape from the data
entry mode and return to the Main Menu.
LC generally multitasks very well. While waiting for input, the
program is 'sleeping', and therefore does not use up CPU time
needlessly.
If LC is launched from Workbench, icons will be created for all '.data'
files created, in case you would like to edit the file. These icons
have no default tool, however, since I don't know which editor you
would be using to edit the file. You can supply your own using the
Workbench 'Info' Menu item.
If launched from the CLI, no icons are created.
While entering data (especially data for Open Mortgages), there are
lots of tiresome "Are you sure?" type prompts. Although nobody likes
them when data is correct, they are useful in case of finger-trouble.
3 THE MAIN MENU
LC opens on the Main Menu, where there are 8 selections:
1. Start a New Mortgage/Loan File
2. Enter a Payment to an Existing Open-type File
3. Re-Calculate the Current Fixed-type Loan
4. View/Print a Data File
5. Information
6. About
7. Help (or <Help> key)
8. Quit (or <Esc>)
Just Click on the appropriate item, or press the appropriate number
on either number pad.
1. Start a New Mortgage/Loan File
This selection should be made if you have not already opened a file
under the proposed filename, for example "FirstMortgage", and there is
no "FirstMortgage.data" and "FirstMortgage.datavar" files in the
specified directory. A file will then be built from scratch.
While running, LC will request a directory and filename under which the
program data will be kept. The default directory is RAM:, but you may
specify any other. Two files will then be generated in that directory.
One, "Filename.data", will store all information regarding payments
made, dates, interest paid, total interest, etc. The other,
"Filename.datavar", will store all the variables required by LC, which
will vary from one session to the next. If the files are created in
RAM:, then ensure that these files are copied to a disk for a permanent
record.
The ".data" file is almost totally ASCII (the only exception being the
odd CHR$(12) used for page formating), and, if you feel comfortable
doing so, may be edited with a good text editor. This, of course,
excludes Commodore's "Ed", which will not accept binary.
The ".datavar" file should
never
be edited. If you do so, any further
.data files will almost certainly be garbage.
Open Loans
The Open-type file will be built one entry at a time, using the data
entered. This option is good for Open Mortgages, Line of Credit type
loans, or any loan that does not have a Fixed repayment schedule.
This file cannot "think ahead", because it cannot predict when your
payments will be made, or exactly how large or how small they will be.
Once a data entry (payment) has been made, you have the option of
making another <Press any key>, totaling the file <Left Alternate-
Shift-T>, or returning to the Main Menu <Escape>. <Left Alternate-
Shift-T> merely prints a footnote to the file, stating your Total
Payments so far and by how much the Principal was reduced, and then
returns you to the Main Menu. It is intended to be used after the last
payment is made, but may be used beforehand.
Fixed Loans
The Fixed-type file will take all the parameters pertinent to your
loan, and then display some summary information about your loan;
ie. the Unit Payment (Installment), the Total Interest to be paid,
the Actual (Effective) Interest Rate, and the Amortization Period.
You may then Return to the Main Menu, Re-enter data, or request the
Amortization Table. In the last case you will be prompted for the
number of months you want the Table shown. The Amortization Table will
be shown for any period from one month, to the Amortization Period
of the loan.
Lump Sum Payments in a Fixed Loan
If you are allowed to make Lump Sum payments to your Fixed loan, then
request the Amortization Table for the number of months such that the
last payment displayed is the date on which the Lump Sum payment is to
be made. Then use the <L> option to show your Lump Sum Payment, and
the Principal reduction will be made on that date. Since all payments
must
be made in chronological order, once the Amortization Table has
been displayed for a month
beyond
one in which you want to make a
Lump Sum payment, you would have to go back to Selection 3, and
re-select the number of months to display, in order to make the
Lump Sum payment.
If you wish to increase the balance for any reason (sort of a reverse
Lump Sum payment), it is done in a similar manner, except that you
merely enter the amount as a
negative
number. EG, to add $300
to the balance, display the Amortization Table to the date of the
payment, and press <L>. When prompted for the amount of the payment,
just press the Minus key, and "300". When the balance in increased for
any reason, you will be given the option of entering a short comment
of 44 characters or less, which will appear in the Table. This can be
used to indicate the reason for the balance increase. If the comment
is less than 20 characters, the whole transaction will remain on one
line. Otherwise, it will be split over two lines.
2. Enter a Payment to an Existing Open-type File
This item is used to enter more payments to an Open Mortgage/Loan
file which has already been opened with Selection 1. Although there is
a provision to make lump payments on a Fixed-type loan, that is not
done using this Menu item. Note that if you are updating a file, the
"Filename.datavar" file must be situated in the same directory as the
"Filename.data" file.
As described above, a "negative" payment may also be made to an Open
loan, which will be shown in your .data file. Negative payments will
always occupy two lines in Open loan files.
3. Re-Calculate the Current Fixed-type Loan
This item is for Fixed-type loans only. If you have already entered
the Mortgage/Loan parameters (Principal, Interest Rate, Commencement
Date, Interest Compound Period and Filename), then LC will ask for
confirmation of these numbers, and request the Payment Frequency and
the Amortization Period/Monthly Payment. Any changes to these
parameters may be made at this time. In this way, the same numbers can
be quickly "fiddled" to show various combinations of these variables.
This feature cannot be used for Open-type loans for the reason
mentioned above - Open loan payments cannot be predicted.
4. View/Print a Data File
This item will ask for the filename of the ".data" file you want to
View or Print. Select the path and "Filename.data" in the requester.
The program will not accept any filename which does not end in ".data".
The file will then be loaded into the MuchMore file viewer, where
you may then see the file almost exactly as it will look when printed,
(the printed version will be page formated). The data you see in this
file is the same data that was printed to the screen while the
calculations were being made. Therefore,
IF IT WASN'T SHOWN ON THE SCREEN
AT THAT TIME, THEN IT WON'T BE IN THE DATA FILE. So if you want to see
the whole Amortization Table in the data file, press <Return> when
prompted "Amortization Table for how many months", so that the whole
Table will be calculated and displayed.
Probably the easiest way to
view
forward and backward is by using the
Left and Right Mouse Buttons.
File
printing
is also done from within the MuchMore file viewer.
To print the entire file you are looking at, simply press
<Left Alternate-Shift-O> together, and the file will be sent to
whichever printer you have selected in Preferences. If desired, it is
also possible to print out only a portion of the data file. Please
read the "MuchMore.ReadMe" file for full information.
5. Information
This just recaps a bit of the information in this file, in case
nobody reads it.
6. About
Tells you who not to blame if something goes wrong.
7. Help (or <Help> key)
Pressing the <Help> key will run the MuchMore file viewer, and, if
LoanCalc.doc (this file) is in the Current Directory, it will be
automatically loaded. Therefore the doc file can easily be referenced
without having to Quit LoanCalc. If it is not in the Current Directory
the MuchMore File Requester will appear.
8. Quit (or <Esc>)
Exits the program, after confirmation.
4 SAMPLE DATA FILES
I have included with this program 4 sample ".data" files to give you an
idea of what your print-out will look like. The 4 files represent the
same $50,000 mortgage, with an Interest Rate of 10.25%, amortized over
5 years, and includes one lump sum payment made on the second
anniversary of the loan. One shows the Amortization Table if you had
chosen to repay the mortgage with Monthly payments, another with Semi-
Monthly payments, and the others with Bi-Weekly and Weekly payments.
Note that these are sample print-outs only. These files cannot be
re-worked using Main Menu item 3, as their ".datavar" files are not
included here.
5 THE INTEREST COMPOUND PERIOD
Although LC will accept an I.C.P. of almost any frequency, the standard
frequencies appear to be as follows, and should be used unless you know
that your situation is different:
Canadian Mortgages are compounded Semi-Annually.
American Mortgages and both Canadian and American bank loans are
compounded Monthly. Very few bank employees seem to know this - during
my enquiries I got a lot of different answers, but the hard figures
always came down to "Monthly Compounded Interest". This information is
also shown in the program.
6 CALCULATION OF THE PAYMENT DATE
The "Payment" date shown for each payment will depend on the type of
Mortgage/Loan you select, as follows:
Open Mortgages:
will naturally show the payment on whatever date you enter.
Fixed Mortgages:
The first payment to a mortgage is normally due one payment period
after the commencement of the loan. Therefore -
If you choose to make Monthly Payments, then the payments will be
shown as due on the day of the month that the loan was taken out.
So if you want payments due on the 1st of the month, show the loan as
starting on the 1st day of the previous month.
Semi-Monthly Payments are always shown as due on the 1st and 15th day
of the month.
Bi-Weekly Payments are shown as first due 14 days after the starting
date of the loan, and due every 14 days thereafter.
Weekly Payments are shown as first due 7 days after the starting date
of the loan, and due every 7 days thereafter.
7 PROGRAM REQUIREMENTS
Workbench 1.3 or greater is required because of the math libraries.
The arp.library is required because of the ARP requester.
MuchMore is required for file viewing or printing.
8 PROGRAM LIMITATIONS
Some limitations of LC are:
All Open Loan data entries MUST be in chronological order.
Also, with Open Loans, a data entry must be made every 6 months or so.
This as necessary to keep the year-ends straight, so that LC knows
which are leap-years. (The formula is slightly different in
leap-years).
9 ERROR MESSAGES
FILE ALREADY OPEN!
This error mesage will occasionally pop up while LC is trying to open
a ".data" or ".datavar" file. As all of my OPEN commands are
immediately preceded by a CLOSE command on the same line, this should
be impossible, but it does happen. At any rate, I built a RESET
command into the Error Handler, which seems to work well enough to
allow the file to be rebuilt from Menu Item 3, rather than have to
start from scratch at Menu Item 1.
FILE NOT FOUND!
If this message appears during program startup, then most probably
the "arp.library" is not in the LIBS: directory.
If it appears after seleting View/Print a Data File from the Main Menu,
then most probably LoanCalc cannot find either MuchMore, or the
.datavar file that goes with the selected .data file.
ILLEGAL FUNCTION CALL!
I got this message once when I was specifying a monthly payment for a
Fixed loan that was lower than the Interest payment. In other words,
the loan would never have been paid off at that monthly payment.
INPUT PAST END!
There are two possible explanations for this message. The most likely
is that you are trying to open a ".datavar" file that was created using
LoanCalc V1.x. Unfortunately, these files are not compatible with
LoanCalc V2.x. The ".data" files are still correct, but if you want
to re-calculate a loan (ie. with Menu item 3), the loan data will have
to be re-entered with Menu item 1, which will build a new and
compatible ".datavar" file.
The second possibility is that the applicable ".datavar" file has
somehow become corrupted, in which case also, the data will probably
have to be re-entered.
10 ACCURACY
To the best of my knowledge, this program is now as accurate as any
other similar programs available. Monthly payment figures seem to
agree with those found in commercial Amortization Tables.
11 FILES INCLUDED WITH THIS PROGRAM
LoanCalc
LoanCalc.doc
Revision_History
Monthly.data
Semi-Monthly.data
Bi-Weekly.data
Weekly.data
MuchMore
MuchMore.ReadMe - The documentation for MuchMore.
MuchMore.LiesMich - The documentation for MuchMore, in German.
arp.library V39.1 - in case there is still someone out there who is not
utilizing this marvelous library. Just put it in
your LIBS: directory, and leave it there.
plus appropriate .info files.
Any comments, problems or bug reports are welcome. Please send to:
Robert Bromley
1168 Timber Lane
Victoria, B.C.
CANADA V8Y 1E4
Hope someone finds this useful.
__
/_/ __ /_
_ /_/ /_/ /_/ _