Back to Research
Portfolio Risk September 11, 2026 • 11 min read

When Correlations Go to One: The Absorption Ratio and Systemic Risk

Diversification is a promise the market breaks at the worst possible moment. On a calm day a hundred positions move a hundred different ways; in a crisis they move as one. The danger is not in any single correlation — it is in how tightly the whole system is wound. The absorption ratio measures exactly that, in a single number.

1. Fragility is a property of the whole matrix

Look at a covariance matrix one cell at a time and you miss the point. Any individual correlation can look benign while the market as a whole is primed to move in lockstep. What matters for systemic risk is a property of the entire matrix: is the market's variance spread across many independent sources, or has it concentrated into a handful of common drivers that move everything at once? A tightly-wound market — most of its motion explained by a few factors — is fragile, because a shock to any one of those factors propagates everywhere. A loosely-coupled market absorbs shocks locally. That distinction is invisible cell-by-cell, but it is written plainly in the matrix's eigenvalues.

2. Eigenvalues: where the variance actually lives

A covariance matrix can be rotated into a set of independent directions — its principal components — each with an eigenvalue giving the amount of total variance along it. The eigenvalues are the variance, redistributed onto axes that don't interfere. If a few eigenvalues dominate, a few factors carry the market and the rest is noise around them. If the eigenvalues are all comparable, risk is genuinely spread out. This is the language in which "how coupled is the market?" becomes a number you can compute.

3. The absorption ratio

Kritzman, Li, Page & Rigobon (2011), in "Principal Components as a Measure of Systemic Risk," define the absorption ratio as the fraction of total variance captured by the largest few eigenvalues:

absorption ratio = ( Σ of the largest k eigenvalues ) / ( Σ of all eigenvalues )

— the share of the market's movement absorbed by its top k principal components (the authors use roughly a fifth of the assets for k). A high absorption ratio means most of the variance has collapsed onto those few components: the market is tightly coupled, and diversification is quietly gone. A low ratio means the variance is diffuse and the system is resilient. One number, bounded between zero and one, summarising the coupling of an entire book or market.

4. Why it leads drawdowns

The reason the absorption ratio is a systemic-risk measure and not just a description is timing. Kritzman and co-authors show that spikes in the ratio tend to precede market drawdowns: fragility builds — correlations tighten, the market winds itself up — before the fall, not during it. A market that has quietly concentrated its variance into a few factors is one bad shock away from moving as a single asset. Watching the ratio rise is watching the diversification you are relying on evaporate in advance, which is precisely when a warning is useful. It is the "correlations go to one in a crisis" folklore turned into a leading indicator.

5. From returns to the number

The input is a covariance (or correlation) matrix of asset returns, usually estimated over a trailing window and often exponentially weighted so it responds to the current regime. Build the matrix — from the pairwise realized covariances of your assets, or an EWMA estimate — take its eigenvalues, and form the ratio. The absorption ratio is the top-of-the-stack summary of the same cross-asset story we told with realized semicovariance: where semicovariance isolates the downside co-movement pair by pair, the absorption ratio measures how concentrated all co-movement has become across the whole book. Different lens, same fragility.

6. Caveats worth keeping

The ratio is a level with meaning mostly relative to its own history — the absolute number depends on how many assets you include and how you estimate the matrix, so it is read as a time series (is it rising?), not against a universal threshold. The choice of k matters, though the signal is fairly robust to it. It is a descriptive early-warning gauge, not a causal model: a high ratio says the system is fragile, not that a crash is scheduled. And the covariance estimate carries the usual burdens — a short window is noisy, a long one is stale, and both flatter or distort the eigenvalue spectrum. Read as a monitored trend on a sensibly estimated matrix, it is one of the cleaner systemic-risk signals available.

7. Computing it

Our open-source orderflow-metrics library ships it, dependency-free, in TypeScript and Python — the eigen-decomposition included, via a cyclic Jacobi solver, so there is no linear-algebra library to install:

import { absorptionRatio, symmetricEigenvalues } from "orderflow-metrics";

// a symmetric covariance (or correlation) matrix of your assets
const covariance = [
  [4,   1,   2  ],
  [1,   3,   0.5],
  [2,   0.5, 5  ],
];

absorptionRatio(covariance, 1);   // 0.569 — the top component absorbs 57% of total variance
absorptionRatio(covariance, 2);   // 0.825 — the top two absorb 83%
absorptionRatio(covariance);      // default k = a fifth of the assets (Kritzman et al.)
symmetricEigenvalues(covariance); // [6.831…, 3.072…, 2.097…] — descending

On this small book the leading component already absorbs 57% of the variance, and two absorb 83% — a concentrated, tightly-coupled system. Tracked over time, a rising figure is the early-warning signal. The Python distribution exposes the same functions (absorption_ratio, symmetric_eigenvalues). They sit beside the realized covariance and semicovariance tools inside the wider market-microstructure toolkit we build in the open — install it from our open-source page (npm and PyPI, MIT-licensed).

8. Conclusion

Systemic risk is not hiding in any one correlation; it is in how much of a market's variance has quietly collapsed onto a few shared factors. The absorption ratio reads that concentration straight off the eigenvalues of the covariance matrix, compresses it into a single bounded number, and — because fragility builds before it breaks — tends to rise ahead of the drawdown. It will not tell you the day; it will tell you that the market has wound itself tight. Explore the rest of the toolkit in our quantitative research library, or read the implementation in our open-source metrics.

For more on portfolio-risk analytics and open-source tooling, visit our official resources:

🧩 Open Source 💻 orderflow-metrics on GitHub 📚 More Research