Small Group Tutorials

Here to help students catch up, keep up, and move ahead. Book a consultation here.

How Gaussian-Copula Credit-Portfolio Algorithms Turn Marginal PDs into Joint Losses: Latent Factors, Asset Correlation, Conditional Default, Tail Dependence and Model Risk

Reader question: If a bank knows each borrower’s probability of default, why can’t it simply add those probabilities to understand portfolio credit risk?

Because the same macroeconomic shock can affect many borrowers at once. Ten companies with 1% individual default probabilities do not behave like ten independent coins when they share interest rates, growth, funding markets, supply chains or housing conditions.

A Gaussian-copula credit-portfolio model keeps the marginal default probability of each obligor and adds a dependence layer. A latent Gaussian factor represents shared systematic conditions; idiosyncratic Gaussian components represent borrower-specific risk. Defaults become threshold events. Conditional on the shared factor, defaults can be simulated independently, while unconditionally they are dependent.

What this page owns — and what it does not

This page owns the computational transformation:

marginal PDs + exposures + recoveries + dependence parameters → correlated defaults → portfolio loss distribution.

It does not replace rating-transition matrices, which estimate migration probabilities across rating states; Basel IRB capital algorithms, which use prescribed regulatory risk-weight functions; securitisation waterfalls, which allocate realized cash and loss through tranches; or CDS pricing, which owns marginal survival and hazard-curve valuation.

This is public credit-risk mathematics, not a credit opinion, lending recommendation or personalized financial advice.

Marginal default risk is not joint default risk

Suppose two firms each have a one-year probability of default:

P(D₁)=P(D₂)=1%.

If defaults were independent:

P(D₁ ∩ D₂)=0.01×0.01=0.01%.

But if both firms are exposed to the same severe recession, joint default probability can be materially higher.

The copula layer answers the missing question:

how are the default events connected after the individual marginal probabilities have been specified?

Copulas separate marginals from dependence

A copula joins marginal distributions into a multivariate joint distribution.

David Li’s 2000 paper applied copula ideas to default correlation using time-until-default variables and showed how marginal survival information could be combined with a dependence function. The paper also explained the relationship between CreditMetrics-style asset correlation and a normal copula.

The conceptual separation is:

  • marginals: how risky is each borrower individually?
  • copula/dependence: how do those risks co-move?

A model can fit every individual PD perfectly and still misstate portfolio tail loss if dependence is wrong.

The one-factor Gaussian latent-variable model

A widely used representation assigns obligor i a latent standardized variable:

