Here is my understanding of the Fama-Macbeth process:

  1. Assuming a group of $n$ stocks, we first collect risk profiles $\beta_{i, agg} = [\beta_{i, MKT}, \beta_{i, SMB}, \beta_{i, HML}]$ through performing a time series regression of stock return on the market, size and value portfolios for each stock $i$ in the group, giving $n$ total risk profiles.
  2. We then perform a cross-sectional regression of stock return on $\beta_{i, agg}$ with the $n$ datapoints available. This gives us a set of coefficients $\lambda_{MKT}, \lambda_{SMB}, \lambda_{HML}$ that summarize the risk-return relationship for each risk factor.

Now, I realize that the original motivation of this process was to test the validity of the CAPM and to reduce the unwanted effects of positive residual correlation. How does this process do both? I assume that (correct me if I'm wrong), a strong result for the accuracy of CAPM would imply low magnitudes of $\lambda_{SMB}, \lambda_{HML}$, but I have no idea as to how this test reduces the effects of positive residual correlation.


That's indeed a very good question about the Fama-MacBeth approach and i would like to address both questions in separated statements.

Fama-MacBeth (1973) - standard errors

Your description of the procedure is right in general, so let's directly take a closer look on the cross-sectional regression:

At each period of time, a cross-sectional regression is applied: $$R_{t}^{ei}= \beta_{i}^{'}\lambda_t+a_{it}$$

where $R_{t}^{ei}$ is the excess-return of asset $i$ at time $t$ and $\beta_{i}^{'}$ denotes the estimated beta-factor of the stock (or your vector $\beta_{i,agg}$ if you wish). As stated in Cochrane (Asset Pricing, rev. edition, 2004, p. 235):

[...], $\beta$ are the right-hand variables, $\lambda$ are the regression coefficients, and the cross-sectional regression residuals $\alpha_i$ are the pricing errors.

So, what about the standard-errors for your estimated regression coefficients $\lambda_t$? As stated by John Cochrane, they may be off by a factor of 10! Because of the cross-sectionally correlation between returns, risk-exposures, etc. these standard errors are highly biased and must not be used for any conclusion. In summary, the point estimates (i.e. the estimated values for $\lambda_t$) are unbiased, but definitely not their standard errors.

What the procedure makes so convenient is, that we just do not care about the standard errors we receive from each of the $T$ cross-sectional regressions:

Sampling error is about how a statistic would vary from one sample to the next if we repeated the observations. We cannot do that with only one sample, but why not cut the sample in half [..]. The Fama-MacBeth procedure carries this idea to its logical conclusion, using the variation in the statistic $\hat{λ}_t$ over time to deduce its variation across samples.

What Fama/MacBeth (1973) suggest is, that we estimate $\lambda$ and $\alpha_i$ as the average of these cross-sectional regression estimates, i.e. $$\hat{\lambda} = \frac{1}{T} \sum_{t=1}^{T}{\hat{\lambda}}_{i}$$ $$\hat{a}_i = \frac{1}{T} \sum_{t=1}^{T}{\hat{a}}_{it}$$ ,i.e. both a $T \times 1$ vector.

But most importantly, they suggest that we use the standard deviations of the cross-sectional regression estimates to generate the sampling errors for these estimates, $$\sigma^2(\hat{\lambda}) = \frac{1}{T^2} \sum_{t=1}^{T}{\left( \hat{\lambda}_t - \hat{\lambda} \right)^2}$$ $$\sigma^2(\hat{a}_i) = \frac{1}{T^2} \sum_{t=1}^{T}{\left( \hat{a}_{it} - \hat{a}_i \right)^2} $$

which has nothin to do with the biased standard errors from each of the $T$ estimated coefficients $\lambda_t$. Nowadays, you may apply modern techniques like clustered robust standard errors, which were not yet invented back in 1973.

Fama-MacBeth (1973) - testing the CAPM

Well, their original test was not based on the SMB or HML factor, as they were introduced years later in Fama/French (1992) and Fama/French (1993). They apply the following regression specification to test the validity of the CAPM with the above described methodology (to correct for cross-sectional correlation and provide proper standard errors):

$$R_t^{ei} = \hat{y}_{0,t} + \hat{y}_{1,t} \beta_i + \hat{y}_{2,t} \beta^2_i + \hat{y}_{3,t} s_i + \epsilon_{i,t}$$

There are several implications from the CAPM:

  • the variable $\beta^2_i$ is to test linearity, so $\operatorname{E}[\hat{y}_{2,t}] = 0$ should hold.
  • $s_i$ is a measure of risk unrelated to market-risk, so $\operatorname{E}[\hat{y}_{3,t}] = 0$ should hold. The values $s_i$ are the standard deviation of the least-squares residuals $\epsilon_{it}$ from the market-model ($R_{it} = \alpha_i + \beta_i R_{mt} + \epsilon_{it}$).
  • a positive expected risk-return trade-off, so so $\operatorname{E}[\hat{y}_{1,t}] > 0$ should hold.
  • the Sharpe/Lintner hypotheses, so $\operatorname{E}[\hat{y}_{0,t}] = r_t^f$ should hold, where $r_t^f$ denotes the riskless rate of interest at time $t$.

Their paper concludes:

In sum our results support the important testable implications of the two- parameter model.

However, there is strong evidence, that the CAPM is shot dead in academics and is not a proper model for asset pricing. Fama and French themself brought the CAPM down by including size and value factors for a more accurate model of stock returns.


Cochrane (2005), Asset Pricing, rev. edition, chap. 12.3.

Fama/MacBeth (1973), Risk, Return, and Equilibrium: Empirical Tests, Journal of Political Economy, 81 (3)

Fama/French (1992), The Cross-Section of stock returns, The Journal of Finance 47(2)

Fama/French (1993), Common risk factors in the returns on stocks and bonds, Journal of Financial Economics 33(1)

  • $\begingroup$ Do you use asset and market portfolio "returns" to estimate the beta in the first time series regression step, OR do you use "excess returns" of assets and market portfolio in this first step? $\endgroup$ – Erdinc Sep 12 '20 at 18:23
  • $\begingroup$ The first-pass regression to estimate the betas is based on excess returns as dependent variables, so you subtract the riskless rate of interest of any asset return prior to the analysis. $\endgroup$ – skoestlmeier Sep 14 '20 at 11:02
  • $\begingroup$ Thank you very much for your answer. $\endgroup$ – Erdinc Sep 14 '20 at 21:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.