The Mathematics of Allocating Risk Instead of Capital
Picture a portfolio analyst who just inherited a 60/40 weighted portfolio from a predecessor who retired last month. This portfolio looks well “balanced” having 60% in equities, 40% in bonds going by the obvious textbook diversification. Then when they run the numbers properly, the story changes. On most days, equities aren’t responsible for 60% of what moves the portfolio. They’re responsible for closer to 90%. The bonds in this case, despite being 40% of the capital are barely along for the ride.
This is the problem risk parity exists to fix. The phrase behind it - “we don’t allocate capital, we allocate risk” - sounds like a slogan, but it’s really a correction to an illusion that’s baked into how most portfolios get built. The capital weights tell you what you bought. They don’t tell you what’s actually driving your returns.
Why a balanced-looking portfolio usually isn’t
Start with the obvious quantity: portfolio variance, the standard measure of how much a portfolio wobbles.
$$\sigma_p^2 = w^T \Sigma w$$
Here $w$ is the vector of portfolio weights (the familiar 60% and 40%), $\Sigma$ is the covariance matrix capturing how every asset moves with every other asset, and $\sigma_p$ is the resulting portfolio volatility. Nothing controversial - it’s the same formula behind every variance calculation an analyst has ever run.
The useful trick comes next. Because variance scales in a very specific mathematical way with the weights (technically, it’s “homogeneous of degree 2”), there’s an exact way to split total portfolio risk across each asset that essentially gives us an identity that holds precisely:
$$\sigma_p = \sum_{i=1}^{n} w_i \cdot \frac{\partial \sigma_p}{\partial w_i} = \sum_{i=1}^{n} w_i \cdot \frac{(\Sigma w)_i}{\sigma_p}$$
$(\Sigma w)_i$ is just the $i$-th entry of the vector $\Sigma w$ - a way of capturing how much asset $i$ tends to move with the rest of the portfolio, accounting for everything it’s correlated with. Multiply that by the asset’s weight, divide by total volatility, and you get each asset’s exact slice of the portfolio’s total risk, known as its risk contribution:
$$RC_i = w_i \cdot \frac{(\Sigma w)_i}{\sigma_p}$$
Add up every $RC_i$ in the portfolio and you get exactly $\sigma_p$ back. This is what lets the analyst put a number on their instinct. Equity volatility typically runs 15-18%, bond volatility more like 5-7%, and the correlation between them is often modest or even negative. Run those numbers through the formula above and 60% in equities translates into 85-90% of total risk. The 40% in bonds is mostly there for decoration. Capital weight and risk weight are simply not the same currency, and they only happen to match when every asset has identical volatility and a perfectly symmetric correlation structure. Such a coincidence almost never occurs in a real portfolio.
Risk parity takes this discovery and turns it into a design principle. Instead of choosing weights to hit a capital split, choose weights so that every asset’s $RC_i$ comes out equal - or matches whatever deliberate risk budget $b_i$ you’ve decided each asset deserves.
Solving for it isn’t as simple as it sounds
The condition for true equal risk contribution (ERC) looks simple enough written out:
$$\frac{w_i (\Sigma w)_i}{\sigma_p} = \frac{w_j (\Sigma w)_j}{\sigma_p} \quad \text{for all } i, j, \qquad \text{subject to} \quad \sum_i w_i = 1,\ w_i \geq 0$$
In practice, it’s a tangle of nonlinear equations, and feeding it to a generic optimizer gets messy fast - especially once the portfolio has more than a handful of assets, or when some of them are so highly correlated that $\Sigma$ becomes nearly singular. Two ideas a few years apart made this solvable in a way people could actually trust.
Maillard, Roncalli and Teiletche (2010) reframed it as a least-squares problem:
Instead of forcing every $RC_i$ to match exactly, just minimize how far apart they are.
$$\min_w ; \sum_{i=1}^{n} \sum_{j=1}^{n} \left( RC_i - RC_j \right)^2$$
It works, but it’s still not a convex problem, which means the solver can get stuck or behave unpredictably depending on where it starts.
Florin Spinu (2013) found a cleaner path - a version of the problem that’s genuinely convex, meaning there’s exactly one best answer and any reasonable solver will find it:
$$\min_w ; \frac{1}{2} w^T \Sigma w - \sum_{i=1}^{n} b_i \ln(w_i), \qquad \text{subject to} \quad w^T \mathbf{1} = 1,\ w \geq 0$$
$b_i$ is the risk budget assigned to asset $i$. Set every $b_i$ equal and you get equal risk contribution, or weight them deliberately if some assets are meant to carry more of the story. The log term is doing quiet but important work: it discourages the optimizer from ever pushing a weight all the way to zero, which keeps the solution from collapsing into something concentrated and brittle.
For a typical cross-asset book (somewhere between 10 and 50 instruments) the workhorse method in practice is a cyclical coordinate descent. You adjust one weight at a time while holding the rest still, solve each step with a simple closed-form calculation and repeat until it settles. For larger universes, Newton’s method on the convex formulation scales more gracefully. Either way, the takeaway for anyone building this from scratch is to reach for the convex version. The least-squares version is fine as a teaching example with five assets and starts breaking down well before it gets interesting.
The shortcut that quietly isn’t the same thing
A surprising amount of what gets called “risk parity” in practice is actually something simpler - inverse-volatility weighting:
$$w_i \propto \frac{1}{\sigma_i}$$
Weight each asset in inverse proportion to how volatile it is, and you’re done. It feels like risk parity, and under one very narrow condition (zero correlation between every pair of assets) it actually is. But real portfolios don’t live in that world. Stocks and REITs might move together at a correlation of 0.45; bonds and gold might sit near $-0.10$. The moment correlations are nonzero and uneven, inverse-vol weighting starts drifting away from true equal risk contribution, and the gap grows the more those correlations spread out. An analyst who stops at $1/\sigma_i$ has built something closer to volatility parity - a reasonable approximation in stable markets, and a meaningfully different animal once correlations start moving, which is usually exactly when it matters most.
The catch
Here’s the part of the story that tends to get left out of the explainer decks. Equalizing risk contribution between a stable asset (bonds) and a volatile one (equities) naturally produces a portfolio that’s light on equities and heavy on bonds in capital terms. Left alone, that portfolio’s expected return is usually too modest for most investment mandates to accept. So in practice, the unlevered weights get scaled up - historically through bond futures, repo financing, or swaps on the fixed-income sleeve - until the portfolio hits a target volatility or return. This is in essence the engine inside Bridgewater’s All Weather fund and the wider risk-parity industry that grew up around it.
The mathematics is elegant. The real-world implementation is a leveraged fixed-income book, and that brings two risks the formula doesn’t account for on its own:
- Correlation regime risk. The entire framework leans on $\Sigma$ staying reasonably stable. 2022 told a different story - equities and bonds sold off together as real yields repriced sharply, and the very decorrelation that justified the bond leverage in the first place evaporated at precisely the moment the leverage hurt most.
- Funding and margin risk. A levered bond sleeve introduces financing costs and margin-call liquidity pressure that a plain, unlevered portfolio never has to think about.
The part estimation always complicates
There’s one more honest problem. $\Sigma$ is never actually known. It’s estimated, usually from historical data, and the ERC weights are sensitive to that estimation error - particularly around the weaker, noisier factors in the matrix. A few tools analysts lean on to manage this are:
- Shrinkage estimators (Ledoit-Wolf, or factor-model shrinkage) pull the raw sample covariance matrix toward something more stable, which noticeably calms down the resulting weights, especially once the portfolio has more than about 30 assets.
- Exponentially weighted covariance lets the estimate respond faster to new information, at the cost of more noise. The half-life chosen here is a real decision worth testing, not a default inherited from a template.
- Hierarchical Risk Parity (Lopez de Prado, 2016) sidesteps the whole matrix-inversion problem by clustering assets based on correlation and allocating recursively down the resulting tree. It’s a genuinely different algorithm from the optimization above, and a useful second opinion when $\Sigma$ is large or close to singular.
When the story doesn’t end at variance
Everything above assumes a gain and an equivalent loss are equally “risky,” which is a fair enough assumption for plain stocks and bonds. It falls apart for assets with lopsided risk - credit, options overlays, emerging-market debt - where the downside can be far worse than the upside is good. There are versions of risk parity built for that, using measures like CVaR that focus specifically on the bad outcomes rather than volatility in general. They follow the same basic idea, just aimed at the tail instead of the whole distribution. The tradeoff is that the clean, one-shot formula goes away. These versions usually need to be solved by simulation instead. Good to know exists, even if most analysts won’t need it until the scope moves past plain stocks and bonds.
Back to the analyst
By the time they’ve worked through all this, the inherited 60/40 portfolio looks different. It’s but built on an assumption that capital and risk are the same thing, when they never really were. The equations that started this - $\sigma_p^2 = w^T \Sigma w$, $RC_i = w_i (\Sigma w)_i / \sigma_p$ - are the part most people learn first, and they’re genuinely the easy 10% of the job. The harder 90% is estimating $\Sigma$ honestly under uncertainty, sizing the leverage that turns a defensive-looking portfolio into one with a usable return, and never forgetting that the one scenario this framework is most vulnerable to is the one where diversification quietly stops working right when it was needed the most.
comments powered by Disqus
