Geov,
Thanks for weighing in. You make great points about the problems of look-ahead bias and survivorship bias. I agree this is something we should at least be aware of when looking at data.
Question for anyone who’s looked into this more deeply: Does Portfolio Visualizer introduce look-ahead bias? My understanding is that the method itself does not. That it is basically a walk-forward backtest. It uses a 3‑month sliding window walk-forward backtest that does not use any data after the sliding window to change the weightings of the assets. If I’m missing something here, I’d love to understand more.
What I Tested
I ran two strategies using this ETF universe:
TLT, XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV, XLY
I generally pick these asset to look at sector rotation strategies and because—during some market regimes at least--TLT is inversely correlated to equities. Also it stops me from overfitting by trying different ETFs until I get what I like. And it reduces look-ahead bias to some extent by preventing me from buying assets that I now know have done well in the present, but I would not have known to be the case when the walk-forward backtest was started.
What I’m exploring is a simple question:
Does trend (via recent relative return) improve performance when applied to these ETFs?
Strategy 1: Top 5 Based on 3-Month Relative Return
Each month, select the 5 ETFs with the highest trailing 3‑month return and weight them equally.
Versus:
Strategy 2: Equal Weight Across All 10
Rebalance monthly.
Here’s the result from Portfolio Visualizer:
(Equity curves available if people want to review them directly.)
Adding Volatility Awareness: Risk-Parity Weighting
If we then take the same “Top 5” strategy and weight those 5 ETFs using inverse volatility and correlation of the asset (risk parity equal contribution of risk style), we get improvement in drawdown and risk-adjusted returns (Strategy is the left column and equal weight is the right column):
Key Point
I don’t use either of these strategies myself and certainly this investigation can be expanded. People can draw their own conclusion about the results provided without my comments. But we are able to get some data-driven results about trend-following, volatility, and correlation , I think. Using Python or Portfolio Visualizer for now. What I have done here seems pretty rudimentary but it is real data with reduced look-ahead bias. There is, to be sure, some look-ahead bias in my choice of ETFs which I tried to address to some extent by my ETF selection.
Geov, you make a great point about the problems of look-ahead bias and survivorship bias. I would be interested in your deeper understanding of what strategies work well as you have been doing this for a long time with different strategies and different ETFs.
I would be interested in the direction P123 will be taking when it provides the risk control strategy it is working to provide because, as I say, this is pretty rudimentary even if it does address the question of how market timing can be studied objectively—addressing look-ahead bias by using a walk-forward backtest and sliding window. And how easy (or hard) that can be.