Zi = √ρiY + √(1−ρii,

where:

  • Y is a common standard-normal systematic factor;
  • εi is an obligor-specific standard-normal shock;
  • Y and all εi are independent;
  • ρi controls sensitivity to the common factor.

Because both terms are scaled so their variances add to one, Zi is standard normal.

Turn PD into a default threshold

If the one-year default probability of obligor i is pi, define the threshold:

ci = Φ−1(pi),

where Φ is the standard-normal cumulative distribution.

Default occurs when:

Zi < ci.

Because Zi is standard normal:

P(Zi<ci) = Φ(ci) = pi.

The model therefore preserves the specified marginal PD exactly while adding dependence through the shared factor.

Conditional default probability

Given a realized common factor Y=y, default becomes:

√ρiy + √(1−ρii < ci.

Rearranging gives:

εi < [ci − √ρiy]/√(1−ρi).

So:

pi(y)=Φ((Φ−1(pi)−√ρiy)/√(1−ρi)).

When y is strongly negative under this sign convention, conditional PDs rise together. When y is strongly positive, they fall together.

Conditional independence is the computational trick

Unconditionally, defaults are dependent because all obligors share Y.

But conditional on a fixed Y=y, the remaining shocks εi are independent.

This property makes portfolio calculations tractable. A simulation can:

  1. draw one systematic factor;
  2. calculate each obligor’s conditional PD;
  3. draw independent idiosyncratic defaults conditional on that factor;
  4. sum losses.

Glasserman and Ruiz-Mata exploited this conditional-independence structure when comparing numerical methods for Gaussian-copula credit loss distributions.

Asset correlation is not default-event correlation

The parameter ρ controls correlation in latent creditworthiness variables or factor loadings. It is not numerically identical to the Pearson correlation of binary default indicators.

Binary default correlation also depends on the marginal PD thresholds. Two portfolios with the same asset correlation but different PDs can have different observed default-event correlations.

This is a common implementation mistake: treating a latent-variable correlation as though it were directly observable default correlation.

From default indicators to monetary loss

For obligor i, a simple one-period loss is:

Li = EADi × LGDi × 1{defaulti}.

Total portfolio loss:

L = Σ Li.

Once the dependence model produces joint default states, EAD and LGD convert them into money.

That creates a clear ownership boundary: dependence determines which defaults occur together; LGD algorithms determine severity after default.

Monte Carlo algorithm

A one-factor simulation can be written conceptually as:

  1. for scenario s, draw Y(s) ~ N(0,1);
  2. for each obligor, draw εi(s) ~ N(0,1);
  3. calculate Zi(s) = √ρiY(s) + √(1−ρii(s);
  4. default if Zi(s) < Φ−1(pi);
  5. calculate portfolio loss L(s);
  6. repeat many scenarios;
  7. estimate expected loss, tail quantiles, expected shortfall or tranche losses from the empirical loss distribution.

Multi-factor Gaussian copula

A bank portfolio spans sectors, countries and business models. One global factor can be too crude.

A multi-factor latent variable can be written:

Zi = biTF + √(1−||bi||²)εi,

where F is a vector of correlated or standardized systematic factors and bi contains factor loadings.

Pairwise latent correlation becomes:

Corr(Zi,Zj) = biTbj

under an identity factor covariance; more generally it includes the factor covariance matrix.

This links directly to the correlation-matrix validity problem: an invalid dependence matrix cannot be simulated consistently.

The large homogeneous portfolio intuition

In a very large homogeneous one-factor portfolio with identical PD and asset correlation, idiosyncratic default noise diversifies away conditionally on the common factor.

The portfolio default rate approaches the conditional PD:

LossRate(y) ≈ Φ((Φ−1(p)−√ρ y)/√(1−ρ)).

This Vasicek-style asymptotic structure is closely related to the single-systematic-factor logic behind regulatory credit-risk models.

But a regulatory IRB formula is not simply “a Gaussian copula CDO model.” The Basel framework imposes supervisory functions, maturity adjustments, correlations and capital conventions for a regulatory purpose.

Connection to Basel IRB — and the boundary

The Basel IRB framework uses risk-weight functions based on an asymptotic single-risk-factor credit model. Banks provide or use PD, LGD, EAD and maturity inputs subject to the framework’s rules.

The mathematical resemblance comes from conditioning on a systematic Gaussian factor and calculating a stressed conditional default probability.

The purposes differ:

  • credit-portfolio copula model: build a joint loss distribution under a chosen dependence model;
  • Basel IRB: calculate regulatory capital under prescribed supervisory formulas and standards.

This page therefore connects to but does not compete with the existing Basel IRB owner.

From portfolio loss to tranche loss

Suppose a tranche absorbs portfolio loss between attachment A and detachment D, expressed as fractions of portfolio notional.

The tranche loss fraction is:

TL(L)=min(max(L−A,0),D−A)/(D−A).

An equity tranche with low attachment absorbs the first losses. A senior tranche is untouched until aggregate portfolio loss crosses a high threshold.

The dependence model matters because it controls how much probability mass lies in mild versus catastrophic portfolio-loss states.

Why higher dependence redistributes loss rather than simply “raising all risk”

As systematic dependence rises, obligors behave more alike. More scenarios contain many survivors together and more scenarios contain many defaults together.

The mean portfolio default rate can stay fixed because marginal PDs are unchanged, while the shape of the loss distribution becomes more concentrated in extremes.

This can affect tranches differently. Equity, mezzanine and senior expected losses do not all move in the same way for every parameter set.

This is why “correlation goes up, therefore every tranche price goes down by the same logic” is not a valid algorithm.

Gaussian tail dependence is zero

For a Gaussian copula with correlation strictly below one, the asymptotic upper and lower tail-dependence coefficients are zero.

That does not mean the variables are independent. They can be strongly correlated at ordinary quantiles.

It means that as thresholds move deeper into the extreme tail, the conditional probability of one variable being extreme given the other is extreme tends toward zero in the asymptotic sense.

For credit portfolios concerned with joint extreme events, this is an important model-limit diagnostic.

Student-t copula as an alternative

A t-copula adds a degrees-of-freedom parameter and can generate nonzero symmetric tail dependence.

Demarta and McNeil’s work explains the t-copula’s dependence structure and its relationship to extreme values.

The price of stronger tail flexibility is more calibration complexity and another parameter whose historical estimation can be unstable.

Choosing a heavier-tailed copula because it produces larger stress losses is not validation. The dependence family should be justified by data, economics and the use case.

Default-time copula versus one-period threshold copula

Li’s original copula formulation focused on survival times and combined marginal default-time distributions through a copula.

The one-period latent-threshold model in this article asks whether each obligor has defaulted by a specified horizon.

They are related Gaussian-copula constructions but not identical data structures. A multi-horizon derivative valuation must preserve consistent default-time ordering and marginal survival curves rather than independently drawing unrelated one-year defaults at every horizon.

Marginal calibration from hazard curves

For a credit derivative, marginal survival probabilities may come from a hazard-rate curve calibrated to instruments such as CDS.

The CDS-pricing algorithm owns that single-name calibration.

The copula layer should consume those marginals without silently changing them. If simulated one-name default frequencies no longer match the calibrated survival curve, the dependence implementation is wrong.

Recovery assumptions are another dependence problem

Many simple models use fixed LGD. Real recoveries can be lower in systemic downturns, precisely when defaults are more numerous.

If recovery is negatively related to the common credit factor, portfolio tail loss can be larger than a fixed-recovery model suggests.

A sophisticated engine can make LGD stochastic and factor-dependent, but that introduces additional dependence parameters that are difficult to identify from sparse historical default workouts.

Rare-event simulation

For highly rated portfolios, severe multi-default losses are rare under ordinary Monte Carlo.

If a 99.99th-percentile event is the object of interest, millions of ordinary simulations can still produce noisy tail estimates.

Glasserman and Li developed importance-sampling techniques for Gaussian-copula portfolio credit risk that shift probability toward relevant rare-loss regions and then reweight scenarios to preserve unbiased estimation.

The diagnostic principle is general: a tail estimate with almost no effective tail observations is not trustworthy because the Monte Carlo engine ran without errors.

Inputs and outputs

A credit-copula engine can require:

  • obligor identifiers;
  • marginal PDs or survival curves;
  • EAD;
  • LGD or recovery model;
  • systematic factor specification;
  • factor loadings or asset correlations;
  • correlation matrix and PSD checks;
  • time horizon;
  • portfolio/tranche attachment and detachment where relevant;
  • simulation count and random-number method;
  • importance-sampling or other rare-event settings.

Outputs can include:

  • expected portfolio loss;
  • loss-distribution quantiles;
  • expected shortfall;
  • expected tranche losses;
  • default-count distribution;
  • systematic-factor conditional losses;
  • marginal risk contributions;
  • Monte Carlo standard errors and convergence diagnostics.

Evidence polarity: what supports confidence?

Evidence for a useful dependence model includes exact reproduction of marginal PDs, a valid PSD correlation structure, credible sector and country co-movement, stable loss distributions under more simulation, tail estimates supported by efficient rare-event methods, and reasonable out-of-sample joint-default behaviour relative to stress episodes.

Evidence against confidence includes calibrated correlation changing violently across tranches or dates, simulated marginal PDs drifting from inputs, a non-PSD matrix requiring large repair, tail losses dominated by arbitrary recovery assumptions, or model results that reverse under small changes to an unidentifiable correlation parameter.

Counterexample: same PDs, radically different portfolio risk

Portfolio A contains 1,000 independent borrowers with PD 1%.

Portfolio B contains 1,000 borrowers with the same PD but strong exposure to one common factor.

Both have the same expected number of defaults:

E[N]=10.

But Portfolio B has much more probability of very low and very high default counts. Marginal PD alone cannot distinguish them.

Counterexample: same asset correlation, different binary default correlation

Take two obligor pairs with the same latent Gaussian correlation ρ but different PD thresholds.

The mapping from latent joint-normal probability to binary joint default probability changes with the thresholds.

Therefore observed default correlation is not a universal one-to-one label for ρ independent of PD.

Counterexample: calibration to tranche prices can hide model inconsistency

A single Gaussian-copula correlation may fail to fit observed prices across equity, mezzanine and senior tranches simultaneously.

Market practice historically introduced ideas such as compound correlation and base correlation to fit different parts of the capital structure.

If different tranches imply different dependence parameters, the market is signaling that one constant-correlation Gaussian copula is not a complete description of the joint loss distribution.

Counterexample: a perfect fit today can fail in stress

A copula can be calibrated to current market prices and still fail when the economic regime changes.

Dependence itself is state-dependent in many real systems. Correlations can rise, sector relationships can change and recoveries can fall together during stress.

Static calibration is therefore not evidence of structural stability.

Weak links in implementation

PD horizon mismatch. One-year PDs are used in a five-year loss simulation without a survival-time model.

Correlation misuse. Equity-return correlation is inserted directly as default asset correlation without validation.

Non-PSD dependence. Pairwise estimates do not form a valid joint matrix.

Threshold sign error. Bad common-factor states accidentally reduce default probabilities.

Marginal drift. Simulation no longer reproduces the supplied PDs.

Fixed recovery. Downturn recovery dependence is ignored in a tail-risk use case.

Monte Carlo sparsity. Extreme quantiles are estimated from almost no severe-loss scenarios.

Time inconsistency. Independent horizon simulations produce impossible default resurrection.

Diagnostics: how to test the algorithm

  • zero-correlation test: set all factor loadings to zero and recover independent defaults.
  • high-correlation test: push ρ near one and confirm loss outcomes become strongly clustered without changing marginal PD.
  • marginal-frequency test: simulated default frequency for each obligor converges to its input PD.
  • conditional-PD test: verify the analytical conditional PD against direct latent-normal simulation.
  • PSD test: validate the full dependence matrix before Cholesky or factor simulation.
  • loss-conservation test: scenario loss equals the sum of EAD×LGD across defaulted obligors.
  • tranche-waterfall test: tranche losses respect attachment, detachment and maximum notional.
  • rare-event test: compare ordinary Monte Carlo with importance sampling on a known tail case.
  • copula-family test: compare Gaussian and t-copula stress behaviour without changing marginals.
  • recovery-stress test: introduce downturn LGD and quantify how much tail loss was hidden by fixed recovery.

What would falsify confidence?

Confidence should be withdrawn if simulation fails to reproduce marginal PDs; if the correlation matrix is invalid or requires a large undocumented repair; if tail quantiles are unstable as simulations increase; if a one-factor model misses obvious sector clustering; if joint-default behaviour in observed stress periods lies persistently outside model ranges; or if tiny changes to poorly identified dependence parameters dominate every economic conclusion.

Alternatives and when they are better

t-copulas provide nonzero tail dependence but introduce degrees-of-freedom calibration.

multi-factor latent models represent sector and geography structure more explicitly.

intensity models with common jumps model default timing and contagion differently.

structural models such as the Merton framework tie default to firm asset values and liabilities.

historical stress/scenario models can be preferable when the purpose is resilience testing rather than probabilistic pricing.

No copula removes model risk. It makes the dependence assumption explicit enough to test.

How this connects to the surrounding knowledge estate

Marginal credit states can come from transition matrices, structural PDs from the Merton model, and market-implied survival information from CDS curves. The copula combines those marginals into joint losses. A securitisation then passes those losses through the tranche waterfall. The dependence matrix itself must pass the PSD and repair diagnostics.

Verification and update triggers

Preserve marginal-PD sources, horizon definitions, factor structure, correlation estimates, matrix-repair history, recovery assumptions, simulation settings and calibration targets. Revalidate after major credit cycles, sector-structure changes, rating-methodology changes, material shifts in observed default clustering, recovery-regime changes or persistent misfit across tranche or portfolio-loss observations.

Primary and high-quality references

Educational boundary: This article explains stochastic dependence and portfolio credit-loss simulation. It does not rate any borrower, set a lending limit or recommend any investment.

Discover more from Bukit Timah Tutor

Subscribe now to keep reading and get access to the full archive.

Continue reading