# What is risk contribution? Definition, formula and example

Canonical URL: https://marketheist.io/portfolio/learn/risk-contribution
By Jeffrey Lin · Published 2026-10-25 · Updated 2026-10-25 · Data through Sep 2026
Category: Diversification

## Key takeaways

- Risk contribution splits a portfolio's variance (uncertainty) into one piece per holding; the pieces add up to the whole, so each can be read as a share of total risk.
- A holding's risk contribution equals its weight times its covariance with the whole portfolio, divided by the portfolio's variance.
- Volatile holdings carry more of the risk than of the money: in a classic stocks-and-bonds 60/40 mix, stocks drive most of the ups and downs.
- A holding that tends to move against the rest of the portfolio can have a negative risk contribution, meaning it lowers total risk.
- Equal risk contribution (risk parity) is the weighting that sets every holding's risk contribution to the same value.

## Definition

Risk contribution is the share of a portfolio's variance (uncertainty) that comes from each holding, so the shares add up to the whole. It depends on how much of the holding you own, how much it swings and how it moves with everything else, which is why a holding's share of the risk can be far from its share of the money.

Also known as: risk share, percent contribution to risk, risk budget, contribution to variance.

## How it works

A portfolio's weights say how the money is split. Risk contribution says how the portfolio's ups and downs are split. The two answers often differ, because a dollar in a volatile fund moves the total far more than a dollar in a calm one.

The split is exact, not an approximation. Portfolio variance, the square of volatility, can be written as a sum with one term per holding. Each term is the holding's weight times its covariance with the whole portfolio. Divide each term by the total and you get shares that add up to one.

Three things set a holding's share: how much of it you hold, how volatile it is, and how it moves with the rest of the portfolio. A fund that moves with everything else adds to risk in full. A fund that tends to rise when the others fall can contribute less than nothing: its share is negative, and removing it would make the portfolio riskier.

Think of a choir where one singer has a microphone. Even if that singer is a small part of the group, the microphone decides what the audience hears. In most stock-and-bond portfolios the stock side holds the microphone.

Investors use risk contributions to see where risk actually sits, to set risk budgets (for example, no single holding above a chosen share of risk), and as the target of risk-parity weighting, which makes every share equal.

## Formula

**Portfolio variance, split by holding**

```
\sigma_p^2 = w^T \Sigma w = \sum_{i = 1}^n w_i (\Sigma w)_i
```

where:

- σₚ²: variance of the portfolio's monthly return
- w: the vector of portfolio weights (fractions summing to 1)
- wᵢ: weight of holding i
- Σ: covariance matrix of the holdings' monthly returns
- (Σw)ᵢ: element i of Σ times w: the covariance of holding i with the whole portfolio
- n: number of holdings
- T: transpose (w written as a row)

**Risk contribution (risk share) of holding i**

```
RC_i = \frac{w_i (\Sigma w)_i}{w^T \Sigma w}, \sum_{i = 1}^n RC_i = 1
```

where:

- RCᵢ: risk contribution of holding i, as a fraction of total portfolio variance
- wᵢ: weight of holding i
- (Σw)ᵢ: covariance of holding i with the portfolio
- wᵀΣw: portfolio variance
- n: number of holdings

