Lab for Lecture 12: CAPM and Anomalies

Testing the CAPM and Fama-French three-factor model using book-to-market sorted portfolios

1 Testing the CAPM with Book-to-Market Portfolios

1.1 Data

Use the bm_portfolios_10_ew.xlsx dataset to obtain monthly returns on equal-weighted book-to-market (BM) decile portfolios, and the fama_french_3_factors.xlsx dataset to obtain the Fama-French three factors and the risk-free rate.

You will need to merge the two datasets by date and calculate excess returns for each BM portfolio.

From bm_portfolios_10_ew.xlsx:

Column Name Data
Date Date at monthly frequency
bm1 Monthly return on the lowest book-to-market decile (growth stocks)
bm2–bm9 Monthly returns on intermediate BM deciles
bm10 Monthly return on the highest book-to-market decile (value stocks)

From fama_french_3_factors.xlsx:

Column Name Data
Date Date at monthly frequency
Mkt-RF Monthly excess return on the market portfolio (market return minus risk-free rate)
SMB Monthly return on the Small Minus Big factor
HML Monthly return on the High Minus Low factor
RF Monthly risk-free rate (1-month T-bill rate)

1.2 Analysis

1.2.1 Step 1: Calculate Excess Returns and the BM Spread Portfolio

  • For each of the 10 BM decile portfolios, calculate monthly excess returns: \(R_{bm_i,t} - R_{f,t}\).
  • Construct the BM spread portfolio: each month, compute the return from shorting the low BM decile (bm1, growth stocks) and going long the high BM decile (bm10, value stocks): \[R_{\text{spread},t} = R_{bm10,t} - R_{bm1,t}\]

1.2.2 Step 2: Summary Statistics

For each of the 10 BM portfolios (using excess returns) and the spread portfolio:

  • Calculate the mean monthly excess return, the standard deviation, and the Sharpe ratio (mean excess return divided by standard deviation).

1.2.3 Step 3: Single-Factor (Market) Model

For each of the 10 BM portfolios and the spread portfolio, estimate the single-factor model: \[R_{i,t} - R_{f,t} = \alpha_i + \beta_i (R_{m,t} - R_{f,t}) + \epsilon_{i,t}\]

  • Use the Excel LINEST function to estimate \(\alpha_i\) and \(\beta_i\) for each portfolio. Recall that LINEST returns the slope first and the intercept second.
  • Calculate the average of the absolute values of the 11 alphas (10 BM portfolios + spread).
  • Plot the average excess returns of the 10 BM portfolios (y-axis) against their estimated market betas (x-axis). If the CAPM holds, these points should line up along the Security Market Line.

1.2.4 Step 4: Fama-French Three-Factor Model

For each of the 10 BM portfolios and the spread portfolio, estimate the Fama-French three-factor model: \[R_{i,t} - R_{f,t} = \alpha_i + \beta_{i,m}(R_{m,t} - R_{f,t}) + \beta_{i,smb} \cdot SMB_t + \beta_{i,hml} \cdot HML_t + \epsilon_{i,t}\]

  • Use the Excel LINEST function to estimate the coefficients. When using LINEST with multiple x-variables, the output will return slopes in reverse order (i.e., \(\beta_{hml}\), \(\beta_{smb}\), \(\beta_m\)) followed by the intercept (\(\alpha\)).
  • Calculate the average of the absolute values of the 11 alphas from the three-factor model.
  • Compare this to the average absolute alpha from the single-factor model. Are the three-factor alphas smaller on average?

1.2.5 Step 5: Regression Analysis for the Spread Portfolio

For the spread portfolio only, run full regressions using the Data Analysis ToolPak in Excel:

  • Run a regression of the spread portfolio returns on the market excess return only (single-factor model).
  • Run a regression of the spread portfolio returns on all three Fama-French factors (three-factor model).
  • Compare the results across the two models:
    • What are the estimated alphas, and are they statistically significant (look at the p-values)?
    • How do the \(R^2\) values compare? How much more of the spread portfolio’s variation is explained by the three-factor model?

1.3 Questions

  • Do the BM portfolios line up along the Security Market Line when you plot average excess returns against their market betas? What does this tell you about whether the CAPM explains the value premium?
  • How do the average absolute alphas compare between the single-factor model and the three-factor model? What does this imply about the ability of each model to explain the cross-section of BM portfolio returns?
  • For the spread portfolio, is the single-factor alpha statistically significant? What about the three-factor alpha? What does this comparison tell you about the source of the value premium?
  • How do the \(R^2\) values compare between the single-factor and three-factor regressions for the spread portfolio? What does the difference suggest about the importance of the SMB and HML factors?
  • Based on your results, does the value premium (high BM outperforming low BM) appear to be compensation for market risk, or does it require additional factors to explain?