Decomposing Portfolio Systematic Risk Across Correlated Factors
Summary
The discussion explains why factor risk contributions may not add up to a portfolio regression’s R-squared when a portfolio contains multiple instruments. Aggregating each instrument’s factor betas by portfolio weight can produce exposures, but the resulting factor returns may be correlated, so individual variance terms alone do not capture all systematic variance. The response illustrates this with a three-factor regression and decomposes explained variance into factor variance terms plus pairwise covariance terms.
The second answer adds a practical qualification: additivity depends on how factors and instrument exposures are constructed. With non-purified factors and different factor sets used for different holdings, the sum of component-level systematic-risk contributions need not equal portfolio R-squared; the answer says equality holds when components use the same factors. The example is illustrative, and the discussion does not provide a general attribution convention for allocating covariance terms among factors.
Key ideas
- Correlated factors contribute cross-covariance terms to explained portfolio variance.
- A factor variance-only calculation can therefore fail to reproduce regression R-squared.
- The example decomposes R-squared using factor variances, betas, and pairwise covariances.
- The stated additivity condition depends on using consistent factors across portfolio components.
Tags
Full text
# Portfolio Systematic Risk, Breaking it down into factor % contributions
# Portfolio Systematic Risk, Breaking it down into factor % contributions
I have a portfolio (p) of N equities, with let's say weights vector (m) at the start of the calculation period. Each equity has its own set of factors (like corresponding country, industry index, etc.), some of the equities have the same factors.
I am trying to break down the systematic risk into individual factor contributions to portfolio's (p) systematic risk.
What I do is for each component of portfolio (p) I calculate corresponding factors exposures (betas), and say that portfolio's (p) expo to those factors are weighted (based on weights m) sums of betas.
Systematic risk is R2 of portfolio's (p) returns vs sum of factor returns with calculated weights (sums of betas).
Factor k % contribution to portfolio's risk is corr(p,k) * p expo to k * standard deviation of k / standard deviation of the whole portfolio.
Using this methodology I am able to sum up each factors k % contribution to R2 only if portfolio is made of one instrument but if it is of multiple instruments the sum of factor's % contributions does not exactly equal R2.
Q - How to calculate factors % contribution to portfolio's systematic risk? Or does sum of contributions not need to be equal portfolio vs factors (with calculated weights) R2?
Help would be appreciated a lot, thank you in advance
## Answer by phdstudent (score 1)
https://quant.stackexchange.com/a/76343
Because I do not think the answer above is satisfactory, let me try to explain how contribution to systematic risk works when you have multiple factors.
The key issue, to me, seems that you are ignoring the covariance between factors.
Let me pick an example, and evaluate the contribution of the standard factors $Mkt$, $SMB$ and $HML$ to the performance of a mutual fund (for example $MSSGX$). I am going to use monthly returns from 2010 to today on the example.
If I run the usual regression:
$$r_{MSSGX} - r_f = \alpha + \beta^{Mkt} (r_{mkt}-r_f) + \beta_{SMB} (r_{SMB})+\beta_{HML} (r_{HML}) + \epsilon$$
I get the estimates below:
```
Source | SS df MS Number of obs = 144
-------------+---------------------------------- F(3, 140) = 149.13
Model | .715188086 3 .238396029 Prob > F = 0.0000
Residual | .223798532 140 .001598561 R-squared = 0.7617
-------------+---------------------------------- Adj R-squared = 0.7566
Total | .938986618 143 .00656634 Root MSE = .03998
------------------------------------------------------------------------------
MSSGX_rf | Coefficient Std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
mktrf | 1.133939 .0808516 14.02 0.000 .974091 1.293787
smb | 1.432307 .1447066 9.90 0.000 1.146215 1.7184
hml | -.6505726 .102298 -6.36 0.000 -.8528212 -.448324
_cons | -.0013382 .0034322 -0.39 0.697 -.0081238 .0054475
------------------------------------------------------------------------------
```
Now we can decompose the $R^2$. All the quantities we need are:
$\beta_{Mkt}^2 = 1.28$, $\beta_{smb}^2 = 2.05$, $\beta_{hml}^2 = 0.42$
$Var(Mkt) = 0.001898$, $Var(SMB) = 0.000590$, $Var(HML) = 0.001072$
$Cov(Mkt,SMB) = 0.0003287$, $Cov(Mkt,HML) = 9.07535E-05$, $Cov(HML,SMB) = 2.13465E-05$
$Var(MF) = 0.00656634$
So that we have: $$R^2 = \frac{1}{Var(MF)} \bigg ( \times \beta_{Mkt}^2 \times Var(Mkt) + \beta_{HML}^2 \times Var(HML) + \beta_{SMB}^2 \times Var(SMB) + 2 \times \beta_{Mkt} \beta_{HML} cov(Mkt,HML) + 2 \times \beta_{Mkt} \beta_{SMB} cov(Mkt,SMB) + + 2 \times \beta_{Mkt} \beta_{SMB} cov(Mkt,SMB) \bigg ) = 0.7617$$
## Answer by Paul (score -1)
https://quant.stackexchange.com/a/49931
For those who have the same practical question:
Q - How to calculate factors % contribution to portfolio's systematic risk? Or does sum of contributions not need to be equal portfolio vs factors (with calculated weights) R2?
The way I see it: A - Short version - if the factors are not purified and portfolio components have different corresponding factors on which they are regressed individually (to get betas for each portfolio component via multi-factor model) sum of systematic risk contributions from each portfolio component DOES NOT NEED TO BE EQUAL to R2 (R2 of portfolio returns vs factor returns, where factor is attribution to portfolio returns from systematic factors).
Sum of factor contributions must be equal to portfolio vs the whole factor R2 using non-purified factors only if each portfolio component is regressed on the same factors (e.g. portfolio of cap goods stocks from Sweden).
Hope this will help somebody.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.