Because portfolio volatility is a homogeneous function of the weights, the same shares also split volatility (Euler's theorem): a holding's share of the variance equals its share of the volatility.

**The same share in correlation form**

```
RC_i = \frac{w_i \sigma_i \rho_{i,p}}{\sigma_p}
```

where:

- σᵢ: volatility (standard deviation) of holding i
- σₚ: volatility of the portfolio
- ρᵢ,ₚ: correlation of holding i with the portfolio as a whole
- wᵢ: weight of holding i

This form shows the three drivers at once: how much you hold, how much it swings, and how closely it moves with the portfolio. A negative correlation with the portfolio gives a negative share.

## Worked example

The classic stocks-and-bonds portfolio, 60% in SPY (the S&P 500) and 40% in BND (the US total bond market), measured on monthly returns from Jan 1987 to Sep 2026, about 40 years.

By money, this portfolio is 60% stocks. By risk, SPY accounts for 93.2% of the portfolio's variance and BND for 6.8%. Stocks carry far more of the risk than of the money.

Two facts produce that gap. SPY's annualized volatility was 15.1%, more than twice BND's 4.3%, so a dollar in stocks moved the total far more than a dollar in bonds. And the correlation between them was 0.20: positive, so in an average month the bond side did not offset the stock side; it only diluted it.

That dilution is real. The whole portfolio's volatility was 9.5%, lower than SPY's on its own. What remains, though, is mostly stock risk: in a bad month for this portfolio, the stock market explains almost all of what happened, and the bond side mainly sets how much smaller the fall was.

To make each holding carry the same share, the weights have to move much further toward bonds; the equal risk contribution guide works that out for a multi-asset portfolio.

Data through Sep 2026. Reproduce id: dbd1a17b5ff654e7 (this guide, its lab setup and the data month).

## How MarketHeist computes it

- **Data**: Monthly total returns (dividends reinvested). Funds younger than the period shown are extended backward with older funds, spliced on returns, not prices.
- **Window**: The worked example and the lab use the common window of the holdings, Jan 1987 to Sep 2026 (477 months), ending at the data month of this page.
- **Volatility**: Annualized as the monthly standard deviation times the square root of 12, from the same population covariance as the risk shares.
- **Covariance**: Population covariance of the holdings' monthly returns over the common window: each pair's products of deviations from the mean, divided by N, the number of months. The divisor cancels in every share, so dividing by N − 1 would give the same risk contributions. (`covarianceMatrix` in packages/portfolio/engine/risk.ts)
- **Risk share**: wᵢ(Σw)ᵢ divided by w′Σw for each holding. The shares sum to 1. A holding whose covariance with the portfolio is negative gets a negative share; nothing is clamped. (`riskContributions` in packages/portfolio/engine/risk.ts)
- **Weights used**: The target weights, normalized to sum to 1, not the drifted weights between rebalances. The shares describe the portfolio as designed. (`riskContributions` in packages/portfolio/engine/risk.ts)
- **Zero-variance case**: If the portfolio's variance is zero, each share falls back to the holding's capital weight instead of dividing by zero. (`riskContributions` in packages/portfolio/engine/risk.ts)
- **Correlation**: Pearson correlation of the same aligned monthly returns, shown for context. It is not a separate input: the covariance already contains it. (`correlationMatrix` in packages/portfolio/engine/correlation.ts)
- **Rolling view in the app**: The portfolio report also shows the shares on a trailing 36-month window, recomputed each month at the same fixed target weights, so a change in the chart comes from changing volatilities and correlations, not from trading. (`ROLL_WINDOW` in packages/portfolio/engine/risk.ts)
- **Engine functions**: `covarianceMatrix` (packages/portfolio/engine/risk.ts), `riskContributions` (packages/portfolio/engine/risk.ts), `correlationMatrix` (packages/portfolio/engine/correlation.ts)

## Risk contribution compared with its neighbours

Risk contribution and the measures it is often confused with

| Measure | What it answers | Uses correlations | Adds up to |
| --- | --- | --- | --- |
| Capital weight | How the money is split | No | 1 |
| Volatility-weighted share, wᵢσᵢ / Σⱼwⱼσⱼ | How risk would split if every pair were perfectly correlated | No | 1 |
| Risk contribution (risk share) | How the portfolio's variance, and volatility, is split | Yes | 1 |
| Marginal contribution to risk, (Σw)ᵢ / σₚ | How fast portfolio volatility changes when a little more of holding i is added | Yes | Not a share: the weighted sum equals σₚ |
| Beta to the market | How a holding moves with an outside index | Yes, with the index only | Not a share |

## Limitations

- Risk contributions are estimated from one historical window. Volatilities and correlations change: in stretches when stocks and bonds fell together, the bond side's share of risk rose even though nothing was traded.
- The measure is built on variance, which treats a sharp rise and a sharp fall alike and says little about rare crashes beyond what they add to the variance.
- Results depend on the data frequency and window. MarketHeist uses monthly returns; daily data or a shorter window can give different shares.
- Long histories here are extended backward with older funds or indexes where a fund is younger than the window, so early years approximate the fund rather than reproduce it.
- A risk share describes the past behaviour of a mix. It is not a forecast and not a judgment that a mix is right or wrong for anyone.

## Frequently asked questions

**Why is a 60/40 portfolio mostly stock risk?**

Stocks swing several times as much as high-quality bonds, and over long periods the two have not moved strongly against each other. A dollar in stocks therefore moves the total far more than a dollar in bonds, and the stock side ends up carrying most of the variance even with less than two thirds of the money.

**Can a risk contribution be negative?**

Yes. A holding that tends to rise when the rest of the portfolio falls has a negative covariance with the portfolio, so its contribution is below zero. It lowers total risk, and the other holdings' shares then add up to more than one.

**Is risk contribution the same as beta?**

Closely related. A holding's risk contribution equals its weight times its beta to the portfolio itself (not to the stock market): wᵢ times Cov(rᵢ, rₚ) / Var(rₚ). Beta to an outside index answers a different question.

**Is risk contribution measured on variance or on volatility?**

Both give the same shares. Volatility is the square root of variance, and because volatility scales in proportion to the weights, the Euler split of volatility produces exactly the variance shares.

**How do I make every holding contribute the same risk?**

That allocation is called equal risk contribution, or risk parity. It is solved numerically from the covariance matrix and usually puts more money into calmer holdings such as bonds.

## References

1. Litterman, R. (1996) Hot Spots and Hedges. Goldman Sachs Risk Management Series; the early practitioner statement of risk decomposition by marginal contribution.
2. Qian, E. (2006) On the Financial Interpretation of Risk Contribution: Risk Budgets Do Add Up. Journal of Investment Management 4(4).
3. Maillard, S., Roncalli, T. and Teiletche, J. (2010) The Properties of Equally Weighted Risk Contribution Portfolios <https://papers.ssrn.com/sol3/papers.cfm?abstract_id=1271972>. Journal of Portfolio Management 36(4).
4. Roncalli, T. (2013) Introduction to Risk Parity and Budgeting. Chapman and Hall/CRC.

## Try it

App: https://marketheist.io/portfolio/p/classic-60-40

MCP prompt (MarketHeist MCP server, https://marketheist.io/mcp):

```
Using MarketHeist, show the risk contribution of each holding in my portfolio: 50% VTI, 30% VXUS, 20% BND
```

Historical simulation, not advice.
