Logo

SQL Server CONSTPRINAMORT Function

Updated 2023-10-10 21:43:31.117000

Description

Use the table-valued function CONSTPRINAMORT to generate an amortization schedule for a loan with a fixed principal repayment.

Syntax

SELECT * FROM [westclintech].[wct].[CONSTPRINAMORT](
  <@PV, float,>
 ,<@Rate, float,>
 ,<@LoanDate, datetime,>
 ,<@NumPmtsPerYear, int,>
 ,<@FirstPaymentDate, datetime,>
 ,<@DaysInYr, int,>
 ,<@NumberOfPayments, int,>
 ,<@LastPaymentNumber, int,>
 ,<@FirstPrinPayNo, int,>
 ,<@FV, float,>
 ,<@PPMT, float,>
 ,<@eom, bit,>)

Arguments

@PV

the principal amount of the loan. @PV is an expression of type float or of a type that can be implicitly converted to float.

@Rate

the annual interest rate for the loan. @Rate is an expression of type float or of a type that can be implicitly converted to float.

@LoanDate

the date that the loan starts accruing interest. @LoanDate is an expression of type datetime or of a type that can be implicitly converted to datetime.

@NumPmtsPerYear

the number of payments in a year. @NumPmtsPerYear is an expression of type int or of a type that can be implicitly converted to int.

@FirstPaymentDate

the date that the first payment is due. @FirstPaymentDate is an expression of type datetime or of a type that can be implicitly converted to datetime.

@DaysInYr

the denominator number of days to be used in the calculation of the interest. @DaysInYr is an expression of type int or of a type that can be implicitly converted to int.

@NumberOfPayments

the total number of payments to be used in the calculation principal payment amount, if a principal payment amount (@PPMT) is not entered. This may not be the actual number of payments on the loan, which can be specified by using @LastPaymentNumber. @NumberOfPayments is an expression of type int or of a type that can be implicitly converted to int.

@LastPaymentNumber

the number of the last loan payment if different than the @NumberOfPayments. @LastPaymentNumber is an expression of type int or of a type that can be implicitly converted to int.

@FirstPrinPayNo

the payment number of the first principal payment. @FirstPrinPayNo is an expression of type int or of a type that can be implicitly converted to int.

@FV

the future value at the end of the loan. @FV is an expression of type float or of a type that can be implicitly converted to float.

@PPMT

the principal payment amount. @PPMT is an expression of type float or of a type that can be implicitly converted to float.

@eom

a bit value specifying that if the @FirstPaymentDate is the last day of the month and the @NumPmtsPerYear is 1,2,4 or 12 that all subsequent payments occur on the last of the month.

Return Type

table

colNamecolDatatypecolDesc
num_pmtintThe monotonically calculated payment number with the payment number on the first payment date = 1.
date_pmtdatetimeThe date of the payment calculated chronologically from @FirstPaymentDate.
amt_prin_initfloatThe principal amount at the beginning of the period. When num_pmt is equal to 0, the principal amount is 0, otherwise the principal amount is the ending principal amount where num_pmt = num_pmt - 1.
amt_pmtfloatamt_int_pay + amt_prin_pay.
amt_int_payfloatThe interest amount for the period. The interest amount is calculated using @Rate, @DaysInYr, and amt_prin_init. See Remarks for more information on the calculation of amt_int_pay
amt_prin_payfloatThe principal payment amount. See Remarks for more information.
amt_prin_endfloatThe ending principal amount. Calculated as the beginning principal amount (amt_prin_init) less the principal payment amount for the period (amt_prin_pay).

Remarks

If @PV is NULL then @PV = 0.

If @Rate is NULL then @Rate = 0.

If @LoanDate is NULL then @LoanDate = GETDATE().

If @NumPmtsPerYear is NULL then @NumPmtsPerYear = 12.

If @DaysInYr is NULL then @DaysInYr = 365.

If @NumberOfPayments is NULL then @NumberOfPayments = 1.

If @FirstPrinPayNo is NULL then @FirstPrinPayNo = 1.

If @LastPaymentNumber is NULL then @LastPaymentNumber = @NumberOfPayments.

If @eom is NULL then @eom = 'TRUE'.

If @FirstPaymentDate is NULL then @FirstPaymentDate is calculated using @LoanDate and @NumPmtsPerYear.

@NumPmtsPerYear must be 1, 2, 3, 4, 6, 12, 13, 24, 26, 52 or 365.

