Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: Fama-MacBeth regressions

From   "Subhankar Nayak" <>
To   <>
Subject   Re: st: Fama-MacBeth regressions
Date   Tue, 12 Oct 2004 11:32:48 -0400

Fama-Macbeth approach is an innovative two-stage approach meant to minimize
within-portfolio variance while capturing the across-portfolio
Their 1974 paper is not a landmark in terms of econometric modelling, but
the approach is nice.
Their approach is meant to test Capital Asset Pricing Model (CAPM).

Suppose there are 1,000 stocks with returns data over 100 months.
We also have the market portfolio returns over 100 months
We want to test whether CAPM holds or not for this sample.

Stage 1 analysis: Portfolio formation
1. Starting, let's say, month 25, we compute the pre-ranking betas for each
stock, by regressing the previous 24 month stock returns on the market
2. Each month we rank all stocks as per their betas.
3. Classify all these 1,000 stocks into, say, 10 portfolios
4. Now we have 10 portfolios over 76 months (months 25 through 100)
(The idea of portfolio formation is to minimize within-portfolio variation
in betas).

Stage 2 analysis: Cross-sectional tests
1. For each portfolio, we carry out full-period regression of portfolio
returns on market returns (10 regressions, each over 76 months).
2. Thus we get 10 post-ranking betas, one for each portfolio.
3. For each of the 76 months, we regress the portfolio returns on the
post-ranking betas (76 regressions, each over 10 observations).
4. We collect the time series of all these regression slopes.
5. The essential test is whether time-series average slope = 0
If no, then CAPM holds.
If yes, CAPM doesn't hold and the betas have no explanatory power on stock

The state of literature and evidence is that CAPM doesn't hold.


----- Original Message -----
From: "Stas Kolenikov" <>
To: <>
Sent: Tuesday, October 12, 2004 11:10 AM
Subject: Re: st: Fama-MacBeth regressions

> This sounds like a multilevel model to me. I don't know the method at
> all as proposed by Fama and MacBeth (can you provide a reference? I
> know Fama is famous in finance, but I am not sure he is equally famous
> in statistics...), but it seems to me that plugging the regression
> coefficient estimates as the real time series observations will at
> least give wrong standard errors. (Don't tell me you are going to use
> the bootstrap to correct them. Just don't get me started...) I would
> advocate constructing an appropriate two-level model and estimate it
> with -gllamm-; that would be the closest analog of SAS' PROC MIXED, if
> that's what you had in mind there. See, GLVM
> book from Stata, and examples at
> Before saying that Fama-MacBeth is the de-facto method, remember that
> you may become a founder of a new methodology, so that people in
> business would refer to it as Edmans model :))
> Stas
> On Tue, 12 Oct 2004 10:02:42 -0400, Alex Edmans <> wrote:
> > Dear all,
> >
> > I'm relatively new to Stata; although I can run standard regressions
> > any problem, I am not sure how to run a Fama-MacBeth regression (where
> > run cross-sections at different points in time, e.g. for 20 different
> > between 1980 and 2000, and then take the coefficients and treat these as
> > time series). Apparently in SAS you can run this very easily, with a
> > of lines of code. Does anyone know how to do this in Stata? I think I
> > work out how to run the 20 regressions, via looping through the years,
> > am not sure how I would save the cross-sectional coefficients to enable
> > to do the second-stage time series regression.
> >
> > Any help would be really appreciated. Thanks in advance.
> >
> > Alex Edmans
> > Sloan School of Management, MIT
> --
> Stas Kolenikov
> *
> *   For searches and help try:
> *
> *
> *

*   For searches and help try:

© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index