The S3 "Super Simple Strategy"

Home Forums Logical Invest Forum The S3 "Super Simple Strategy"

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #70972
    Tom Gnade
    Participant

    I’ve decided I no longer want to use any leveraged ETFs in my investment strategies. The premise that they actually hedge market risk works, but only sometimes. Their inherent volatility can give you “shock and awe” moments – usually to the downside. ZIV was a trainwreck when the vol trade exploded, and hasn’t been much help since. I have done a lot of thinking about this, and here’s what I think will work best: a “super simple strategy”. It’s similar in premise to the BUG, in that the primary drivers are few, and we stick to the basics – no leveraged funds, SPY/QQQ/CWB as risk assets, GLD, TLT, SHY, and perhaps a few other symbols as “hedges”. The real trick here is that the strategy uses every single cash stop method available, separately, on each and every symbol and sub-strategy, to try to limit drawdowns, which I’ve found to be the real confidence killer.

    I begin by making a strategy for each of the foundational symbols that will be used as the primary drivers. These single-symbol strategies are only used to implement volatility limits and cash Sharpe limits, when they make a difference. For example:

    TLT 428.44% {CAGR:7.558, SR:0.586, V:12.896, DD:-26.59}
    TLT (with stops) 427.41% {CAGR:7.546, SR:0.617, V:12.232, DD:-20.26}

    Even a tiny “break” on the volatility does make a long-term difference. Sub-strategies are cheap, so let’s go with it. Every symbol we use for the S3 strategy will therefore be “stopped” using a combination of vol and Sharpe limits. So, where to go from here? One idea I’ve had for quite some time is that it might be great to pair bull and bear ETFs for the same symbol. I tested it dozens of ways, and it does work, but only for certain volatility profiles, and you have to use the bear symbols carefully. So, I use this approach for the Treasury and Gold hedges in a simple SRE rotation. To control utilization of the bear strategies, which often have terrible return curves, I increase their volatility multiplier, so the algorithm strongly prefers the bull side. By combining the bull and bear symbols for long-term treasuries (TLT, TBF), I obtain the following results over a 20-year lookback period:

    TLT/TBF 698.98% {CAGR:10.228, SR:0.873, V:11.714, DD:-19.32}

    Now we’re getting somewhere – this is a good result based upon simple rules. Remember, the goal here is to retain the shape of the treasury curve, so we still retain its “risk off” profile, but to improve upon it as a long-term holding in every possible way. I use the same approach for every symbol in the strategy, and the end result is quite surprising.

    In my quest to limit drawdowns, I’ve frequently observed that there are “magical sweet spots” in the optima that produce the best results, but that may be surrounded by poor results. Since we’re playing a statistical game with the future, I will steer clear of those “one off” results on the grid, often choosing lower optima that are surrounded by similar results. If I can find a range of lookback periods that all produce a similar range of results, then I conclude it is a statistically higher probability those lookback periods will be continue to function well in the future. Just a guiding principle. It would be nice to somehow code that as an option in QT, as well as optimizing on other criteria rather than Sharpe – for example the maximum drawdown, which is often much larger than the Sharpe ratio.

    Returning to the S3 strategy implementation, my next advancement was to think of ways I could develop a sensible set of “cash stops” that leverage the SR strategy. I’ve observed that combining several similar strategies in a simple SRE rotation can produce better results than any one of them alone. So, we begin with the “base” TLT-TBF rotation strategy, and then implement 2 variants that each use the “CASH” sub-strategy as the only other investment option. One of them is a “low cash” version, where it is limited to 30% allocation, the other is a “high cash” version, limited to 70% allocation. Here are the results:

    TLT/TBF low-cash 640.60% {CAGR:9.747, SR:0.905, V:10.774, DD:-17.62}
    TLT/TBF high-cash 562.66% {CAGR:9.037, SR:0.910, V:9.935, DD:-17.26}

    Notice the returns are lower, Sharpe ratios are higher, and the max draw-down in slightly lower than the base strategy without the cash stop rules. Combining the three together in a “Treasury Rotator” (SRE 1 rotation with its own volatility and cash Sharpe limits), the result is:

    TLT/TBF rotator 674.58% {CAGR:10.032, SR:0.916, V:10.952, DD:-20.00}

    It turns out the SRE strategy really only uses the basic TLT/TBF and TLT/TBF high-cash variants. Also, the results are good but not great compared to the simple TLT/TBF rotator, so you might think it’s not worth all the effort. However, other symbols respond better to this approach. Also, let’s compare the end result to a simple TLT holding, and to the built-in “Treasury Hedge” strategy in QT:

    TLT 428.44% {CAGR:7.558, SR:0.586, V:12.896, DD:-26.59}
    Treasury Hedge 420.39% {CAGR:7.456, SR:0.792, V:9.417, DD:-18.49}
    TLT/TBF rotator 674.58% {CAGR:10.032, SR:0.916, V:10.952, DD:-20.00}

    Since we’re using this strategy as a hedge, and we’re hoping the “rotations” we apply at higher levels of the S3 strategy eliminate some of the draw-down, I’m generally happy with this result. Here’s the results for Gold (GLD/DGZ):

    GLD 552.83% {CAGR:8.94, SR:0.509, V:17.568, DD:-45.56}
    GLD-USD (QT built-in Gold strategy) 595.31% {CAGR:9.345, SR:0.732, V:12.774, DD:-28.22}
    GLD/DGZ Rotator 988.69% {CAGR:12.158, SR:0.871, V:13.957, DD:-18.53}

    Not too shabby. Let’s see what happens when we simply combine the Treasury and Gold rotators into a simple SR2 strategy with minimum allocation 40%. Since these two strategies move in very different ways, the SR strategy can make quite effective use of the two by varying their allocations between 40-60%. Compare this to the QT built-in “Hedge” strategy, which uses a similar combination of Gold and Treasuries:

    QT Hedge 543.39% {CAGR:8.846, SR:0.771, V:11.481, DD:-24.04}
    S3 Hedge 897.16% {CAGR:11.614, SR:1.284, V:9.044, DD:-10.05}

    Wow, that’s a hell of a good result, isn’t it?

    Let’s see what happens when we do the same thing for QQQ, the Nasdaq-100 index fund from PowerShares. There is a Nasdaq bear ETF (PSQ), but I didn’t bother with it. In this case, all I do is take QQQ and implement the various cash stops to it directly. There is a base strategy for QQQ alone, and then one that uses a 30% cash stop, and a third that uses a 70% cash stop. Optimized over a 20-year timeframe, here are the results:

    QQQ 345.27% {CAGR:6.402, SR:0.232, V:27.548, DD:-82.97} Holy sh%t that’s a serious drawdown! If only we had simple cash stops in place…
    S3 QQQ with simple cash stops 819.14% {CAGR:11.107, SR:0.529, V:21.008, DD:-56.16}
    S3 QQQ Rotator with full cash stops 1447.55% {CAGR:14.320, SR:0.865, V:16.551, DD:-21.99}

    Wow! That’s something else, isn’t it? I happen to like the SPLV S&P 500 low-volatility symbol as well, so using the same approach with that symbol:

    S3 SPLV Rotator 2164.61% {CAGR:17.468, SR:0.889, V:19.644, DD:-29.09}

    Why not just flip-flop those 2 strategies against each other in a simple SRE?

    S3 QQQ-SPLV Rotator 3981.46% {CAGR:20.302, SR:1.151, V:17.634, DD:-18.63}

    Sweet result. I’ll cross my fingers and hope it comes true. Lol. Anyhow, back to reality. Let’s combine the S3 TLT/GLD and QQQ/SPLV strategies into a single S3 Risk strategy:

    S3 1475.39% {CAGR:14.522, SR:1.650, V:8.8, DD:-11.66}

    Comparing this result to the underlying symbols:
    TLT 428.44% {CAGR:7.558, SR:0.586, V:12.896, DD:-26.59}
    GLD 552.83% {CAGR:8.94, SR:0.509, V:17.568, DD:-45.56}
    QQQ 345.27% {CAGR:6.402, SR:0.232, V:27.548, DD:-82.97}
    SHY 140.33% {CAGR:1.998, SR:1.425, V:1.403, DD:-2.23}

    You would never think you could do that with those ingredients, would you? Let’s see what a simple SR3 rotation with a 60% maximum allocation would yield, without all the fuss of the cash stops and limits and such:

    TLT/GLD/QQQ/SHY (SR3, 60% max, SHY 20% max, 102d LB) 699.68% {CAGR:10.343, SR:1.188, V:8.703, DD:-10.92}

    Eliminating SHY:

    TLT/GLD/QQQ (SR3, 60% max, 98d LB, -150%MR, 25d MRP) 945.16% {CAGR:11.906, SR:1.435, V:8.298, DD:-12.41}

    And the QT Permanent Portfolio (TLT, SPY, GLD) for reference:

    QT Permanent Portfolio 748.29% {CAGR:10.605, SR:1.381, V:7.679, DD:-13.37}

    Overall, very similar results, though the QQQ variant is an improvement. I would suggest that change to the Permanent Portfolio in QT. Not too bad overall, considering we’re only using 3 symbols, with no cash stops at all. The “dumb” S3 plows right through the 2000 and 2009 meltdowns with aplomb. Wouldn’t you have killed for that back then?

    Still, implementing some cash stop-out rules and using a few extra rotation strategies, here is the result:

    S3 with stops: 1475.39% {CAGR:14.522, SR:1.650, V:8.8, DD:-11.66}
    S3 without stops: 945.16% {CAGR:11.906, SR:1.435, V:8.298, DD:-12.41}

    It’s been a worthy exercise, I’d say. A definitive improvement to the Permanent Portfolio that nearly keeps parity with a simple QQQ investment since 2009 (albeit trading costs would drag performance), but with less than half the volatility and a third the maximum draw-down. Here are the 10-year results compared to QQQ:

    S3 482.23% {CAGR:17.060, SR:2.103, V:8.112, DD:-7.33}
    QQQ 502.18% {CAGR:17.536, SR1.010, V:17.355, DD:-22.79}

    Of course, we know it’s not too easy to keep up with QQQ during it’s best rip in decades while maintaining a hedged portfolio with full cash stops. And, those stops are going to come in extremely handy the next time the market decides to go into nuclear meltdown mode, which will come sooner or later.

    Interestingly, we can improve upon these results still. If I add a similar strategy based upon the impressive CWB fund, and then also include one based upon the Global Markets Rotation Strategy (after giving it the old “S3” treatment) to improve upon the GMRS Hedged strategy results, an S3 Risk Rotator returns the following:

    S3 Risk Rotator 1422.32% {CAGR:14.569, SR:1.871, V:7.785, DD:-7.52}

    It’s an ok improvement I guess, it does cut the vol and draw-down a bit by incorporating CWB and GMRS. How about the real deal though? Starting in October, I’ll be using the S3 strategy, but I will combine it with the granddaddy of them all, the Nasdaq 100 top 4 “N4” strategy. The issue with N4 is of course the volatility. Also, since it picks 4 stocks, it poses a very focal risk. Therefore, I never allocate more than 20% of my total portfolio to N4, since any single stock should never really comprise more than 5% of your total holdings. Also, I will examine the individual symbols and often choose ones further down on the list if their returns look a bit more stable. I also like to avoid holding stocks if they are going to announce earnings during that monthly investment period. Earnings can often deliver a wicked down-side surprise, and I just don’t need any of that nonsense. So, what does this thing look like in an S3-N4 combination? We’ll call this the “real” S3 strategy, so here it is:

    S3 3244.38% {CAGR:21.315, SR:2.253, V:9.462, DD:-8.74}

    Hell yah, that’s what I’m talking about. Now, my personal implementation of this also includes one more little secret surprise that I don’t feel like sharing right now, but if you follow this same recipe, you will arrive at similar results. Happy QT’ing y’all!

    :)

    Tom

    #70979
    Mark Vincent
    Participant

    Thank you for sharing Tom,

    Is there anyway you can post the .ini files for these strategies?

    For example here is the US Market Strategy with UIS QQQ (UIS QQQ is the same as UIS SPY using QQQ)

    [StrategyTitle]
    0 UIS QQQ US Market Strategy TLT GLD
    [StockItems]
    #UIS QQQ-hedged=#UIS QQQ-hedged,2,1,1,0.00
    DIA=,2,1,1,0.00,,0,0
    GLD=Gold,2,1,1
    QQQ=PowerShares Nasdaq-100 Index,2,1,1
    SPLV=SP500lowvola,2,1,1,0.00,,0,0
    SPY=SPDR S&P 500 Index,2,1,1
    TLT=Barclays long term treasury (10 years),2,2,1
    [StockSets]
    StockSet18=0 UIS QQQ US Market Strategy TLT GLD,1,3,StockSetStrategy18,2019-08-12,2019-08-18,#UIS QQQ-hedged@1,DIA@1,GLD@1,QQQ@1,SPLV@1,SPY@1,TLT@1
    [StockSetItems]
    StockSet18Item1=1111111,StockSet18Item2,0,00000004,2,
    StockSet18Item2=1111111,StockSet18Item3,1,00000008,2,
    StockSet18Item3=0000010,StockSet18Item4,2,00000010,3
    StockSet18Item4=-,-,2,00001000,3,
    [StockSetStrategies]
    StockSetStrategy18=2,2,,1111111,10,,1
    [StockSetStrategyParameters]
    StockSetStrategy18=-3,3,92,3,-6,7,-2,7,-8,7,-1,7,0.00,0,-200.00,1,30,1,0.00,0,0.00,0,0.00,1,0,0,0,0,0,0,0,0,0.00,4,0.00,4,0,0,0,4,0,4,0.00,0,0.00,0,0.00,0

    #71140
    Deshan Woods
    Participant

    Could you post what this would look like for October so we can see what it actually entails?

    The Leverage strategy hasn’t had a single losing month since October last year.

    #71221
    Tom Gnade
    Participant

    I’ll try to post some more info soon, not trying to ignore your comments.

    #71965
    mikernorton
    Participant

    Tom, I really like your thought process here with the S3, I’m also trying to implement a simple strategy that avoids leveraged ETFs. However, I was curious why you would include inverse ETFs like TBF, as they tend to present similar risks as leveraged ETFs in terms of potential liquidity events and operational risk with the process of using derivatives to try to match daily moves. What happens to the numbers if you remove TBF?

    Mike

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.