@NumberOfPayments must be greater than 0.

@DaysInYr must be 360 or 365.

If @NumberOfPayments is less than 1 then an error will be generated.

If @LastPaymentNumber is less than 1 then an error will be generated.

If @FirstPrinPayNo is less than 1 then an error will be generated.

If @PPMT is NULL than @PPMT is calculated as (@PV – ISNULL(@FV, 0) / (@NumberOfPayments - @FirstPrinPayNo + 1).

If @NumPmtsPerYear = 365, 52, 26, or 13 the amt_int_pay is calculated assuming a 365 day year. If the first interest period is an odd period, then the amt_int_pay = @PV * @Rate * (@FirstPaymentDate - @LoanDate) / 365. For all other periods, the amt_int_pay = amt_prin_init * 364/@NumPmtsPerYear/365 * @Rate.

For all other values of @NumPmtsPerYear, amt_int_pay is calculated using @DaysInYr.

    If @DaysInYr = 360 and num_pmt > 1 then amt_int_pay = amt_prin_init * @Rate / @NumPmtsPerYear.

    If @DaysInYr = 360 and num_pmt = 1 and @FirstPaymentDate is a regular payment date then amt_int_pay is calculated as above, otherwise the calculation is amt_int_pay = @Rate * wct.YEARFRAC(start_date, d.date_pmt,0).

    If @DaysInYr = 365 and num_pmt > 1 then amt_int_pay = amt_prin_init * @Rate * wct.YEARFRAC(start_date, date_pmt,3) where start_date is date_pmt from the previous row.

Examples

A 1,000,000 loan dated 2014-05-14 with 50 monthly payments commencing on 2014-06-15. The interest rate is 6.0%.

SELECT *
FROM wct.CONSTPRINAMORT(   1000000,      --@PV
                           .06,          --@Rate
                           '2014-05-15', --@LoanDate
                           12,           --@NumPmtsPerYear
                           '2014-06-15', --@FirstPaymentDate
                           360,          --@DaysInYr
                           50,           --@NumberOfPayments
                           NULL,         --@LastPaymentNumber
                           NULL,         --@FirstPrinPayNo
                           NULL,         --@FV
                           NULL,         --@PPMT
                           NULL          --@eom
                       );

This produces the following result.

num_pmtdate_pmtamt_prin_initamt_pmtamt_int_payamt_prin_payamt_prin_end
02014-05-15 00:00:00.00000001000000
12014-06-15 00:00:00.000100000025000500020000980000
22014-07-15 00:00:00.00098000024900490020000960000
32014-08-15 00:00:00.00096000024800480020000940000
42014-09-15 00:00:00.00094000024700470020000920000
52014-10-15 00:00:00.00092000024600460020000900000
62014-11-15 00:00:00.00090000024500450020000880000
72014-12-15 00:00:00.00088000024400440020000860000
82015-01-15 00:00:00.00086000024300430020000840000
92015-02-15 00:00:00.00084000024200420020000820000
102015-03-15 00:00:00.00082000024100410020000800000
112015-04-15 00:00:00.00080000024000400020000780000
122015-05-15 00:00:00.00078000023900390020000760000
132015-06-15 00:00:00.00076000023800380020000740000
142015-07-15 00:00:00.00074000023700370020000720000
152015-08-15 00:00:00.00072000023600360020000700000
162015-09-15 00:00:00.00070000023500350020000680000
172015-10-15 00:00:00.00068000023400340020000660000
182015-11-15 00:00:00.00066000023300330020000640000
192015-12-15 00:00:00.00064000023200320020000620000
202016-01-15 00:00:00.00062000023100310020000600000
212016-02-15 00:00:00.00060000023000300020000580000
222016-03-15 00:00:00.00058000022900290020000560000
232016-04-15 00:00:00.00056000022800280020000540000
242016-05-15 00:00:00.00054000022700270020000520000
252016-06-15 00:00:00.00052000022600260020000500000
262016-07-15 00:00:00.00050000022500250020000480000
272016-08-15 00:00:00.00048000022400240020000460000
282016-09-15 00:00:00.00046000022300230020000440000
292016-10-15 00:00:00.00044000022200220020000420000
302016-11-15 00:00:00.00042000022100210020000400000
312016-12-15 00:00:00.00040000022000200020000380000
322017-01-15 00:00:00.00038000021900190020000360000
332017-02-15 00:00:00.00036000021800180020000340000
342017-03-15 00:00:00.00034000021700170020000320000
352017-04-15 00:00:00.00032000021600160020000300000
362017-05-15 00:00:00.00030000021500150020000280000
372017-06-15 00:00:00.00028000021400140020000260000
382017-07-15 00:00:00.00026000021300130020000240000
392017-08-15 00:00:00.00024000021200120020000220000
402017-09-15 00:00:00.00022000021100110020000200000
412017-10-15 00:00:00.00020000021000100020000180000
422017-11-15 00:00:00.0001800002090090020000160000
432017-12-15 00:00:00.0001600002080080020000140000
442018-01-15 00:00:00.0001400002070070020000120000
452018-02-15 00:00:00.0001200002060060020000100000
462018-03-15 00:00:00.000100000205005002000080000
472018-04-15 00:00:00.00080000204004002000060000
482018-05-15 00:00:00.00060000203003002000040000
492018-06-15 00:00:00.00040000202002002000020000
502018-07-15 00:00:00.0002000020100100200000

A 1,000,000 loan dated 2014-05-14 with 50 monthly payments commencing on 2014-06-30, with payments due at the end-of the month. The interest rate is 6.0%.

SELECT *
FROM wct.CONSTPRINAMORT(   1000000,      --@PV
                           .06,          --@Rate
                           '2014-05-15', --@LoanDate
                           12,           --@NumPmtsPerYear
                           '2014-06-30', --@FirstPaymentDate
                           360,          --@DaysInYr
                           50,           --@NumberOfPayments
                           NULL,         --@LastPaymentNumber
                           NULL,         --@FirstPrinPayNo
                           NULL,         --@FV
                           NULL,         --@PPMT
                           'True'        --@eom
                       );

This produces the following result.

num_pmtdate_pmtamt_prin_initamt_pmtamt_int_payamt_prin_payamt_prin_end
02014-05-15 00:00:00.00000001000000
12014-06-30 00:00:00.000100000027500750020000980000
22014-07-31 00:00:00.00098000024900490020000960000
32014-08-31 00:00:00.00096000024800480020000940000
42014-09-30 00:00:00.00094000024700470020000920000
52014-10-31 00:00:00.00092000024600460020000900000
62014-11-30 00:00:00.00090000024500450020000880000
72014-12-31 00:00:00.00088000024400440020000860000
82015-01-31 00:00:00.00086000024300430020000840000
92015-02-28 00:00:00.00084000024200420020000820000
102015-03-31 00:00:00.00082000024100410020000800000
112015-04-30 00:00:00.00080000024000400020000780000
122015-05-31 00:00:00.00078000023900390020000760000
132015-06-30 00:00:00.00076000023800380020000740000
142015-07-31 00:00:00.00074000023700370020000720000
152015-08-31 00:00:00.00072000023600360020000700000
162015-09-30 00:00:00.00070000023500350020000680000
172015-10-31 00:00:00.00068000023400340020000660000
182015-11-30 00:00:00.00066000023300330020000640000
192015-12-31 00:00:00.00064000023200320020000620000
202016-01-31 00:00:00.00062000023100310020000600000
212016-02-29 00:00:00.00060000023000300020000580000
222016-03-31 00:00:00.00058000022900290020000560000
232016-04-30 00:00:00.00056000022800280020000540000
242016-05-31 00:00:00.00054000022700270020000520000
252016-06-30 00:00:00.00052000022600260020000500000
262016-07-31 00:00:00.00050000022500250020000480000
272016-08-31 00:00:00.00048000022400240020000460000
282016-09-30 00:00:00.00046000022300230020000440000
292016-10-31 00:00:00.00044000022200220020000420000
302016-11-30 00:00:00.00042000022100210020000400000
312016-12-31 00:00:00.00040000022000200020000380000
322017-01-31 00:00:00.00038000021900190020000360000
332017-02-28 00:00:00.00036000021800180020000340000
342017-03-31 00:00:00.00034000021700170020000320000
352017-04-30 00:00:00.00032000021600160020000300000
362017-05-31 00:00:00.00030000021500150020000280000
372017-06-30 00:00:00.00028000021400140020000260000
382017-07-31 00:00:00.00026000021300130020000240000
392017-08-31 00:00:00.00024000021200120020000220000
402017-09-30 00:00:00.00022000021100110020000200000
412017-10-31 00:00:00.00020000021000100020000180000
422017-11-30 00:00:00.0001800002090090020000160000
432017-12-31 00:00:00.0001600002080080020000140000
442018-01-31 00:00:00.0001400002070070020000120000
452018-02-28 00:00:00.0001200002060060020000100000
462018-03-31 00:00:00.000100000205005002000080000
472018-04-30 00:00:00.00080000204004002000060000
482018-05-31 00:00:00.00060000203003002000040000
492018-06-30 00:00:00.00040000202002002000020000
502018-07-31 00:00:00.0002000020100100200000

In this example there are 26 payments per year and the principal is amortized as though the loan is maturing in 5 years, but it will be paid off, in full, in 2 years.

SELECT *
FROM wct.CONSTPRINAMORT(   1000000,      --@PV
                           .06,          --@Rate
                           '2014-05-15', --@LoanDate
                           26,           --@NumPmtsPerYear
                           '2014-06-30', --@FirstPaymentDate
                           365,          --@DaysInYr
                           130,          --@NumberOfPayments
                           52,           --@LastPaymentNumber
                           NULL,         --@FirstPrinPayNo
                           NULL,         --@FV
                           NULL,         --@PPMT
                           NULL          --@eom
                       );

This produces the following result.

num_pmtdate_pmtamt_prin_initamt_pmtamt_int_payamt_prin_payamt_prin_end
02014-05-15 00:00:00.00000001000000
12014-06-30 00:00:00.000100000015253.95152792417561.643835616447692.30769230769992307.692307692
22014-07-14 00:00:00.000992307.6923076929975.974710221292283.667017913597692.30769230769984615.384615385
32014-07-28 00:00:00.000984615.3846153859958.271865121182265.964172813497692.30769230769976923.076923077
42014-08-11 00:00:00.000976923.0769230779940.569020021072248.261327713387692.30769230769969230.769230769
52014-08-25 00:00:00.000969230.7692307699922.866174920972230.558482613287692.30769230769961538.461538461
62014-09-08 00:00:00.000961538.4615384619905.163329820862212.855637513177692.30769230769953846.153846154
72014-09-22 00:00:00.000953846.1538461549887.460484720762195.152792413077692.30769230769946153.846153846
82014-10-06 00:00:00.000946153.8461538469869.757639620652177.449947312967692.30769230769938461.538461538
92014-10-20 00:00:00.000938461.5384615389852.054794520552159.747102212857692.30769230769930769.23076923
102014-11-03 00:00:00.000930769.230769239834.351949420442142.044257112757692.30769230769923076.923076923
112014-11-17 00:00:00.000923076.9230769239816.649104320342124.341412012647692.30769230769915384.615384615
122014-12-01 00:00:00.000915384.6153846159798.946259220232106.638566912547692.30769230769907692.307692307
132014-12-15 00:00:00.000907692.3076923079781.243414120122088.935721812437692.30769230769899999.999999999
142014-12-29 00:00:00.000899999.9999999999763.540569020022071.232876712337692.30769230769892307.692307692
152015-01-12 00:00:00.000892307.6923076929745.837723919912053.530031612227692.30769230769884615.384615384
162015-01-26 00:00:00.000884615.3846153849728.134878819812035.827186512127692.30769230769876923.076923076
172015-02-09 00:00:00.000876923.0769230769710.43203371972018.124341412017692.30769230769869230.769230768
182015-02-23 00:00:00.000869230.7692307689692.72918861962000.421496311917692.30769230769861538.461538461
192015-03-09 00:00:00.000861538.4615384619675.026343519491982.71865121187692.30769230769853846.153846153
202015-03-23 00:00:00.000853846.1538461539657.323498419391965.015806111697692.30769230769846153.846153845
212015-04-06 00:00:00.000846153.8461538459639.620653319281947.312961011597692.30769230769838461.538461537
222015-04-20 00:00:00.000838461.5384615379621.917808219181929.610115911487692.30769230769830769.23076923
232015-05-04 00:00:00.000830769.230769239604.214963119071911.907270811387692.30769230769823076.923076922
242015-05-18 00:00:00.000823076.9230769229586.512118018961894.204425711277692.30769230769815384.615384614
252015-06-01 00:00:00.000815384.6153846149568.809272918861876.501580611177692.30769230769807692.307692306
262015-06-15 00:00:00.000807692.3076923069551.106427818751858.798735511067692.30769230769799999.999999999
272015-06-29 00:00:00.000799999.9999999999533.403582718651841.095890410967692.30769230769792307.692307691
282015-07-13 00:00:00.000792307.6923076919515.700737618541823.393045310857692.30769230769784615.384615383
292015-07-27 00:00:00.000784615.3846153839497.997892518441805.690200210747692.30769230769776923.076923075
302015-08-10 00:00:00.000776923.0769230759480.295047418331787.987355110647692.30769230769769230.769230768
312015-08-24 00:00:00.000769230.7692307689462.592202318231770.284510010537692.30769230769761538.46153846
322015-09-07 00:00:00.000761538.461538469444.889357218121752.581664910437692.30769230769753846.153846152
332015-09-21 00:00:00.000753846.1538461529427.186512118011734.878819810327692.30769230769746153.846153844
342015-10-05 00:00:00.000746153.8461538449409.483667017911717.175974710227692.30769230769738461.538461537
352015-10-19 00:00:00.000738461.5384615379391.78082191781699.473129610117692.30769230769730769.230769229
362015-11-02 00:00:00.000730769.2307692299374.07797681771681.770284510017692.30769230769723076.923076921
372015-11-16 00:00:00.000723076.9230769219356.375131717591664.06743940997692.30769230769715384.615384613
382015-11-30 00:00:00.000715384.6153846139338.672286617491646.36459430987692.30769230769707692.307692306
392015-12-14 00:00:00.000707692.3076923069320.969441517381628.661749209697692.30769230769699999.999999998
402015-12-28 00:00:00.000699999.9999999989303.266596417281610.958904109587692.30769230769692307.69230769
412016-01-11 00:00:00.000692307.692307699285.563751317171593.256059009487692.30769230769684615.384615382
422016-01-25 00:00:00.000684615.3846153829267.860906217071575.553213909377692.30769230769676923.076923075
432016-02-08 00:00:00.000676923.0769230759250.158061116961557.850368809277692.30769230769669230.769230767
442016-02-22 00:00:00.000669230.7692307679232.455216016861540.147523709167692.30769230769661538.461538459
452016-03-07 00:00:00.000661538.4615384599214.752370916751522.444678609067692.30769230769653846.153846151
462016-03-21 00:00:00.000653846.1538461519197.049525816641504.741833508957692.30769230769646153.846153844
472016-04-04 00:00:00.000646153.8461538449179.346680716541487.038988408857692.30769230769638461.538461536
482016-04-18 00:00:00.000638461.5384615369161.643835616431469.336143308747692.30769230769630769.230769228
492016-05-02 00:00:00.000630769.2307692289143.940990516331451.633298208637692.30769230769623076.92307692
502016-05-16 00:00:00.000623076.923076929126.238145416221433.930453108537692.30769230769615384.615384613
512016-05-30 00:00:00.000615384.6153846139108.535300316121416.227608008427692.30769230769607692.307692305
522016-06-13 00:00:00.000607692.307692305609090.8324552131398.52476290832607692.3076923050

In this example, no interest is due until the 14th installment and then the principal will be paid down by 25,000 with each payment with balance paid off at maturity.

SELECT *
FROM wct.CONSTPRINAMORT(   1000000,      --@PV
                           .06,          --@Rate
                           '2014-05-15', --@LoanDate
                           26,           --@NumPmtsPerYear
                           '2014-06-30', --@FirstPaymentDate
                           365,          --@DaysInYr
                           52,           --@NumberOfPayments
                           NULL,         --@LastPaymentNumber
                           14,           --@FirstPrinPayNo
                           NULL,         --@FV
                           25000,        --@PPMT
                           NULL          --@eom
                       );

This produces the following result.

num_pmtdate_pmtamt_prin_initamt_pmtamt_int_payamt_prin_payamt_prin_end
02014-05-15 00:00:00.00000001000000
12014-06-30 00:00:00.00010000007561.643835616447561.6438356164401000000
22014-07-14 00:00:00.00010000002301.36986301372301.369863013701000000
32014-07-28 00:00:00.00010000002301.36986301372301.369863013701000000
42014-08-11 00:00:00.00010000002301.36986301372301.369863013701000000
52014-08-25 00:00:00.00010000002301.36986301372301.369863013701000000
62014-09-08 00:00:00.00010000002301.36986301372301.369863013701000000
72014-09-22 00:00:00.00010000002301.36986301372301.369863013701000000
82014-10-06 00:00:00.00010000002301.36986301372301.369863013701000000
92014-10-20 00:00:00.00010000002301.36986301372301.369863013701000000
102014-11-03 00:00:00.00010000002301.36986301372301.369863013701000000
112014-11-17 00:00:00.00010000002301.36986301372301.369863013701000000
122014-12-01 00:00:00.00010000002301.36986301372301.369863013701000000
132014-12-15 00:00:00.00010000002301.36986301372301.369863013701000000
142014-12-29 00:00:00.000100000027301.36986301372301.369863013725000975000
152015-01-12 00:00:00.00097500027243.83561643842243.8356164383625000950000
162015-01-26 00:00:00.00095000027186.3013698632186.3013698630125000925000
172015-02-09 00:00:00.00092500027128.76712328772128.7671232876725000900000
182015-02-23 00:00:00.00090000027071.23287671232071.2328767123325000875000
192015-03-09 00:00:00.00087500027013.6986301372013.6986301369925000850000
202015-03-23 00:00:00.00085000026956.16438356161956.1643835616425000825000
212015-04-06 00:00:00.00082500026898.63013698631898.630136986325000800000
222015-04-20 00:00:00.00080000026841.0958904111841.0958904109625000775000
232015-05-04 00:00:00.00077500026783.56164383561783.5616438356225000750000
242015-05-18 00:00:00.00075000026726.02739726031726.0273972602725000725000
252015-06-01 00:00:00.00072500026668.49315068491668.4931506849325000700000
262015-06-15 00:00:00.00070000026610.95890410961610.9589041095925000675000
272015-06-29 00:00:00.00067500026553.42465753421553.4246575342525000650000
282015-07-13 00:00:00.00065000026495.89041095891495.890410958925000625000
292015-07-27 00:00:00.00062500026438.35616438361438.3561643835625000600000
302015-08-10 00:00:00.00060000026380.82191780821380.8219178082225000575000
312015-08-24 00:00:00.00057500026323.28767123291323.2876712328825000550000
322015-09-07 00:00:00.00055000026265.75342465751265.7534246575325000525000
332015-09-21 00:00:00.00052500026208.21917808221208.2191780821925000500000
342015-10-05 00:00:00.00050000026150.68493150691150.6849315068525000475000
352015-10-19 00:00:00.00047500026093.15068493151093.1506849315125000450000
362015-11-02 00:00:00.00045000026035.61643835621035.6164383561625000425000
372015-11-16 00:00:00.00042500025978.0821917808978.08219178082225000400000
382015-11-30 00:00:00.00040000025920.5479452055920.54794520547925000375000
392015-12-14 00:00:00.00037500025863.0136986301863.01369863013725000350000
402015-12-28 00:00:00.00035000025805.4794520548805.47945205479425000325000
412016-01-11 00:00:00.00032500025747.9452054795747.94520547945225000300000
422016-01-25 00:00:00.00030000025690.4109589041690.4109589041125000275000
432016-02-08 00:00:00.00027500025632.8767123288632.87671232876725000250000
442016-02-22 00:00:00.00025000025575.3424657534575.34246575342525000225000
452016-03-07 00:00:00.00022500025517.8082191781517.80821917808225000200000
462016-03-21 00:00:00.00020000025460.2739726027460.2739726027425000175000
472016-04-04 00:00:00.00017500025402.7397260274402.73972602739725000150000
482016-04-18 00:00:00.00015000025345.2054794521345.20547945205525000125000
492016-05-02 00:00:00.00012500025287.6712328767287.67123287671225000100000
502016-05-16 00:00:00.00010000025230.1369863014230.136986301372500075000
512016-05-30 00:00:00.0007500025172.602739726172.6027397260272500050000
522016-06-13 00:00:00.0005000050115.0684931507115.068493150685500000

See Also

AMORTIZECASHFLOWS - Discounted cash flow schedule

AMORTSCHED - Amortization schedule for a loan with constant periodic payments

LPMTSCHED - Amortization schedule for a loan with constant periodic payemnts and an odd first period where interest is accrued using the US rule

UNEQUALLOANPAYMENTS - Calculate a payment schedule for a loan where the interest payment frequency and the principal payment frequency are different, or the loan starts with an interest only schedule with principal repayments commencing after the first interest payment date.