Interest Accrual Calculation
Determine Dates to Accrue From and Accrue To
StartDate
- Int Paid To date from the Loan Detail Form
EndDate:
- Date the user enters as the Accrual Apply date
- Last day of the month by convention
For USGA
Calculate Number of Days to Accrue For
NumDaysToAccrue = EndDate - StartDate + 1
IF Feb 29 falls between StartDate and EndDate THEN subtract 1 from NumDaysToAccrue (Actual/365 calculation treats every year as though it had 365 days)
Calculate the Interest
OriginalValue: Face value of the bond
Interest: Coupon rate as displayed on Loan Form (ie, 4.25% is 4.25, not 0.0425 or 1.0425)
Accrued Interest = Round(OriginalValue * Interest * NumDaysToAccrue / 36500, 2)
For Mortgages and Mortgage-Backed Securities (MBS)
The accrued interest is calculated a month at a time to allow for proper handling of uncollectible interest.
Go From StartDate to EndDate One Month at a Time
Starting with the StartDate calculated previously, repeat the following steps for each month until EndDate is reached.
Determine Current Date to Use
CurrDate: Current date
- Use last day of current month as the current date
- Use Feb 28 instead of Feb 29 (ie, ignore leap years)
Get Effective Interest Rate and Next Payment Amount
EffIntRate: Effective interest rate
- Remains the same for fixed rate loans
- May change from one month to the next for adjustable rate loans
NextPmtAmtDue: Next payment amount due
- For adjustable rate loans, users have the ability to enter future payment amounts; if there are entries for the loan being processed, the system will use them
- This amount is used to predict drawdown of the principal balance
Calculate Interest Accrual & Service Fees for This Month
RemBal: Remaining principal balance
- Add back in any principal payments received between now and CurrDate to get the remaining principal balance for the instrument as of CurrDate
IntAccrued: Interest accrued this month
IntAccrued = RemBal * EffIntRate / 1200
Draw down balance by assuming timely payments
PrinPmtExpected = NextPmtAmtDue – Round(IntAccrued, 2)
RemBal = RemBal – PrinPmtExpected
- If PrinPmtExpected or RemBal are negative, set them equal to zero
Allow for Partial Interest Accrual during the Purchase Month
IF we are in the month this instrument was purchased and the overall start date (as calculated above) is after the first of the month then:
PctOfMonth: percentage of month to calculate interest accrual
PctOfMonth = (30 – StartDay – 1) / 30
IntAccrued = IntAccrued * PctOfMonth
Determine Service Fees
IntAccrued = Round(IntAccrued, 2)
Service: Servicing fee rate as displayed on Loan Form (ie, 0.375% is 0.375, not 0.00375 or 1.00375)
ServiceFees: Dollar amount of service fees owed for this month
ServiceFees = Round(IntAccrued * Service / EffIntRate, 2)
Accrue Interest and Service Fees
MonthsTilDlq: number of months a loan must be past due before considered delinquent
MonthsTilDlq = 3
NextPmtDate: date the next payment is due
- Equal to the Next Due date from the most recent Receipt
AccInt: accrued interest
- Can have up to four months of interest accrued here
- 1 month of non-delinquent interest
- 3 months of delinquent interest
SvcFee: service fees
UncolInt: uncollectible interest
- Interest accrued once the loan enters non-accrual status (ie, more than 3 months past due)
SvcFee90: service fees unlikely to be owed
- Service fees accrued once the loan enters non-accrual status
IF the number of months between the current month and the NextPmtDate is greater than or equal to MonthsTilDlq THEN:
- Loan is in non-accrual status this month
UncolInt = UncolInt + IntAccrued
SvcFee90 = SvcFee90 + ServiceFees
OTHERWISE:
- Loan is accruing interest this month
AccInt = AccInt + IntAccrued
SvcFee = SvcFee + ServiceFees
Repeat for the next Month
If we have not reached the EndDate return to Determine Current Date to Use