I reviewed the CVS page listing features for future development. I noticed
that one feature is a financial calculator. I already have one in the "QTAwk"
language, which is my extension of awk and gawk. Since QTAwk is almost exactly
C, converting to standard C would be extremely easy.

I have been using it for
approximately 10 years. It is an adaptation of the routines which were (are?)
on the HP financial calculator and were implemented on the HP 41 programmable
calculator. I used the calculator on the 41 for about 5 years before switching
the functions to the PC. The financial calcualtor ties together the financial
variables:

1: number of payment periods, n
2: interest rate ( both discrete and continuous ), i
3: present value, pv
4: periodic payment, pmt
5: future value, fv
6: Compunding frequency (number of compunding periods/year),
7: Payment frequency (number of payments/year)
8: boolean for end of period/beginning of period payments.

The calculator can be used for bank accounts, any kind of loan (mortgages,
etc.) and can handle US, Canadian and Euorpean conventions for compounding
etc.

Approximately 5 years ago I added the functions for creating amortization
schedules and reporting the schedules in various forms:

1: detailed - payment, interest, principal and balance for each payment
2: annual summary with interest paid, principal paid and total paid on an
   annual basis.
3: fixed and variable principal payments in addition to scheduled, fixed
   payments. The variable payments are computed from the principal balance.


I currently have the documentation for the financial calculator in HTML with
detailed explanations of the conventions used for the financial equations and
definitions of appreciation, annuities, amortization, etc. and of the various
types of interest and a short derivation of the equations used. There are many
examples of the various financial computations which can be performed and
examples of the various amortizations schedules which can be produced.

The table of Contents for the documentation is included below:

Financial Calculator
Time Value of Money
  Simple Interest
  Compound Interest
  Periodic Payments
  Financial Transactions
Standard Financial Conventions
Cash Flow Diagrams
  Appreciation
  Annuity
  Amortization
  Annuity
Interest
  Compounding Frequency
  Payment Frequency
  NAR to EIR for Discrete Interest Periods
  NAR to EIR for Continuous Interest
  Normal CF/PF Values
  EIR to NAR for Discrete Interest Periods
  EIR to NAR for Continuous Compounding
Financial Equation
  Financial Equation Derivation
Amortization Schedules
  Effective and Initial Payment Dates
  Effective Present Value
  Iterative Amortization Schedule
  Annual Summary
  Final Payment Calculation
    Original Data Schedule
    Recomputed Final Payment
    Recomputed Periodic Payment
    Recomputed Term
  Amortization Schedule Display
Financial Calculator Usage
  Calculator Commands
  Calculator Input
  Calculator Functions
  User Defined Variables
  Rounding
Examples
  Simple Interest
  Compound Interest
  Periodic Payment
  Conventional Mortgage
  Final Payment
  Conventional Mortgage Amortization Schedule - Annual Summary
  Conventional Mortgage Amortization Schedule - Periodic Payment Schedule
  Conventional Mortgage Amortization Schedule - Variable Advanced Payments
  Conventional Mortgage Amortization Schedule - Constant Advanced Payments
  Balloon Payment
  Canadian Mortgage
  European Mortgage
  Bi-weekly Savings
  Present Value - Annuity Due
  Effective Rate - 365/360 Basis
  Mortgage with "Points"
  Equivalent Payments
  Perpetuity - Continuous Compounding
References

I use it constantly to double check the
banks on my accounts to assure that the balance(s) and closing amounts are
correct. We usually agree within pennies, US. The discrepency I attribute to
round-off errors. They round-off every payment period I usually make a single
calculation for the whole time period. A number of times I have set the
calculator to do the calculations for each period and reset the amount (round
it to the nearest penny) for each period. In every case we have agreed to
within 2 to 3 pennies (which way did they round is always a question - not
always up in my experience. Some banks do, some don't).

Due to my experience with the calculator over the years, I have a great deal
of confidence in its results.

I would be happy to work with somebody to incorporate this calculator into
gnucash. I think it would be useful.

--
Gnucash Developer's List
To unsubscribe send empty email to: [EMAIL PROTECTED]


Reply via email to