添加 TIP 作为金丝雀过滤器?
作者提议在其 SPY 均线策略中加入 200 日 TIP 均线作为次要过滤器,回测显示年化收益率显著提升。
- 将 TIP 均线作为金丝雀过滤器显著提高了策略的年化复合增长率(例如自 2003 年以来从 18.91% 提升至 25.34%)。
- 与滞后的 SPY 均线相比,TIP 充当领先指标,有助于规避市场暴跌。
- 该策略在某些年份(如 2013 年)可能会产生虚假信号,导致表现落后于纯 SPY 均线策略。
自从两年前我开始使用200日SPY SMA策略以来,这是我第一次考虑做出重大调整。到目前为止,我一直采用一个相当通用的200日SPY SMA,杠杆约240%的权益仓位。我对这个策略非常满意。
但在阅读了这条帖子 低主动性LETFS冒险V2:年化21%收益,最大回撤27% : r/LETFs 以及这篇论文 双动量与金丝雀动量结合上升收益率/通胀:混合资产配置(HAA) by Wouter J. Keller, Jan Willem Keuning :: SSRN 后,我发现加入200日TIP SMA作为第二层过滤器可能会带来巨大差异。
归根结底,200日SPY SMA是一个滞后指标。而200日TIP SMA则像一只金丝雀。理论上,这应该让我同时获得两者的优点。
起初我持怀疑态度,但自2003年以来的表现令人印象深刻。在原有策略中加入TIP作为金丝雀信号后,我的年化收益率从18.91%提升至25.34%:
https://testfol.io/tactical?s=lNdtWOBhwyi
对比
https://testfol.io/tactical?s=i2WpU38hvwg
我原以为这是因为避开了2008年和2022年的暴跌。但事实并非如此——即使在2010到2021年间,我的年化收益率也从23.58%提升到了29.22%。
唯一表现明显落后的年份是2013年,当时发出错误信号,仅取得35.65%的回报,而非原本可能达到的82.80%。即便如此,这一数字仍优于SPY当年的表现,而所有其他数据都已包含这一较低回报的影响。
我尝试调整了SMA周期,发现当两个过滤器的周期在150到250之间时,结果依然出色。这显然不只是躲过了某些糟糕的日子。
大家对将TIP作为第二层过滤器的看法如何?我有没有遗漏什么关键点?从原理上看,这其实更保守,却带来了更好的结果。
参考我的策略如下:
开启状态:75% UPRO,10% RSSX,6% ZROZ,3% MATE/CTAP/RSIT各一份
关闭状态:RSSX、GLDM、ZROZ、VTIP、SGOV各15%,MATE/CTAP/RSIT/DBMF/HFMF各5%
SPY SMA 1%波动带,TIP SMA 0%波动带
每年一月再平衡
Honestly you've basically rediscovered why Keller put TIP as the single canary in HAA, so you're in good company... TIP price moves on real yields and inflation expectations, so it tends to turn before SPY does, which is exactly the leading vs lagging gap you're describing.
The thing I'd watch is grogi's overfitting point, it's a fair one. TIP only goes back to ~2003 and that whole window had falling real yields as a tailwind, so a single canary tested on that sample is going to flatter itself a bit. The real stress test is a rising real yield regime, and 2022 is about the only clean one we have. Sounds like it held up there, which is encouraging, but one regime isn't a lot to lean on.
What would make me trust it more: it still helps when you move the SMA length around (you said 150-250 all worked, that's a good sign it's not curve fit to one number), and the TIPSIM extension back through the 70s inflation doesn't blow up. My read is the logic is genuinely sound, I'd just not anchor on the 25% CAGR. That number is probably the first thing to shrink out of sample...
Seems solid to me but I might be biased. I agree with your analysis on 2013. The occasional false signal is the cost you pay - but as you point out, it still outperforms.
Only time will tell if it’s overfit but the underlying theory of the TIP canary is seemingly robust enough. It’s a case of whether you’d rather have it and not need it than need it and not have it.
Best of luck with your strategy 🤞
I really like it. Its probably personal preference but as a leading indicator I prefer the OECD Composite Leading Indicator - might be useful for you to read about if you're still shopping around for canary indicators though:
https://allocatesmartly.com/using-the-oecd-composite-leading-indicator-momentum-to-time-the-market/
But I ultimately I only want to use that for one strategy, and I'm probably leaning towards the TIP indicator as the best alternative for a second canary strategy. I really like that bonds in general are actually a very good indicator of future stock returns so even if you switch out TIPSIM for IEFSIM etc it still works just not quite as well. It feels like another strong indicator that the strategy isn't overfit. (I think it was also on the Allocate Smartly blog that I read about that if you were interested.)
Wow! I had no idea about that TIPSIM?FB=IEFSIM code. I ran a pared down version of my strategy to 1962 using that code, and I would have turned 10k into over 3 billion: https://testfol.io/tactical?s=e2bJce4arfH Too bad I wasn't born.
Thank you for the link, too. I think I prefer bonds, but I see the value of that idea. I like the way that you phrased it "bonds in general are actually a very good indicator of future stock returns".
Haha yes that's the feeling whenever looking at long backtests or past house prices!
I use BNDSIM instead, the for is much better.
Lots of published strategies use multiple signals, why is it not possible to use them together? Typically you say either: if one signals risk I go completely to risk off; or use a breadth measure where you take different levels of risk depending on how many are signalling risk.
Ha exactly, that's the part that makes me comfortable too. If it's overfit the CAGR mean reverts toward the plain SPY SMA number rather than blowing up, so the downside is "merely good" instead of great. Plenty of cushion to give back and still beat buy and hold.
$TIP canary is much more optimistic than sma filter. It will move to risk on much quicker and to risk off much later...
It produces better results because $TIP exist only since ~2000, and that has been generally positive run.
I don't think you will do worse than with SMA, but I would not count on getting impressive either. The TIP canary smells a lot like ocerfitting to me
I back tested this myself and went with an asymmetric TIP signal to increase the total amount of time in risk on vs risk off. I figured that \if\ it was overfit the opportunity cost would be a greater loss than a slightly too early or late 200 SMA trigger.
It comes down to preference but technically symmetric signals \could\ be more robust. It just depends on what you’re optimising for and whether you are comfortable with the outcome.
What would you think about integrating your idea with this guy's RVol method?
https://old.reddit.com/r/TQQQ/comments/1rpzweg/stop_blindly_holding_3x_the_rvol_shifter_for_the/
Would it improve your results even further if you added a basic RVol filter (even if yours was much more simple and didn't have multiple tiers like his does)?
Would love to hear your thoughts or see your results if you try to integrate the two!
https://preview.redd.it/0r3of9wqbf9h1.png?width=1730&format=png&auto=webp&s=3238d324f989573350def9043316115133997444
Adding this seemed to improve results
What? Plenty of strategies are premised on mixing multiple canaries at once.
It's the TIP ETF. I use Barchart. I make sure to have "Adjust Price History for Dividends" checked under "Data" under "Settings".
that makes more sense thank you.

r/letfs