- in ETFs , Rotation by Cesar Alvarez
Five ETF Monthly Rotation Strategy
I was working on another blog post when I saw this post Inferences From Backtest Results Are False Before Proven True on Price Action Lab. Mike has a challenge to replicate a very simple test. I often get email from people trying to replicate results from one of my blog posts and thought this would be fun to do. I cover some of this topic on my post Backtesting is Hard.
The Rules
- Monthly Data: 01/2007 – 10/31/2015
- ETFs: SPY, EEM, TLT, GLD, DBC
- Score: 3-month ROC
- Two open positions only
- 50% allocation
- Long-only
- No rebalancing
- Adjusted data from Yahoo Finance
Although this seems like a simple strategy, his results are not close to the test he was trying to match. When I get rules from consulting clients, we spend a lot of time clarifying them. Here are my questions:
- What of entry or exiting timing? Is it at the close or the next open or some other price? I will test both.
- What are commissions? I will use zero.
- What is the starting portfolio value? I will use $100,000.
- What about lot size? Do you round to the nearest share, nearest 10 or 100? I will use 10.
- Is the data adjusted for dividends? My data is adjusted and provided by Norgate Data.
The Results
AQT | AQT | PAL | PAL | ||
Parameter | Trade on Close | Trade on Open | Trade on Close | Trade on Open | Portfolio Visualizer |
CAR | 14.48% | 12.47% | 11.82% | 9.65% | 14.52% |
Max. DD | -19.45% | -21.02% | -19.08% | -19.70% | -20.45% |
My trade-on-close results match closely to what Portfolio Visualizer gives. Why Price Action Lab has a different value for CAR, I do not know. He is probably making a different assumption somewhere which does not mean his code is wrong. This is something people have a hard time understanding that the same rules can produce different results. Unless you get all of your assumptions the same, you sometimes won’t match. There may be a question I forgot to ask that we answered differently.
Or it could be because we are using different data sets. This is the most common reason.
<Added on 11/24/2015>
After several emails with Price Action Lab, we discovered why we were getting different results. It came down to a different interpretation of the rule ‘Score: 3-month ROC.’ I ranked and entered the top 2 ETFs even if the score was negative. While Price Action Lab, ranked and only entered the top 2 if they had a positive return. Both results are correct. It is matter how you want to interpret that rule. How would you read that rule?
< End addition>
Want to Play
Do you want to join the fun? Run the test and post your results in the comments. I am providing the trade list for both runs so you can compare your results.
Spreadsheet
Fill in the form below to get the trade lists and monthly returns.
Final Thoughts
Are my results correct? Maybe. I did this quickly to get the post done today before the holidays. There is a higher likely that I made a mistake or a bad assumption in the rules. It is easy to say someone’s results are wrong. What is hard is trying to replicate them yourself which is what you should always do.
Trust but verify all test results.
Backtesting platform used: AmiBroker. Data provider:Norgate Data (referral link)
Good Quant Trading,
Fill in for free spreadsheet: