Portfolio allocation via Fama-French factors

Using the 6 benchmark portfolios from the Ken French data library, segmented on size and value, I have illustrated the performance of these factors over 50 years.  The y values are reset every decade to facilitate comparison.

The benchmark auto-correlation property is exploited by only investing when the previous month returns are positive.

In the legend, row 1 contains the portfolios and row 2 aggregated “Small”, “High” (value) and “All” (total market).

blog figs

Several interesting conclusions may be drawn:

  • “Small” and “High” (value) normally outperform the total market (bold green lines).
  • “Small Value” (s/h) typically leads all categories.
  • Growth investing is almost always a poor strategy.
  • The best returns per decade are typically 5x (CAGR 17%).
  • Since 2010, size and value have simply matched total market returns.

Tilting away from growth increases return in almost any time period studied (i.e towards value).  James Montier would wholeheartedly agree! (more in a future post).

Also, more on autocorrelation (or serial correlation) of funds in the next post.


When genius succeeded: source of momentum anomaly

The title is, of course, a play on the Long Term Capital Management story.

In this case, a genius named Yichuan Lui from MIT has determined how the momentum anomaly is congruent with the 3 Fama-French factors of market, size and value.  Previously, the source of this robust anomaly has not been explained adequately.  In his own words:

a multifactor asset pricing model is capable of explaining a large portion of momentum profits … Two features inherent in factor structures, positive autocorrelation and the leverage effect, allow for the creation of small, positive alphas in factor portfolios where the weights are equal to past returns. Momentum loads selectively on factors depending on their realized returns and magnifies alphas by choosing stocks with highly positive and negative betas in a long-short portfolio.

Other researchers have added a factor to the Fama-French 3 factor model to explain momentum.  Lui shows that momentum can be generated within the existing factor structure:

The factors (size, value and market) are auto-correlated: effectively their historical performance has a degree of persistence, which is the core concept of momentum.  This effect appears weak until 5% of outliers are removed.

Removing around 5% of the most extreme realizations of past factor returns changes the estimates dramatically. Market, SMB and HML now have autocorrelation coefficients of 6.9%, 10.5% and 7.6%, respectively

which would imply a momentum alpha of 0.38% per month.

These numbers agree with data in a previous post showing auto-correlation of 20% for a “small-value” portfolio (see trendline equation in third plot).

Then leverage is applied by selecting stocks with the highest betas, which has the effect of magnifying the factors:


Note how rapidly the loadings on the factors change and values of beta greater than 1 (i.e. leverage).

Overall, a seminal paper describing the origins of the momentum anomaly:


Market turning points

What is a good way to detect a market low for a ‘buy the dips‘ strategy using momentum selection?

When the McClellan oscillator goes below -50 and recovers 20 points, the low is near:

blog figs

This breadth-based oscillator is ratio-adjusted to eliminate long term drift.  The calculation is described here:


Ratio Adjusted Net Advances (RANA): (Advances - Declines)/(Advances + Declines)

McClellan Oscillator: 19-day EMA of RANA - 39-day EMA of RANA

A link to the real-time version is on the chart page of this blog:


More important to long term returns is avoiding recessions and buying the market segment with highest 12 month momentum.

St. Louis FED Recession Model

The St. Louis FED publish a “Markov switching” recession model with rigorous test statistics:



Monthly data are also provided, allowing testing with Fama-French benchmark data.  Results from buying and selling at various recession probability levels are shown below.(selecting portfolio with highest annual momentum):

blog figs

Selling when recession probability is greater than 80% is best for returns.  The buy threshold has little effect, possibly because the market recovers before the recession risk subsides.

blog figs

Sharpe is maximized by buying when recession risk is under 30% and selling when risk is greater than 60%.  It makes intuitive sense that investing risk is lowest under those conditions.


Buy = rm <= Optimize(“buy threshold”,30,10,100,10);

Sell = rm >= Optimize(“sell threshold”,60,10,100,10);

PositionScore = IIf(ROC(C,12)>0,ROC(C,12),0);


Ticker Date Ex. date % chg # bars MAE
s-l 4/1/1975 3/1/1980 110% 60 0.0%
s-l 8/1/1980 9/1/1981 19% 14 0.0%
s-m 2/1/1982 3/1/1982 0% 2 0.0%
s-h 12/1/1982 10/1/1990 181% 95 0.0%
s-h 4/1/1991 3/1/2008 1248% 204 -4.4%
s-h 7/1/2009 1/1/2013 78% 44 0.0%