Adaptive Asset Allocation: momentum and risk parity

Asset allocation is powerful: the famous Brinson, Hood, and Beebower study showed that asset allocation is responsible for 91.5% of pension funds’ returns. Not stock selection, not market timing.

Also, I need to put my money to work. I don’t have time for frequent trading. I don’t trust my fundamental analysis, and I know that if I don’t have a quantitative, rule based system my emotions will get the best of me and I will make bad decisions.

Asset allocation should be easy these days, with low-cost, liquid ETFs tracking everything from gold to international REITs.

The the million dollar questions is, as always, how do we determine how much of our money to allocate to what asset classes?

Adaptive Asset Allocation

I decided to implement what’s known as Adaptive Asset Allocation, an intuitive extension of the traditional Markowitz mean-variance model. Essentially, it makes traditional portfolio optimization more “adaptive” by using shorter term metrics as inputs instead of long run averages/standard deviations.

The portfolios are rebalanced monthly. There is only a universe of 10 ETFs (gold, bonds, REITs, equities, the usual). So trading and actually implementing these portfolios should be easy.

A strategy’s ease of use is worthless if it doesn’t make money. So how does it perform? To help answer that question, I tested several portfolio construction methods to use as comparison. Here are the (incomplete) results:

Equal Weighted Portfolio

Where all 10 ETFs are given an equal weight.

Equal Weighted Asset Allocation

Momentum Portfolio

tl;dr: compared to equal weighted there is a higher CAGR, slightly higher Sharpe, much worse max draw down.

Where only the top 5 ETFs ranked by momentum are selected to be traded (equal weighted). The momentum effect has been shown to exist across asset classes and countries.


Risk Parity Portfolio

tl;dr: compared to equal weighted, CAGR is slightly higher, max draw down is smaller, Sharpe Ratio is higher

Where all 10 ETFs are included in the universe, but are weighted such that each position contributes the same amount of volatility to the portfolio (the entire portfolio has 100% exposure, i.e. the sum of the position weights equals one).


Momentum and Risk Parity Portfolio

tl;dr: compared to equal weighted, there is a much higher CAGR, smaller max draw down, much better Sharpe Ratio

Where only the top five ETFs are selected every rebalance based on their momentum, and the weighted according to risk parity.


Momentum and Minimum Variance Portfolio

Where the top five ETFs are selected by momentum, then weighted with a minimum variance optimization (weights that minimize the variance of the portfolio).

To be continued

8 thoughts on “Adaptive Asset Allocation: momentum and risk parity”

  1. Interesting backtest. What are the momentum metrics used? (3m and 6m momentum? price above 200 MA?) What are the ETFs selected for the backtest? (mentioning their ticker would be nice). Is it possible to share the excel workbook used for the backtests? thanks!

    1. I believe I use 6m momentum in this one. The symbols were: DBC, EEM, EWJ, GLD, IEF, IEV, IYR, RWX, SPY, and TLT. All the backtests were done in python, I merely used Excel to graph the results. Thanks!

  2. Most ETF price data doesn’t go back as far as 1995, so I’m curious as to what data you used for your tests. Also, this strategy doesn’t seem to do well during strong bull markets. Have you considered how to possibly further adapt the strategy in this case? Thanks for your posts.

    1. I guess the results are a little misleading in earlier years. I forgot to clarify, it starts in 1995 because that’s when the oldest ETF starts (probably SPY), and it starts trading the other ETFs as they come into existence over the years. So in the beginning it is only allocating across a much smaller universe of ETFs.

      Good observation that it doesn’t do too well (as well) during strong bull markets. One way to further adapt the strategy for this would be to try to “predict” bull markets, e.g. using 50/200 SMA crossover, and move more into equities when it is one. Though this defeats the purpose of being diversified by investing in multiple asset classes at once, and is another parameter in one’s model one has to worry about the robustness of, not curve-fitting, etc. Open to any suggestions you might have!

      1. Don’t have the answers, yet… I’m slowly working my way through the excellent set of articles on Dynamic Asset Allocation at Have you tried to reproduce any of their results? Right now, my biggest challenge seems to be to find free data going back to 1995 for the 10 asset classes they use. So far, the best candidates have been Yahoo and MSCI, but I’m still looking….

        1. I have not read the articles on Dynamic Asset Allocation, I appreciate the share though! One tactic I’ve seen used is using mutual fund data (Vanguard, Fidelity) for the asset classes, those tend to go back farther. Or splicing together the longer history mutual fund data with the ETF data, which Wouter and his colleagues do in their Modern Asset Allocation paper,, which is a great read as well.

Leave a Reply

Your email address will not be published. Required fields are marked *