I had also played around with the leverage while creating this and was pleasantly surprised. I only had from 2005-fwd on PV, but QLD was in kind of a 'sweet spot' for this period (I'm guessing 2002 would not have been as kind ;) LINK: https://tinyurl.com/7h3syxmr
Thanks to the author of the paper and Carlos for bringing it up for the analysis. It's an interesting take on a topic that seemingly has already been studied from all angles, and yet here comes something new.
Carlos, did you use NorgateData for the test? I attempted to reproduce the results using the original tickers mentioned (TLT, GLD, DBC, UUP). The latest ETF in the universe was UUP, with a first trading day of 2007-02-20. Adding one year's worth of data for the longest momentum lookback makes the start of the backtest March 2008. The results were less good: CAGR 8% and Max Drawdown of 30% (2009-07-08).
I use an event-driven backtesting framework which tries to mimic trading as it is experienced in real life. The data is adjusted for splits, and the dividends are added to the portfolio for the corresponding dates/positions.
What stands out with this strategy is the consistency of yearly returns from 2019 onward, in contrast to other tactical allocation models.
Also, a question to the author, why such a weighting scheme (40/30/20/10%)? I tried with equal weights, it doesn't seem to make a meaningful difference, neither in terms of CAGR, nor in drawdown.
Thanks! You have to get a bit creative with the data. For UUP pre-inception, you can splice in &DX daily returns (Norgate has it since 1985). For TLT, you can use VUSTX (Yahoo has daily since 1986). For DBC, you can replicate it pre-launch with a weighted mix of [CL, HO, NG, GC, SI, HG, ZC, ZS, ZW] until the curve matches post-inception DBC. And for T-bills, DTB3 from FRED works well.
yeah, using leverage was a straightforward improvement... btw, simulating these leveraged ETFs before inception is simple: just take the daily returns of SPY (or any other base asset), multiply by the leverage you want to get its leveraged daily returns, then reconstruct the equity line (+1 then cumprod)
Love your work, could you please share how you are backtesting these portfolio strategies? Is there a python library available that you use or did you build from scratch?
Using straightforward ideas like this as sleeves in a broader portfolio makes a lot of sense. It's good to check the correlation for the models, and to diversify in the approaches, too. (Momentum, factor, geographic, etc.)
I really like the four factor macro risk approach, and the simple monthly decision model.
I had also played around with the leverage while creating this and was pleasantly surprised. I only had from 2005-fwd on PV, but QLD was in kind of a 'sweet spot' for this period (I'm guessing 2002 would not have been as kind ;) LINK: https://tinyurl.com/7h3syxmr
Thanks to the author of the paper and Carlos for bringing it up for the analysis. It's an interesting take on a topic that seemingly has already been studied from all angles, and yet here comes something new.
Carlos, did you use NorgateData for the test? I attempted to reproduce the results using the original tickers mentioned (TLT, GLD, DBC, UUP). The latest ETF in the universe was UUP, with a first trading day of 2007-02-20. Adding one year's worth of data for the longest momentum lookback makes the start of the backtest March 2008. The results were less good: CAGR 8% and Max Drawdown of 30% (2009-07-08).
I use an event-driven backtesting framework which tries to mimic trading as it is experienced in real life. The data is adjusted for splits, and the dividends are added to the portfolio for the corresponding dates/positions.
What stands out with this strategy is the consistency of yearly returns from 2019 onward, in contrast to other tactical allocation models.
Also, a question to the author, why such a weighting scheme (40/30/20/10%)? I tried with equal weights, it doesn't seem to make a meaningful difference, neither in terms of CAGR, nor in drawdown.
Thanks! You have to get a bit creative with the data. For UUP pre-inception, you can splice in &DX daily returns (Norgate has it since 1985). For TLT, you can use VUSTX (Yahoo has daily since 1986). For DBC, you can replicate it pre-launch with a weighted mix of [CL, HO, NG, GC, SI, HG, ZC, ZS, ZW] until the curve matches post-inception DBC. And for T-bills, DTB3 from FRED works well.
yeah, using leverage was a straightforward improvement... btw, simulating these leveraged ETFs before inception is simple: just take the daily returns of SPY (or any other base asset), multiply by the leverage you want to get its leveraged daily returns, then reconstruct the equity line (+1 then cumprod)
Love your work, could you please share how you are backtesting these portfolio strategies? Is there a python library available that you use or did you build from scratch?
Just sent you a direct message, thanks!!
Wow, great analysis! Thanks for engaging with the paper and the suggestions for improvement (I am the author).
Thanks, Tom! Great job! I just tagged you in the article! If you ever want to develop something together, just let me know. Cheers!
Always great ideas :)
Crushed it! Great job
Using straightforward ideas like this as sleeves in a broader portfolio makes a lot of sense. It's good to check the correlation for the models, and to diversify in the approaches, too. (Momentum, factor, geographic, etc.)
I really like the four factor macro risk approach, and the simple monthly decision model.
I made this in thinkscript to track real time (my platform).
Anyone want to eval code / improve. I used DTB3:FRED for 90 day T-BILL.
https://tos.mx/!UKGGoXwN