Validation and governance

Portfolio outcomes and model governance

Bring migration, vintage, recovery, EAD, and ECL outcomes into a controlled model lifecycle.

Visual summary of Portfolio outcomes and model governance: Bring migration, vintage, recovery, EAD, and ECL outcomes into a controlled model lifecycle.
A visual overview of Bring migration, vintage, recovery, EAD, and ECL outcomes into a controlled model lifecycle. See the guide for assumptions and implementation details.

Purpose

Connect account outcomes and model monitoring to ownership, independent review, escalation, and change control.

Hover over or focus a term for a quick definition, or open its glossary entry.

  • Portfolio
  • Default

Key definitions

  • Vintage analysis follows cohorts originated or activated in a common period.
  • Model governance assigns responsibilities for inventory, review, approval, monitoring, and retirement.
Formula
Vintage cumulative default rate at age t = cohort defaults observed by age t ÷ cohort eligible units, with censoring treatment stated.

Worked example

Compare 12-month default outcomes for equally mature origination quarters rather than comparing a mature quarter with a newly booked one.

Detailed explanation

A broad monitoring view combines bad/default rates, rating transitions, roll rates, vintages, arrears, cures, prepayments, recoveries, LGD, CCF/EAD, and observed-versus-expected ECL. Slice by time, product, score band, and risk segment when definitions and sample sizes support it.

Governance gives the metrics an owner and an action. Maintain a model inventory, intended use, assumptions, limitations, data lineage, validation findings, approved changes, monitoring standards, and contingency plans. Independent review should challenge conceptual soundness and performance, while the owner responds to findings. Monitoring thresholds are institution-specific; no statistic alone declares a model compliant or fit for purpose.

Try a reproducible Python example

These examples use synthetic inputs and run locally in a browser worker. Edit the code, run it, and compare its output with the published example.

Runnable Python · local in your browser

Monitor observed-to-expected and Brier score

Compare a small set of matured binary outcomes against predicted PD values.

Output

Run the code to see the output.

Runtime loads only after you press Run. Code runs in a separate browser worker with a 10-second limit and a 20,000-character output cap. Use synthetic examples only; browser execution is not a secure environment for secrets or sensitive records.

Runnable Python · local in your browser

Calculate ROC-AUC, Gini, KS, precision, and recall

Use synthetic out-of-sample scores and matured labels. Higher scores indicate higher risk; the example computes pairwise ROC-AUC and a threshold-specific operating point.

Output

Run the code to see the output.

Runtime loads only after you press Run. Code runs in a separate browser worker with a 10-second limit and a 20,000-character output cap. Use synthetic examples only; browser execution is not a secure environment for secrets or sensitive records.

Assumptions

  • Cohorts have comparable definitions and monitoring metrics have named owners and actions.

Limitations

  • Different product mix or collection policy can confound cohort comparisons.
  • Monitoring does not replace independent validation or accounting controls.

References

Educational material only. Methods and examples are simplified; state and validate the assumptions required for your use case.

Portfolio outcomes and model governance | CreditRiskHub