Back to Community
Enhanced Dual Momentum strategy using quarterly rotation

Securities basket used: US Equities (SPY), Int'l Equities (EFA), Emerging Markets (EEM), Gold (GLD), Corporate Bonds (AGG) and Long-Term Treasury (TLT). This current model holds up to 4 equal-weight positions.

This algorithm essentially monitors dual momentum during the last month of each quarter. These periods coincide with heavy institutional re-balancing and reporting activities, which in theory could provide information on what securities institutions are getting out of (underperformers) and what securities will be chosen by them for the coming quarter (outperformers).

More on this anomaly here:
http://blog.alphaarchitect.com/2015/11/30/momentum-seasonality/#gs.=t85MZQ

https://seekingalpha.com/instablog/709762-varan/251242-a-low-drawdown-strategy-for-sector-rotation-for-fidelity-select-funds

https://www.r-bloggers.com/the-quarterly-tactical-strategy-aka-qts/

Here's a backtest using PortfolioVisualizer that uses mutual funds and goes back to the 90s:
http://bit.ly/2vUKlGM

Have fun! Would love to see how this can be further improved. For collaboration requests, please contact: [email protected] and [email protected]

Shout out to the homie Mohammed Khalfan for helping me code this algo!

Clone Algorithm
403
Loading...
Backtest from to with initial capital
Total Returns
--
Alpha
--
Beta
--
Sharpe
--
Sortino
--
Max Drawdown
--
Benchmark Returns
--
Volatility
--
Returns 1 Month 3 Month 6 Month 12 Month
Alpha 1 Month 3 Month 6 Month 12 Month
Beta 1 Month 3 Month 6 Month 12 Month
Sharpe 1 Month 3 Month 6 Month 12 Month
Sortino 1 Month 3 Month 6 Month 12 Month
Volatility 1 Month 3 Month 6 Month 12 Month
Max Drawdown 1 Month 3 Month 6 Month 12 Month
# Backtest ID: 5976a94e7719a84dfc39921a
There was a runtime error.
2 responses

Here's a "crazy" version of this algo using leveraged ETFs.

Clone Algorithm
403
Loading...
Backtest from to with initial capital
Total Returns
--
Alpha
--
Beta
--
Sharpe
--
Sortino
--
Max Drawdown
--
Benchmark Returns
--
Volatility
--
Returns 1 Month 3 Month 6 Month 12 Month
Alpha 1 Month 3 Month 6 Month 12 Month
Beta 1 Month 3 Month 6 Month 12 Month
Sharpe 1 Month 3 Month 6 Month 12 Month
Sortino 1 Month 3 Month 6 Month 12 Month
Volatility 1 Month 3 Month 6 Month 12 Month
Max Drawdown 1 Month 3 Month 6 Month 12 Month
# Backtest ID: 5976aa78a41c824e11ff23a4
There was a runtime error.

This algo is also quite robust! Here's a version of it trading a basket of commodity ETFs which if bought-and-held would have all gotten hammered since 2008.

Clone Algorithm
403
Loading...
Backtest from to with initial capital
Total Returns
--
Alpha
--
Beta
--
Sharpe
--
Sortino
--
Max Drawdown
--
Benchmark Returns
--
Volatility
--
Returns 1 Month 3 Month 6 Month 12 Month
Alpha 1 Month 3 Month 6 Month 12 Month
Beta 1 Month 3 Month 6 Month 12 Month
Sharpe 1 Month 3 Month 6 Month 12 Month
Sortino 1 Month 3 Month 6 Month 12 Month
Volatility 1 Month 3 Month 6 Month 12 Month
Max Drawdown 1 Month 3 Month 6 Month 12 Month
# Backtest ID: 5976cdbeb7c58d4e12079799
There was a runtime error.