The first time I thought about creating an option model was after reading an article in 2020. It stated that the incredible strength we observed in growth stocks in the summer of 2020 was partially driven by Softbank founder Masayoshi Son, who bought $9 billion worth of tech company derivatives, mostly call options. In this article, which I can't find today, the author was explaining that these $9 billion in options had an effect on the market that was greatly amplified, thus exerting upward pressure on the entire stock market. This article does talk a bit about this event and its impact, even though it's not the one I read at the time.
When I saw that, I told myself that I should spend some time looking at finding quality data in that field and see how they could be used to isolate the pressure these options are exerting on the actual stock market prices. But having already a lot on my plate, it stayed in my "ideas to work on in the future" book.
Last summer, Knox Ridley from the IOFund showed me how the divergence between realized volatility and implied volatility (which is derived from the option market) is a great assessment tool that often predicts market downturns. I did work a bit on that topic, and the VIX analysis I made recently was one result of this. But this powerful idea of divergence rekindled in me the idea of looking at the problem of creating a tool that would indicate in which direction the option market is pushing the stock market.
How this model works:
(If you don't like math or actually don't care to know what the ingredients in the recipe are, you can skip this section and jump right to the next section about where this model fits in WU product.)
As you may have already noticed, the stock market behaves like an inertial system that has some damping and stiffness. Indeed, in an uptrend, once the stock market gains some velocity, it takes a lot of energy to stop it and reverse its direction, similar to a big car that would cruise at high speed. When the Index is in a strong bull market, any small red candle turns into a buy-the-dip event, and sometimes we reach a point where even bad news doesn’t affect the market. The opposite can be said when the market is falling. Also, when the market falls too much below certain key moving averages, we often see a kickback motion that turns the price toward this moving average as if there is a spring that was attached to it and that was overextended. Physical dynamics usually model this behavior with a second-order linear differential equation, which is:
To make the option model, we took the well-known dynamic equation and adapted it to the stock market with the trick that the only forces applied to the stock market come from several statistics in the option market. This gives us:
Where m, c, k are respectively the market inertia, its damping, and its stiffness around its 30-day EMA, namely:
and F is a function of certain internal statistics related to the market option that we will not present here to keep some secret ingredients of our recipe.
This differential equation is known to have three different solutions, which made finding the optimal m, c, k coefficients tricky. The equation is solved such that it will give a price estimate of SPY for the next day (p_spy(t+1)) if options were the only force pushing the stock market.
Where it fit in WU products
I started working on this options model out of personal curiosity, with no actual agenda or intention for WealthUmbrella. Right after I coded the solution to this equation, the next phase involved running an optimization algorithm to find the right m, c, k values for this model. After the optimizer converged towards a solution, I was immediately surprised at how similar the resulting curve was to the S&P500 one, but it was leading it in many instances in and out of a correction.
The other point that I like is that, unlike the actual S&P500 where the price is continuously rising despite the inevitable bumps on the road, this model is always oscillating between some minimal and maximum values. This can be useful for telling us where we are in a cycle.
For me as an investor, my primary need was to have a hedge signal that would help me protect my capital in a massive drop. While designing such a hedge algorithm, I came to one realization: it's impossible to hedge successfully against any small drop in the market and get a return that outperforms, shielding only our capital from the big drops. The way I had envisioned WU was that we would offer a hedge signal that just hedges the big drops for patient investors, but we would also have another offer that would be more for the active trader. But no matter what I tried, I never really outperformed the original hedge signal in trying to remove all bumps from the market. Ok, no... Actually, I did by something like a 5% extra return over a long period of time, but this almost negligible bonus was coming at the price of a very high volume of transactions and a much lower hit rate.
After developing a strategy around this new Option model, I am not sure it perfectly fits the role of being a proper signal to hedge all the bumps. That being said, I think this could be a wonderful tool that, if used in conjunction with other indicators, could greatly help make the right assessment that it's time to raise cash on some individual stock at the right moment. This would be particularly advantageous for low cap, high beta stocks that usually lead SPY in their movements. Indeed, the main hedge signal is primarily made to avoid massive drawdowns, but in between, there are some playable corrections that could be worth avoiding on some high beta stocks. For example, I was in Affirm last year (2023) and it had a pretty crazy run. I decided to raise cash on strength and sold it at around $52 on December 28th when the Option model was about to make a bearish cross. Although SPY made new highs later, Affirm (and other growth stocks) did not. More than 30 days later, it traded around $38.
So, in conclusion, this signal is not to replace the hedge signal, but rather to give a new tool that could help the more active investor, by giving some lead on the market, decide when to raise cash or buy a new position.
Strategy and results
I wanted to keep it simple for this strategy, and I thought that considering the lead it had on the market, a simple moving average crossing strategy could work relatively well. I used an Ehlers filter that is slightly better than an Exponential Moving Average (EMA) at filtering noise from the trend without inducing delay. However, the resulting configuration that came out from the optimization procedure is actually very close to an EMA5 and EMA13 strategy. I did add a tiny bit of a dead zone on each side of the slow-moving average in order to avoid bouncing in and out when the line flirts with the threshold. Finally, after realizing that most of the bad trades were coming from sell signals that happened when the option model was super low (shallow correction), I decided to add one condition that would prevent the strategy from triggering if the option model was less than 1.5 standard deviations from its trailing 60-day moving average. This boosted the hit rate by around 6%.
Speaking of the results, I was actually incredibly impressed and surprise by the performance of this simple strategy. That surprise came when I went into the optimization phase and found that this single metric could have a success rate of around 73% on almost every 2-year period since 2017 and always beat considerably the Buy and hold. I know that 73% doesn’t look amazing. A good grade at school is more in the 90% and above, but in the stock market, such a result (90%) is just impossible except if you are extremely restrictive and you are out of the market for a lot longer than the time you are in. In fact, it’s actually hard to obtain a strategy that scores over 55%. I know you are probably thinking that the Hedge strategy is actually very often in the market and has a success rate in the 80%, but this algorithm is thousands of lines of code that are the result of using several datasets and complex conditions. As a better comparison, applying the exact same moving average and using the same crossing point strategy on the same period but on the SPY signal instead of on the Option model gives a hit rate of only 52.08% with a return of about -30% of the buy and hold return. Also, having such a simple strategy doesn’t raise as much as for the Hedge signal the problem of overfitting and therefore allows us to use more recent data in the design. This last point is actually very important as I think the impact of the option market on the stock market has evolved considerably with the evolution of that market. Indeed, while our hit rate is pretty consistent after 2017, the hit rate from the GFC to 2017 is more around 69%. Here are the strategy statistics for the period from May 2017 to now.
In the indicator file, you will see a bullish and a bearish signal, respectively in green and red. These signals are the ones related to the statistic above. However, because the configuration that led to the highest return sometimes involves buying rapidly and therefore is subject to more whipsaws, I also added a blue signal that indicates a point of lower return but usually associated with more confidence that the correction is over. This could help if someone value safety more over return.
So in conclusion, the options model simulates what should be the price action in the S&P500 if the options market were the only force in play in the stock market. Naturally, option buyers and sellers don't always have it right, particularly when a sudden drop is driven by a black swan event and also they are not the only force at play. That being said, it is often correct, probably not because people in this market are omniscient, but because their positioning applies a certain pressure on the stock market that will inevitably, at some point, influence the price action in their direction.
The backtesting results are incredible, considering how simple the output of the model is (unlike the hedge signal), and I think this could turn out as a wonderful tool to help an investor decide if it's time to buy or take profit and also assess the risk in the market. Although some signals of this model will align with some of our hedge signals, I think it could be dangerous to hedge an entire portfolio based only on this signal, as sometimes a considerable down move in this signal only translates into a very small pullback. But I am sure that this signal, along with other signals such as our margin risk indicator, some internal components of the hedge signal, and the VIX and SKEW, could challenge the hedge signal and turn out being a powerful tool. One of my future works with it will be to see how it could help improve our hedge signal, but in the meantime, I hope it will help you make some great decisions that will turn out being very lucrative.
This first official release should soon (Adding access is a manual and painful process) be accessible in your invite-only indicator under the name: ☂️WU SP500 Option Model.
All of you should gain access to this new indicator within the next 24 hours. Please ensure you sign out and then sign back into TradingView to refresh your indicators.
If you're new and haven't yet provided us with your TradingView username, or if you're unsure about the details or purpose of it, please click here.
Please note that I will now delete the beta version that I had put in free access on Trading View.