STRESSATLAS / SYNTHETIC PORTFOLIO

When defaults cluster,
the tail changes.

Credit portfolio stress testing with common random numbers, borrower-level defaults and additive expected-shortfall attribution.

Inspect VaR/ES sampling precision and paired intervals

160Loan positions / 80 obligors
169.6mBase exposure / CNY
20,000Shared Monte Carlo paths
99%VaR and ES level

Scenario comparison

All amounts in CNY. MC SE measures sampling error in the mean; it is not a confidence interval for VaR or ES. Paired deltas compare each scenario with baseline using the same driver bank.

ScenarioAnalytic ELSimulated meanMean MC SEVaRESMean ΔPaired SE
baseline3,366,3103,380,27423,68615,140,00018,476,22500
recession8,691,9908,672,39445,59129,289,00033,601,6955,292,12126,984
severe19,270,34519,230,30678,72051,326,00057,175,56615,850,03260,695
independent3,366,3103,371,45213,8078,717,5009,621,450-8,82222,741
high_correlation3,366,3103,378,83833,00022,085,00027,706,338-1,43614,246

Tail loss at a glance

baseline
18.48m
recession
33.60m
severe
57.18m
independent
9.62m
high_correlation
27.71m

Compare scenarios that change correlation separately from scenarios that change marginal PD, LGD or EAD. Inspect the saved inputs for the assumptions behind each named scenario.

Inspect loss distribution and sector attribution

SectorContribution to portfolio ES / CNYES share

Sector contributions use the same portfolio-tail weights. They sum to portfolio ES. Tied boundary losses share their tail weight equally.

Assumptions and replay

One-period Gaussian factors, deterministic scenario LGD and EAD, fixed marginal PDs. No rating migration, dynamic recoveries or empirical macro calibration. This is a research prototype, not a regulatory capital calculation.

stressatlas verify --out demo validates artifact hashes and reruns all paths from saved inputs and seed. The CSV sample contains the first 200 paths, not the complete tail.