Dec 132017
"Your Partner" financial calculator. Easy to use, yet includes almost all important financial computational tasks.
File FPD227.ZIP from The Programmer’s Corner in
Category Databases and related files
“Your Partner” financial calculator. Easy to use, yet includes almost all important financial computational tasks.
File Name File Size Zip Size Zip Type
FP212.DOC 27608 9180 deflated
FPD227.000 35072 16595 deflated
FPD227.COM 41669 24097 deflated
FPDUPD.DOC 10018 3825 deflated

Download File FPD227.ZIP Here

Contents of the FP212.DOC file

Your Financial Partner Version 2.12 6/12/86

Your Financial Partner
Distribution Version 2.12
June 12, 1986
(c) 1986, Marc R. Feldesman
All Rights Reserved

Your Financial Partner grew out of frustration with the
complexity and expense of many financial management programs on
the market today. There is nothing in this program that programs
like Lotus 1-2-3, Symphony, Framework, and SuperCalc 3 can't
compute; however, Your Financial Partner combines all the common
financial functions into an easy-to-use format. My idea was to
produce a simple, menu-driven program, that would provide the
types of financial computations most people need. The program is
largely self-explanatory; this documentation supplements the

Hardware Requirements:

The program requires an IBM-PC, XT, or AT compatible
computer with MS-DOS 2.0 or above, a minimum of 128K of RAM, and
one floppy disk drive. A printer is optional; however, if you
want hard-copy of loan amortization schedules, you will need a
printer. The program makes no special demands on the printer;
any 80 column text printer will do.


To operate the program, boot your computer with DOS. Place
the diskette containing Your Financial Partner either in the A:
or B: drive, or copy the files onto your harddisk. To run the
program you merely type FPDxx where xx is the version number.
The program opens no files and does not write to any diskette.
If you find a version that causes your disk drive light to come
on at any time, you have a bogus-copy.

For convenience, you may wish to rename the file as

General Information:

Your Financial Partner performs 7 different types of
financial calculations. The main menu displays all these


Your Financial Partner Version 2.12 6/12/86

different functions. To move from choice to choice on the menu,
use the up and down arrow keys. When you are positioned at your
menu selection, hit the return key. Alternately, you may press
the number corresponding to your choice; this will immediately
transfer the control to a related sub-menu with the associated
options. If, at any point in the program, you wish to return to
the menu, the ESC key is your path back. Hitting the ESC key
twice will bring you back to the Main Menu.

