Amortization_CFpub ( principal ; interest ; periods ; payment ; term ; currency )
Produces the principal remaining at the end of a fixed rate amortization period.
Average rating: 4.6 (28 votes) Log in to vote
James Hea - Show more from this author |
Function definition: (Copy & paste into FileMaker's Edit Custom Function window)
/*
Amortization_CFpub
Use this function to calculate the Principal at the end of a fixed payment period in a mortgage.
This is a tail-recursion function that accepts the following parameters:
principal - This value is the opening balance of the mortgage.
interest - This is the annual interest rate entered in full numbers i.e. 6.95 for 6.95%.
periods - The function is expecting this to be in months i.e. 12 for one year 360 for 30 years.
payment - Make sure to supply the payment using the same principal, interest and periods.
term - This value is supplied externally and should not exceed the total number of periods.
Notes: The interest is divided by 12 to derive the monthly interest rate and then by 100 to derive the actual percentage.
Author: James Hea, 2010
Email: james.m.hea@hbsc.bm
*/
Let(
[
p = principal;
i = interest/12/100;
d = periods;
c = Case(
currency = "BMD"; 365/365;
currency = "USD" ; 365/360;
365/365
);
start = 1;
m = payment;
r = p - ((p - m) + p * i * c)
];
Round(
Case(
term > d ; "" ;
term > 1 ; Amortization_CFpub( p - r; i ; d ; m ; term - 1; currency) ;
p-r
) // end Case
; 2 ) // end Round
) // end let
Comments
Note: these functions are not guaranteed or supported by BrianDunning.com. Please contact the individual developer with any questions or problems.