Choosing Risk Factors by Testing Their Prices of Risk
Summary
The document asks how to choose the number of factors in an equity risk model when adding factors can explain more return variance and reduce specific variance. It distinguishes describing risk from explaining average returns: a factor may improve fit without earning a statistically distinguishable risk premium. The proposed evaluation is the Fama–MacBeth two-pass procedure. First, estimate each asset’s factor exposures using time-series regressions. Then, each month, regress cross-sectional asset returns on those estimated exposures to obtain factor price estimates. Average the monthly estimates and assess their statistical significance.
Under this approach, factors with statistically insignificant estimated prices of risk may be candidates for removal, even if they explain some variance. The document does not provide a worked dataset, factor-selection thresholds, or guidance on estimation error and model stability. Its recommendation concerns testing risk premia; it does not establish that this test alone identifies the optimal factor set for every risk-modeling purpose.
Key ideas
- Adding factors can raise explained return variance without showing that those factors earn a risk premium.
- The Fama–MacBeth method first estimates asset exposures and then estimates monthly factor prices from cross-sectional returns.
- Averaging monthly price estimates allows their statistical significance to be assessed.
- The answer suggests dropping factors with statistically insignificant prices of risk, while noting that this is separate from variance explained.
Tags
Full text
# How are factors determined on a basis to fully describe/decompose risk/variance?
# How are factors determined on a basis to fully describe/decompose risk/variance?
In The Prediction of Systematic and Specific Risk in Common Stocks by Rosenberg & McKibben (1973), the authors mention in section III. "A Stochastic Model of the Parameters":
> but the (specific) variance (of a security/asset) cannot fall to zero unless all variation in the risk of firms can be captured by the descriptors (or risk factors), a near impossibility.
The whole point of the Barra risk models is to (1) decompose the risk of an asset and subsequently a portfolio of assets and (2) forecast risk for other portfolio or risk management purposes. In doing so, they introduce a set of structural risk factors e.g. style, country, and industry risk factors for the equity risk model to fully capture the cross-section of risk for all the equities in their proprietary universe of stocks (data owned by MSCI).
Question: How do they determine the optimal number of factors? (since more is better and the specific risk/variance decreases with the number of factors). Is this an econometrics/statistical or economic question?
## Answer by phdstudent (score 2, accepted)
https://quant.stackexchange.com/a/82361
The right way to decide on which factors to keep into a model is to run Fama-McBeth two step regressions. In a nutshell, you are right, adding more factors mechanically will increase the $R^2$ of the time-series regression, or in other words increase the proportion of the variance of returns of any asset explained by the model.
These models are usually good at explaining the variance of returns the challenge is for them to explain the average returns. So you only want to include factors that have a risk-premia, and the most common way of doing so are two-pass regressions. These two pass regressions are the only way of testing the model when some factors are not traded (such as macro risks).
For a given set of test assets, after running time-series regressions and getting loadings on the factors (style, country, risk), for each month $t$, you run a cross-section regression:
$r_{i,t} = \lambda_0 + \hat{\beta}_i {\lambda}_t + \alpha_{i,t}$
Where: $\hat{\beta}_i \equiv [\beta_{i, MktRf}, \beta_{i, style}, \beta_{i, country}, ...]'$, is a vector of the coefficients estimated on the first step.
What you are looking for is to estimate the vector of $\hat{\lambda}_t \equiv [\lambda_{t, MktRf}, \lambda_{y, style}, \lambda_{t, country} ...]$.
So after the second step you will have $T$ estimates for each $\lambda$ (price of risk).
Then you just need to average those $\lambda$'s:
$\hat{\lambda} = \frac{1}{T} \sum^{T}_{t=1} \hat{\lambda}_t$
And you can test their statistical significance using as a variance estimate the following:
$Est.Asy.Var(\hat{\lambda}) = \frac{1}{T^2} \sum^{T}_{t=1} (\hat{\lambda}_t - \hat{\lambda} )(\hat{\lambda}_t - \hat{\lambda} )'$
Factors that come as non-significant have a statistically zero price of risk and you can drop them for the model. This is completely independent of the amount of the variance the factor helps explain.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.