Every function requires user input. In writing the program
I made every effort to protect you from yourself: you cannot
enter an implausible or illegal value. There are two levels of
error trapping. First, all input must be numeric. Therefore,
the moment you enter any non-numeric character, the computer will
beep and erase your entire entry. The only non-numeric
characters allowed are '.' and '-' (but only as the first
character in a data field, and only if negative numbers are
allowed). Second, each input field is constrained by numerical
limits. Thus, for example, you cannot enter an interest rate
smaller than 1% nor larger than 50%. Two factors govern these
latter limits: (a) limitations of numeric representation in the
8088/8086/80286 and (b) the implausibility of certain
combinations (e.g. 200 year annuity with 3000 payment periods per
year). The program will not permit you to go to the next cell
until you provide an acceptable entry in the current cell.
(Note: the program uses bank years (360 days) for most
calculations involving "daily" compounding. This was a small,
but insignificant compromise, needed to make life simpler for

At the end of every routine you will be asked if you wish to
repeat the calculation with different values. This will allow
you to reuse values you've already entered. You'll be able
change only those values you want changed without having to
completely reenter all data. To accept a value as the default,
hit the Carriage Return; to change a value hit the space bar to
erase what is there. You can then enter any new value you want.

You must quit the program through the main menu. If you
exit from the program abnormally, it is possible that the
flashing cursor will disappear from view. If this should happen,
rerun the program again and quit normally; the cursor will


Your Financial Partner Version 2.12 6/12/86

Main Menu

Aside from the "Quit" function, the main menu displays 7
functional choices. These are:

(1) Future Value of an Investment
(2) Minimum Savings for Future Value
(3) Withdrawal from an Investment
(4) Present Value of an Investment
(5) Loan Calculations
(6) Financial Utilities
(7) Net Present Value/Internal Rate of Return

(1) Future Value of an Investment

This function addresses the following question: If I invest
a certain amount of money regularly in an account paying a
specific interest rate, compounded at regular intervals, how much
money will I accumulate by time T? To answer this question, we
need to know (a) whether you want to make regular deposits or
whether you want to deposit Grandma's estate all at one time; (b)
how much money you want to deposit (regularly or as a lump
sum);(c) if the deposits are regular, what is the frequency of
deposit; (d) the nominal (quoted) interest rate as a percent
(e.g. enter 12% as 12, not 0.12); (e) the length of time (in
years) you want to leave your money in; (f) how frequently the
bank or other institution compounds interest.

From this information, the program will give you a specific
dollar amount representing the accumulated principal and interest
over the life of the investment.

(2) Minimum Savings for a Future Value.

Suppose that you have a 6 year old child who you want to
send to college at age 18. You haven't started to save yet, but
you figure that four years of college will cost about $40,000
twelve years from now. Your question is: How much per month (or
other period) will I have to put away on a regular basis (or now
as a lump sum) to accumulate $40,000 by the time my child is
ready for college. You have two choices in how you accumulate
this money. Either you can deposit a lump sum now and let it
accumulate interest, or you can make regular deposits from now
until your child is ready to go to college. You can choose one
of these two options from the sub-menu. Once chosen, the inputs


Your Financial Partner Version 2.12 6/12/86

are similar. You need to provide the following information: (a)
the Future Value (i.e., how much money do you want to have by
time T); (b) the rate of interest you expect to earn while the
money is accumulating; (c) frequency of deposits (regular payment
option) or frequency of compounding (lump sum option); (d) the
number of years needed to accumulate the money.

From these inputs, the program will tell you one of two
answers: (a) how much money per period you will need to save to
accumulate the Future Value by time T, or (b) the lump sum
deposit needed now to achieve the Future Value by time T.

(3) Withdrawal from an Investment

Consider the following problem. Suppose you are planning to
retire 20 years from now. You get a pay raise that, lo and
behold, you don't need for living expenses so you decide to
invest it. Your question is: If I invest this money on a
regular (or lump sum) basis from now until I retire, how much
will I be able to withdraw on a regular basis starting when I
retire before I run out of money, or before my investment reaches
a certain minimum balance. Alternatively, you might want to know
how much you would have to put away to be able to withdraw a
specified amount periodically at some point in the future.

There are three choices for this option. The first enables
you determine how much you would be able to withdraw if you made
regular deposits from now until some point in the future. The
second would allow you to determine regular withdrawals from a
lump sum deposit made now, and the third option permits you to
choose the amount you want to be able to withdraw and determine
the amount you would have to save (lump sum or regularly) to
accumulate the necessary funds for those withdrawals.

The inputs are again relatively straightforward. The first
two menu choices need the following information: (a) amount of
periodic or lump sum deposit; (b) interest rate you expect to
earn on the deposits; (c) how long you plan to make regular
deposits; (d) total time from now until the time you begin to
make regular withdrawals (e.g., if you plan to save for 10 years
and retire 10 years later, then the program expects you to answer
(c) with 10 and (d) with 20), and (e) for how long you plan to
make regular withdrawals.

This information will enable the program to tell you the
Future Value of your savings, and how much you'd be able to
withdraw monthly for the time period you specify.


Your Financial Partner Version 2.12 6/12/86

The third menu choice requires that you specify the amount
you want to withdraw on a periodic basis. It also requires that
you specify the length of time over which these withdrawals will
take place. The program does not compute perpetuities (i.e.
Social Security or a typical pension plan where withdrawals take
place over an indefinite period of time, perhaps this will be an
option in the future). It also needs to know the interest rate
earned on the money while it is being withdrawn. These inputs
will generate the amount of money needed at the beginning of the
withdrawal period to accomplish the periodic withdrawal you

The program then asks you a series of other questions
designed to provide information concerning the best savings
approach to accumulating the needed cash. This part of the
program requires you to specify (a) the length of time you have
to accumulate the cash, and (b) the interest rate you'll be
earning while the cash accumulates. This will then tell you how
much you'd need to save monthly to accumulate the cash, or how
much you'd have to deposit all at one time to accrue the cash.

(4) Present Value of An Investment

Suppose that you win the Oregon Lottery. You have a choice
of receiving $200,000 per year for 20 years, or a check now for
$1,000,000. Which is the better deal? This function allows you
to determine the Present Value of an Investment that pays a
specified amount in the future, either as a lump sum or as an

To answer this pressing question we need to provide the
following information: (a) Future Value of a Lump Sum payout, or
the amount you will receive each period in the future, (b) the
nominal interest that could be earned on money invested now; (c)
the frequency that interest is compounded, the frequency payments
are received; (d) the holding period (i.e. the length of time
until you receive the money described above.

These inputs will yield the present value of your
investment. This program will tell you how much your investment
is worth in today's dollars if those dollars were to earn a fixed
rate of return of some n number of years.

By the way, you'd be wise to take the $200,000 per year.
Assuming an interest rate of 10%, the present value of our
$200,000 per year for 20 years is $1,702,712.74. To better that,
you would have to have a lump sum settlement now exceeding $1.7


Your Financial Partner Version 2.12 6/12/86

(5) Loan Calculations

This is, by far, the most extensive part of the program.
Your Financial Partner offers you six different options involving
loan calculations. These options allow you (1) to compute the
monthly payment on a specific loan; (2) to compare monthly
payments for a given principal at different interest rates; (3)
to determine the amount of money you can borrow for a specific
principal and interest payment; (4) compute a complete loan
amortization schedule; (5) determine the present balance on an
existing loan; and finally (6) to determine the impact of
accelerating the amortization of a loan by increasing the
principal payments or by making a lump sum payment at some point
during the loan.

Options (1) and (2) require the following information: (a)
the amount of the loan; (b) duration of the loan; and (c) number
of loan payments per year. Option (1) requires that you also
provide the nominal interest rate. From this the program will
provide you with the required payment to fully amortize the loan
in the length of time specified.

Option (2) asks that you estimate an interest rate. You
will then be given the payments for that loan amount at a range
interest rates that surround the given rate by 2% in increments
of 0.25%. You may print this to the Screen or to your Printer.

The third option requires you to give (a) the desired
monthly payment; (b) the duration of the loan; (c) the number of
loan payments per year; and (d) a good guess at a reasonable
interest rate for the loan. This information will yield loan
amounts having your desired payment spanning an interest range
from 2% below your interest estimate to 2% above increments of
0.25%. You may also print this to the Screen or to your Printer.

Option (4) is self explanatory. It produces the full
amortization schedule for any loan. To produce this schedule,
the program needs to know (a) the amount of the loan; (b) the
interest rate; (c) the duration of the loan; (d) the number of
payments per year; and (e) the starting month and year of the

This information generate a complete period-by-period
accounting of the loan, apportioning the payment to principal and
interest. This schedule can be printed, or listed to the screen.

The fifth option allows you to determine the current balance
on a loan. You must supply the same information required for
option (4), but you also must supply the date that you made your


Your Financial Partner Version 2.12 6/12/86

last payment. Here the program will be quite vigilant to check
that your last payment actually is within the loan period. It
will reject any date not included in the loan range. Once the
program accepts the date of last payment, it can determine your
outstanding balance. Please be advised that the actual balance
of the loan and the computed balance are likely to differ. Banks
compute interest on a daily basis, while amortization schedules
assume that you make payments at exactly equal intervals. The
instant that you deviate from a specific interval the bank gets
either more or less money from you. Nevertheless, the balance
reported here should be reasonably close to the balance your bank
claims you owe.

The last option allows you to examine the impact of
accelerating the payoff of your loan. Suppose you have a 30 year
mortgage for $50,000 at 10% interest. In year 7, your
grandmother dies leaving you $10,000. If you apply the entire
$10,000 to your mortgage principal, how would that shorten the
time required to pay it off? Alternately, suppose you get a $100
per month raise. You decide to dedicate the entire $100 to
principal reduction on your mortgage. How does this affect the
life span of the loan?

Before we can examine the impact of any principal reduction
scheme, we need to determine your current balance on the loan.
Here we are doing nothing more than obtaining the same
information that we needed for Option (5). Once we have your
loan balance, we need only know the amount you want to add to
your monthly payments to reduce the principal or the amount of
single deposit applied against the principal. From here the
program will report (a) when the loan will be paid off; (b) by
how many periods the loan will be shortened; and (c) how much
interest savings you will realize.

If you apply Grandma's estate of $10,000 to your loan
balance on the 86th payment, you would, on a 30 year, $50,000
loan at 10%, reduce the number of payments by 126 and save
$45,574.93 in interest costs. If you apply your $100 per month
raise to principal reduction on the same loan at payment 86, you
would reduce the payments by 116 and save $35,351.27 in interest.

(6) Financial Utilities

There are two options here. The first allows you to
determine the effective interest rate on a loan or investment;
the second allows you to generate a monthly calendar for any
month and any year beginning with 1800 and running to 2499.

The only purpose of the first option is to enable you to


Your Financial Partner Version 2.12 6/12/86

figure out the annual percentage rate from the nominal interest
rate. Most banks will tell you that they pay, say 8%, on
passbook savings. If each of four banks pay 8% on passbook
savings, but one compounds interest daily, one monthly, one
quarterly, and one semi-annually, which bank gives you the best
return on your money? Obviously, the more frequently banks
compound money, the faster your money will grow. This option
allows you to determine what the actual interest rate is. You
need only supply two pieces of information: (a) nominal interest
rate and (b) frequency of compounding.

The second option is largely self-explanatory. You need to
supply a month (a number between 1 and 12) and a year (a four-
digit number from 1800 to 2499). The program will instantly
produce a calendar.

(7) Net Present Value/Internal Rate of Return

These computations usually are reserved for businesses
rather than individuals; however, with real estate investment
such a common income-producing strategy for individuals, these
options will allow you (a) to determine whether an investment
actually returns a sufficient cash flow, when adjusted for the
time value of money, to met your stated profit objectives or (b)
to determine, given a specific set of cash flows, the rate of
return those cash flows represent.

To compute Net Present Value, we need the following inputs:
(a) the initial investment (usually the purchase price); (b)
expected rate of return; (c) number of years you plan to hold the
investment or the number of years over which you want the NPV to
be computed; (d) the cash flows you expect to receive each year
for the duration of the investment. These cash flows are "mini-
future" values that you are going to receive. To compute NPV,
the program has to translate them back (discount them) to present
value in order for you to accurately assess your investment.
Once you've entered all the cash flows, the program will
determine the Net Present Value. A positive NPV means that the
investment is worth more than what you require on the basis of
your profit objective; hence, it is a good investment. A
negative NPV means that the investment does not meet your profit
objective. An NPV of 0 means that the investment exactly meets
your profit objective.

The Internal Rate of Return, is simply the yield, or the
discounted rate of return on an investment. To determine the IRR
we need to know (a) the amount of the initial investment; (b) the
number of years you plan to hold the investment; (c) the cash
flows you expect to receive. From this information, the program


Your Financial Partner Version 2.12 6/12/86

will determine the precise interest rate necessary to make the

You should be aware that the mathematical solution for IRR
involves finding the root of a polynomial. A polynomial that has
more than one sign change has more than one real root. Obviously,
if there is more than one interest rate that will make NPV=0, the
IRR will be meaningless. Thus, Your Financial Partner is
designed to count the sign changes and reject any series of cash
flows that violates the rules (in this case, Descartes' Rule of
Signs). For example, the program will reject the following
series of cash flows: -600, 800,900,-1000,5000. Note that the
signs go: -++-+. Here there are three sign changes and the
program will not compute the IRR. If you try this with any of
the popular spreadsheets, they report an IRR even though the IRR
is meaningless.

Penultimate Notes

I sincerely hope that Your Financial Partner is useful to
you. I spent a great deal of time trying to write a program that
I could use. I've tested all functions with a wide variety of
data from financial analysis textbook problems. I'm convinced
that the program is very bug-free. But, you and I know quite
well that the axiom of any programmer is TAAB (There's always
another bug). If you run into any problems, encounter any
results that do not look right or that you know are not right,
please drop me a note and explain the circumstances. I do not
want a "buggy" program circulating.

Ultimate Notes

If you are using this program and find it to be valuable, I
would be grateful for any contribution you might make ($20
suggested). I will automatically send contributors any major
upgrades of the program for a six-month period. I am planning
several more features, as time permits, including a full-screen
editor and a pop-up four-function calculator. I am also planning
cut and paste functions so that values computed in one module can
be used in another module.

If you downloaded this program from a Bulletin Board System
(BBS) somewhere, please let me know. If you contribute for the
program, I will rebate 10% of your contribution to the BBS System
Operator as my thanks for his help in distributing the program.
This will enable him to locate other programs for you, help pay
his phone bill, help him buy a new hard disk, or help put food on
his table.


Your Financial Partner Version 2.12 6/12/86

My legal advisors tell me that I cannot warrant this
program, expressly or by implication. So, I am not responsible
if this program ruins your life. On the other hand, if it makes
you a millionaire, I'd like to know.


I'd like to thank Phil Smith, Don Flinn, John Rau, Norm
Worthington, Carol Feldesman, and the guys at Aabacus Computers
for testing the program and putting up with my innumerable "just
one more change". I'd also like to thank George Smith for his
wonderful set of Turbo routines called "Boosters", and Philippe
Kahn for Turbo Pascal. I'd especially like to thank Phil and Don
for advice on financial formulae, and for their many suggestions
of ways to improve the program. Of course I, alone, am
responsible for the program.


Brigham, Eugene F.
1983. Fundamentals of Financial Management. Third Edition.
New York: Dryden Press.

Smith, Jon M.
1976. Financial Analysis and Business Decisions on the
Pocket Calculator. New York: John Wiley & Sons.

Money Matters and Other Things

If you want to contribute (and I hope you'll give it strong
consideration), or you wish to send either valentines or vitriol,
please address all correspondence, and make all checks out, to:

Marc R. Feldesman
12655 SW 111th Place
Tigard, Oregon 97223

IBM-PC,XT, and AT, Lotus 1-2-3, Symphony, Framework, and
SuperCalc 3 are registered trademarks of International Business
Machines, Lotus Development Corporation, Ashton-Tate, and Sorcim-


 December 13, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>