- in ETFs , Rotation by Cesar Alvarez
Three Factor ETF Rotation Strategy
I am drawn to ETF rotation strategies. What likely draws me to them is that in general, these are simple strategies that do not trade that often. My goal with these strategies is to match buy and hold with less drawdown.
What follows is a strategy I have known about for a while and tested but never written about.
Correction on January 18, 2023
This post was corrected on January 18, 2023, after an error was discovered in the code. What is rare, the results with the correct code are better.
The Concept
From a set of ETFs, select the one to three that have had the best short-term return, best mid-term-return with the least volatility.
The Ranking Formula
Step1
- Calculate the 3-month return for each ETF
- Calculate the 20-day return for each ETF
- Calculate the 20-day historical volatility for each ETF
Step2
- Rank ETFs from Step 1A from high to low. Give the top-ranked ETF a value of 1. The next one is a value of 2, etc. and the last one a value of N. N being the number of ETFs in the trading universe.
- Rank ETFs from Step 1B from high to low. Give the top-ranked ETF a value of 1. The next one is a value of 2, etc. and the last one a value of N.
- Rank ETFs from Step 1C from low to high. Give the top-ranked ETF a value of 1. The next one is a value of 2, etc. and the last one a value of N.
Step 3
Final Rank Value (FRV) for each ETF is Step2A * 40% + Step2B * 40% + Step2C * 20%
The downloadable spreadsheet contains an example of how to do this ranking.
Universe
The tricky part about any ETF strategy like this is the selection of the trading universe. This has a huge impact on the results. I will test 2 universes for this post but if you have your own idea of a universe to test, add it to the comments below. If I get enough good universes, I will do another post with those results.
US Sector Universe: XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV, XLY
Asset Class Universe: SPY, EFA, IEF, GLD, ICF
Buy Rules
Test date range from 1/1/2007 to 6/30/2022.
- Last day of the trading month
- Calculate FRV for each ETF
- Of the top (1,2,3) ETFs, only enter those trading above their 200-day moving average
- Enter on next Open
The 200-day MA rule is used to avoid being in a highly ranked ETF trending down.
Sell Rules
- Last day of the trading month
- Exit on the next open
We exit all positions at the end of the month even if it is a buy. This has the effect of rebalancing each month.
Target Results
First, we need a target to beat. I have chosen two. First is buy and hold on the SPY. The second is 60% SPY/40% TLT rebalanced yearly.
US Sector Universe
The three-position portfolio beat both the baseline portfolios in terms of CAR & MDD but not Sharpe Ratio. But not by much. Given the work I would stick with SPY/TLT overall. Granted that portfolio is getting killed this year. It is down 21% through June 30. The 3-position portfolio is doing much better this year only down .16%. The one position portfolio has a higher CAR but also a higher MDD.
Asset Class Universe
I was not expecting the CAR for this universe to match either baseline because of the assets. But I was expecting a lower MDD. The 2 and 3 position portfolios matched my expectations, though at a significant lowering of the CAR.
Asset Class Universe Optimization
I don’t know how the lookback periods and the weighting were chosen, which made me want to do an optimization on them. This is what I did.
- (1,2,3) month return
- (10, 20, 30, 40) day return
- (10, 20, 30, 40) day historical volatility
- (20, 30, 40, 50) % weight for monthly return
- (20, 30, 40, 50) % weight for daily return
- Historical volatility weight is what is left over from the previous two
Here are the top 15 results. You can get the full optimization run for this and the sectors universe by filling in the form below. I also added (1,2,3) positions to the optimization.
Now, these results are beating the baseline. A couple of things I notice:
- The higher CAR tend to underweight HV.
- The lowest MDD tend to overweight HV.
Spreadsheet
Fill in the form below to get the spreadsheet with lots of additional information. See the results of all variations from the optimization run. This includes top drawdowns, trade statistics and more.
Final Thoughts
Using the original rules there were no big surprises. But as I said at the beginning, the universe selection has a huge impact on the final results.
I was surprised at how well the top optimization runs performed. The weight of the HV changing the results as they did is something that I use all the time in my strategies. When wanting to lower drawdowns, I will focus on lower HV stocks.
If you have ideas for different universes to test out, put them in the comments below. If I get enough suggestions, I will do another blog post with these.
Backtesting platform used: AmiBroker. Data provider: Norgate Data (referral link)