Does the model actually work?
This checks whether the model behind your figures has ever been right. Give it a period that has already finished: the chance of default each borrower was given at the start, and whether it defaulted by the end.
Failed on calibration. The allowance this model produces is understated.
This example is meant to fail. The book is 1,200 synthetic borrowers with one grade deliberately wrong: BB was priced at 2.00% and defaulted at 6.00%.
Notice what still passes. The ranking is sound, and the portfolio total — 3.75% observed against 2.75% predicted — reads as acceptable. That is the whole point: a portfolio-level test nets an understated grade against a conservative one and reports nothing wrong, so calibration is tested grade by grade. Load your own file above to replace this.
Your data
One row per borrower. Two columns are essential: the chance of default you predicted, and whether it defaulted.
This is an example book of 1,200 synthetic borrowers, not your data. It is here so the page shows what it does before you have fetched anything. Replace it when you are ready.
Read 1,200 rows and 5 columns.
Which column is which
Corrected automatically where the heading is recognisable. Change anything that is wrong.
Every value sits in the decimal range. Read the wrong way round, a model would look a hundred times more conservative than it is and pass every test on this page.
Can it tell good from bad?
Whether the borrowers it called riskier are the ones that defaulted. A model that cannot rank risk cannot be fixed by adjusting its rates.
It ranks risk well: the borrowers it called riskier are the ones that defaulted (Gini 0.568, 95% interval 0.408 to 0.729, on 45 defaults).
The statistics, for a model validator
Gini runs from 0, no better than chance, to 1, a perfect ranking; 0.20 is the usual floor. AUC is the same measure on a scale from 0.5. KS is the widest gap between how defaulted and performing borrowers were scored.
Are the levels right?
Whether the predicted chance of default matched what happened, grade by grade — because a total can hide one grade set too low behind another set too high.
The total for the book looks acceptable, but 1 grade (BB) is set too low — more defaults than a correct rate would give once in a hundred. A total that hides one grade too low behind another too high is not a model that is right.
| Grade | Borrowers | Defaults | Predicted | Observed | Predicted vs observed | Jeffreys p | |
|---|---|---|---|---|---|---|---|
| A | 300 | 1 | 0.30% | 0.33% | 0.3847 | Passed | |
| BBB | 350 | 3 | 0.90% | 0.86% | 0.4931 | Passed | |
| BB | 300 | 18 | 2.00% | 6.00% | <0.0001 | Failed | |
| B | 180 | 11 | 5.51% | 6.11% | 0.3453 | Passed | |
| CCC | 70 | 12 | 18.08% | 17.14% | 0.5680 | Passed |
The last column is how often a grade priced correctly would see at least this many defaults (the Jeffreys test). Below 1% fails; below 5% is worth explaining.
The statistics, for a model validator
Tests of the whole book at once. Each asks the same question as the table — do predictions and outcomes agree — in a different way, and none of them can see a grade the others net away.
How much defaults move together
Allows for defaults arriving in the same bad year, rather than one at a time.