I have a machine learning model trained with a list of mortgage features that include macro variables where the field to predict (the label) is "Mortgage Defaulted" = 1 or 0 (Yes or No).

Now, I need to determine if a mortgage will default in the future. For that, I use the same macro features where the model returns if a payment will be made or not.

But if a single payment is not made, that doesn't mean that the mortgage will default, as the borrower may delay the payment. Moreover, if macro conditions improve, I may have a sequence of payments not made followed by a sequence of payments made.

What is the best way to determine that the mortgage will default? My thinking is to have a percentage of payments NOT made, let's say 10%, and if the number of payments is greater than the percentage, then declare the mortgage as defaulted. Is this assumption valid? Any additional ideas will be welcome.


You should consider the stages of the default process instead of a binary "default", where there are various points the borrower is able to cure the loan.

In a traditional credit model, the general process is to predict the state of the loan and then predict transitions between stages over the life of the loan. This is done by simulating macro variables (rates, HPI, employment) translated to individual loan predictors (current LTV, current FICO, HPA). Here is a simplified version of a whole loan model:

  1. Current - from here can be prepaid (voluntary) or can become delinquent
  2. Mildly Delinquent (first few months) - from here payments can be restarted and over time become current, the loan can be prepaid in full , or the borrower can move to #3 and become very delinquent.
  3. Very Delinquent (5+ months or so) - from here, loan can be paid (back into mild dq bucket) or can continue to not pay and become an involuntary prepay (foreclosure).
  4. Final stage - Either foreclosure after continued dq (need to estimate a recovery lag and amount from auction/REO sale), voluntary prepayment (refinance or relocation), or loan maturity.

Agencies will buy back loans at 120 (conventional) or 180 (gnma) days but I assume from your question you are looking at whole loans where predicting all of the stages of loan and transitions between them are very important.

| improve this answer | |
  • $\begingroup$ I want the machine learning process to determine the status of the loan (paid, prepaid, delinquent, etc) based on macro variables. Then I can forecast the same behavior using self-created scenarios. I think the best approach is not to use the payments but the loan states. $\endgroup$ – ps0604 Jun 14 '19 at 20:39
  • $\begingroup$ Don’t you need to ultimately turn the ML model results into a monthly series of CPR/SMM, CDR/MDR, severity, delinquency for security valuation in an OAS or waterfall model?Or is this for another use? $\endgroup$ – Bond wiz Jun 15 '19 at 11:49
  • $\begingroup$ This is for a commercial bank and the transactions to model are mortgages and personal loans. The objective is to know how much capital is at risk. $\endgroup$ – ps0604 Jun 15 '19 at 19:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.