Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

The effective interest rate is the true rate of interest earned.

The Effective Interest Rate is


calculated as follows:

It starts with the CUR_NET_RATE in the instrument record, and iteratively calculates EIR to a
precision of 0.000001. Pseudo code follows:

Step-1:

Initial Value:
EIR = Current Net Rate
Delta = 0.0
Total MV = 0
Total Derivative = 0

Step-2:

Loop through each cash flow and calculate Total MV, Total Derivative. At the end of loop Delta
is calculated. These will be calculated for each iteration.

Conditions for iteration: absolute of Delta > 0.000001 and Iteration > Max Iterations. If Delta
goes below 0.000001 or Max Iteration of 500 is reached, iteration stops.

Formula:

A. Total MV is summation of MV of each cash flow.

, where MV of ith cash flow is calculated as below:

If, 'Calculate Market Value' is checked in Process, and


Discount Type = Interest only, then Cash Flow = FE 430.
Discount Type = Principal & Interest, then Cash Flow = FE 210 + FE 430

If 'Calculate Market Value' is not checked in the UI:


Discount Type = Principal & Interest, then Cash Flow = FE 210 + FE 430.

B. Total Derivative is summation of Derivative of each MV.


, where Derivative of ith MV is calculated as below:

C. After loop through the cash flow ends, delta is calculated where Total MV and Total
Derivative is used.

where Accrued Interest is calculated as below

, ICF = First
Interest Cash Flow (FE 430).

D. Effective Interest rate is then updated as EIR - Delta.


If engine loops into next iteration, this updated Effective Interest rate will be used for Total MV
and Total Derivative calculation in next iteration. If there is no further iteration, then updated
Effective Interest rate is output to EFF_INTEREST_RATE_C.

Step-3:

If absolute of delta > 0.000001 and Max iteration < 500, engine moves to next iteration, and
Total MV, Total Derivative, Delta and EIR gets calculated again as mentioned in Step-2.

Note:
Payment per year is calculated as below:
If Payment Frequency Multiplier is DAY then = 365.0 / Payment Frequency, If Payment
Frequency Multiplier is MONTH then = 12.0 / Payment Frequency.
If Payment Frequency Multiplier is YEAR then = 1.0 / Payment Frequency.
Where Payment Frequency is data given in PMT_FREQ in Instrument record

Expired Term is calculated as below:


When Payment Frequency Multiplier is DAY, then = Cash flow date - As of date.
When Payment Frequency Multiplier is MONTH then = (Cash flow date – As of date) / Days in
month. Here Days in month= 365/12.
When Payment Frequency Multiplier is YEAR then = (Cash flow date - As of date) / 365

You might also like