top of page

The WU Hedge Is Evolving: Why We Decided to Rework It

Hi folks, In my traditional year-end post eight months ago, I mentioned that one of our goals for this year was to improve our hedge algorithm. That work is now well underway. We’ve been working on it for the past few weeks and are finally ready to release the first part of what we’ve done. But before diving into the more technical details and the changes we are making, I thought it would be useful to first revisit why we decided to rework what is, after all, one of the core pieces of WealthUmbrella.


To Change It or Not to Change It: That Is the Question

We decided to modernize the hedge algorithm not because we lost faith in it or discovered that it was flawed. Quite the opposite. Since we started using it in late 2021, and since it became public in early 2022—helping the IOFund navigate the bear market that lasted essentially the whole year—the algorithm has worked pretty much in line with what we expected. It gave us a success rate almost perfectly in line with what we had in backtesting from 2006 to 2019, which means plenty of hits and a tiny bit of misses. The return, which for a given success rate, is governed mostly by how early we exit and how quickly we re-enter, was a bit below the backtested period, something we said upfront we should expect, as no algorithm can work as well in the future as it did in the past, no matter what methodology you use. This was also to be expected for another reason: as we’ve explained before, during a strong bull market the strategy will usually slightly underperform the market because there is no big drawdown to protect against and markets often rebound incredibly fast. We can observe exactly that in some three-year periods of our backtest, and this is pretty much the type of market we’ve been in for the last three years.


So overall, performance was about what we expected. I would even add that the performance in two specific areas of the algorithm actually made us hesitate to rework it. Back in 2021, no matter how positive my assessment was of the work Jennifer and I had done, the reality was that the strategy had never been tested against live market movements. As a result, there was always a limit to how much confidence I could have in it at first. Five years later, that has changed considerably. The hedge has now lived through a full bear market, followed by a very particular bull market characterized by an extreme concentration in a handful of big names. It has also faced pullbacks of very different magnitudes and durations: some relatively mild but prolonged, like the three-month pullback from August to November 2023, and others much sharper, like the one we experienced in March-April 2025. Its performance across all these different market environments, although not perfect—as we will discuss later—has considerably reinforced our confidence in two specific aspects of the strategy.


The first one is that the hedge will never miss a major correction. This is something we’ve said for a while: strong corrections like the GFC, COVID, or fall 2018 are actually the easiest ones to flag, and watching the strategy perform live over the past few years has only reinforced that conviction. Although we may not always flag these corrections right at the top, we are confident that we will always catch them. The reason is relatively simple: major corrections rapidly create extreme market conditions that tend to trigger several of our signals at once. This is exactly what we saw in 2022, but also during the tariff correction, when the algo triggered three times around the end of February 2025. We only sent an alert on the first one because that was sufficient to flip the strategy, but two other internal signals triggered in the following days. This is, by the way, one change we will implement in the new version: in the future, you will be able to see all the internal modalities that trigger, even if the overall algorithm has already flipped.


The second point where time has reinforced our confidence is the unhedge signal. While the hedge signal is not perfect and can sometimes trigger late during a smaller correction, the unhedge signal has been flawless so far. In the current version, we have not had an unhedge signal that caused us to re-enter the market on a B-bounce before another leg down. Some of these re-entries came a bit late, at a point where it was already becoming clear that we were in a renewed uptrend, but there were also a few occasions where the algorithm flagged a re-entry while the news narrative was still very dark and the majority seemed convinced that markets were about to go lower, only for the market to start ripping higher. I particularly remember the signals we had in May 2023 and again in early May 2024, while I was about to jump on a plane. On both occasions, I remember our re-entry being in a very uncomfortable zone. The narrative was still pointing toward more downside, but both signals ended up turning positive almost immediately.


These two strengths of the algorithm are actually part of what made us hesitate to rework it. We think time has given us strong validation of both, and this is also what prompted another decision: although we will soon unveil our new algorithm, we will keep the current version alive—and accessible to our members—in parallel. This will give us time to build confidence in the new version, particularly when it comes to preserving the strengths of the old one.


But why change it?

Everything I just said explains why we didn’t want to rework the algo. So why did we ultimately decide that we needed to update it? Our first motivation is simply the passage of time. It has now been more than five years since we started working on this algorithm (initial work started in Spring 2021). Back then, we used the 2006–2019 period to tune it. Market are not static, and it is reasonable to think it has changed at least a little since 2021. That being said, adapting to those changes was not really the main motivation. The much bigger opportunity is that we now have four to five additional years of data available to tune the algorithm, and that is an incredible addition in proportion of what was used.


Most of the modalities in the hedge strategy are built on alternative data related to the S&P 500 or its associated options market. Much of this data only goes back to around 2007, as you can see here with the Option Impulse signal.

Some datasets even started as recently as 2018, so adding another five years is, proportionally, not negligible at all and gives us a much more accurate view to tune parameters. Moreover, some of these datasets have now been recomputed retrospectively by CBOE and extended further into the past. One options-related dataset we used, for example, only went back to 2018 when we originally designed the algo, while its history now extends to 2009. Even our market-breadth-related indicator, which originally started just before the GFC, is now available back to 2001.

That extra period, combined with the five years that have passed, represents a non-negligible amount of new data to tune on.


There is also another important reason. Since we did the original work on the hedge, we’ve discovered several very strong new datasets that either didn’t exist in 2021 or that we simply weren’t aware of at the time. The three Downtrend Exhaustion signals that are part of WU Advance are good examples. The insights provided by these datasets, combined with the experience we’ve acquired processing financial data over the last five years, led to three signals that I consider some of our greatest contributions so far, and they have performed extremely well. We think we can now bring similar improvements to the hedge algorithm.


The last major reason we decided to update the strategy is our access to AI. In 2021, everything we did was through manual coding. If you’ve ever played with TuneMap, it gives you some insight into how we tuned several of our parameters: essentially having a computer try every possible threshold value and then looking at the resulting expected return and hit rate. With one variable—or even three, like in TuneMap—that is relatively simple, but when you start dealing with more than ten variables, optimization becomes a much more complex task. We had computers running through the night without necessarily having the conviction that the parameters we obtained represented anything close to a global optimum.


I have been tracking AI progress in coding and data analysis since ChatGPT-3. With basically every major new model, I would try the same simple experiment: feed it our market-breadth-related indicator along with SPY history and ask the AI to define a simple two-threshold strategy designed to protect against drawdowns. Every model failed and greatly underperformed our solution, until Opus 4.8, which arrived at a decent solution. But it was really Fable 5 that got Zack and me falling off our chairs. Not only did it find a solution that was slightly better than what we had, but it also clearly understood issues related to confidence and the number of flagged events, and found a solution that took those things into consideration. Moreover, some of the ways it chose to process the data—using Z-scores, for example—really impressed us as it is the kind of things we do ourself, and at that point we became convinced that AI could be an incredibly powerful tool to analyze our previous code and suggest improvements.


And indeed, when looking at our old code, Fable 5 found some bugs, but it also found parameters that were essentially useless because the conditions required for them to trigger could never occur. We’ll give you some real examples in the upcoming posts about the changes we made. But so far, I can already confirm that despite being an expensive model to run, it has been a wonderful ally in helping us improve our tools. At the same time, having such a powerful tool dig deeply into our previous work has also been reassuring, as it confirmed that what we built years ago was, overall, quite solid.

 

Where do we start?

So now that you probably understand better why we wanted to rework our hedge algorithm, the next question is: where do we start? We need to talk about a starting point because modernizing the hedge algo represents a tremendous amount of work. This is not something that can be done in a single week. We estimate that the complete project will take around four to five months, and fortunately, we are already about a month into that work. Instead of disappearing for five months and then unveiling everything in a single release, we decided to do things differently. We will release each section as we update it, in a logical order, and explain what changed and why. This should also give you some insight into the work happening behind the scenes.


As some of you may remember from things you’ve heard me explain in webinars, or read on our site or in the eBook, our algorithm basically has two modes of operation: a Bear Mode and a Bull Mode.

The reason for these two modes is a direct result of some of the earliest testing we did. No matter how we tried, when it comes to alternative data, any strategy you tune to perfection in a bull market will fail in a bear market—and vice versa. Our interpretation is that whatever represents an interesting tipping point in a market with a reasonable amount of fear cannot be interpreted the same way in a fear-governed bear market. Even changing thresholds for these alternative datasets during a bear market couldn’t produce a good, reliable strategy. In fact, in that environment, most alternative data becomes far less relevant and the market becomes mostly a story of volatility, volume, and momentum. This is exactly how our Bear Market Mode works.


Out of these two modes, we decided to start by reworking the Bear Mode. That may look like a very odd—and potentially wrong—choice considering that we are currently in a strong bull market. Tuning the Bull Mode first could obviously have much more benefit right now, particularly as the market looks overstretched by several metrics. We agree 100% with that logic, and that is exactly where we would have started if we had the choice. The problem is that when we backtest the Bull Mode, we need to exclude the periods during which we are in Bear Mode. If we don’t, then—as I explained above—because strategies based on alternative data tend to work very poorly during bear markets, including those periods distorts the optimization. The algorithm starts converging toward something that works okay in a bull market and okay in a bear market. That is not what we want. In Bull Mode, we want something that works great in a bull market. We don’t care how it performs in a bear market because another part of the algorithm is responsible for that environment. So to properly implement the Bull Mode in our backtesting framework, we first need to know the exact periods during which the Bear signal would have switched the strategy.


The good news is that this part is now already done. Bear Mode was already one of the most robust parts of the strategy because it is mostly related to price action. There is also another major advantage: unlike alternative datasets, where our history generally only goes back to the beginning of the 2000s, SPX price-action data can take us back to around 1946. The S&P 500 itself was created in 1957, but in many datasets, S&P 90 data—its predecessor—is stitched directly into the historical series. That long history helps us make sure we are not simply overfitting to current market conditions.


And I stumbled onto a pretty wild example of this just this week. While driving between Quebec City and Montreal, I was listening to an audiobook discussing the stock market leading up to the 1929 crash—how the market behaved and what the Fed’s stance was at the time. Most of us know about the great panic of October 1929, but the year leading up to it also saw some pretty wild swings. Considering that we may once again be living through a bubble, I thought there could be some value in better understanding how markets behaved during that period. So, when I got home, I spent a few minutes looking at the Dow Jones chart from that time—the DJI was THE index back then. Anyway, after loading the chart, I realized that our Phase Angle Mode—in a QQQ volatility configuration—and our Bear signal would actually have performed remarkably well in 1929, as you can see here:



This is obviously a period we never tuned them on, but it nicely illustrates what I was explaining above: during these types of corrections, the market becomes a story of volatility, volume, and momentum, and these behaviors are remarkably repeatable across time. You can see that our Phase Angle signal, which plays a role in capturing momentum, would have prevented us from re-entering on the volatile bounces but would have eventually given us a green light for the real, sustainable six-month rally (before the multi year depression). Our Bear signal also flagged the strong 50% bounce from the low. And that is why I have a lot of confidence in this part of the strategy. The 1929 example above was using our old Bear and Phase Angle signals. There wasn’t an incredible amount to update there, but we did find some non-negligible improvements that could be made to this part of the strategy, as you will see in Zack’s post.


How We’ll Roll Out the Hedge Updates

I posted this myself today because I wanted to follow up on what I announced in January regarding the work we planned to do. But the more specific posts about the changes we are making will be written by Zack, as he is the one working full-time on this project. I am still pretty overwhelmed by my new position as CTO-AI at Robotiq, which is currently going through very strong growth fueled by the Physical AI trend. That being said, having Zack work on the algo is actually a very good thing. The original algorithm was built by Jennifer Kwiatkowski—who, BTW, is now working with me again (and you can hear her talking AI in that recent podcast!)—and me. Having Zack go elbow-deep into code he didn’t write is great for his understanding of the strategy, but it is also an opportunity for someone new to challenge our original approach.


I remain involved for a few hours here and there every week, both to answer his questions about what he is discovering and to challenge the results he gets. And be sure that none of what he is doing goes unchallenged. Instead of getting a green light after each of our meetings, he usually ends up leaving with additional tests to perform. I think that synergy—him challenging our original hypotheses, and then me challenging the results he gets—will generate an outstanding outcome and translate into a lot more robustness and, hopefully, performance for the algorithm.


Tomorrow, Zack will release the first part of our updated hedge strategy: the Bear Signal. In his post, he will walk you through the changes we ended up making, why we made them, and what we learned along the way. Although he will make an effort to summarize the key results and changes in each post, expect these upcoming posts to be quite technical. The nature of the work itself is technical, and it is very difficult to simplify everything without losing some of the substance. So if you’re not particularly interested in the technical side, feel free to read the summary and skip the rest.


We decided to publish these details because we know we have members who love algorithms and statistics, and who carefully observe—and sometimes challenge—our methodology. We welcome that. We also think there is probably a lot to learn from some of the decisions we made along the way—not because we are so clever, but simply because these decisions are often the result of hours of analysis, testing, discussion, and confrontation between us! We also want to be fully transparent about the work we are doing and give you enough information to build confidence that we take this extremely seriously and apply good scientific standards to what we do. Besides years of live history for a strategy—which we obviously won’t have on day one with this new algorithm—we think this kind of transparency is one of the best ways to build confidence in the data and signals coming out of an algorithms.


I hope some of you will enjoy these posts, and for those who don’t, I guess you’ll just appreciate the results we get at the end.

Comments


Transparent BLANC.png

WealthUmbrella, backed by the expertise of real scientists, harnesses advanced machine learning to provide access to dedicated and rigorously tested indicators. Our mission is to empower retail investors by facilitating informed decision-making through a deeper understanding and greater accessibility to these powerful tools.

This content is for informational and educational purposes only and does not constitute financial, investment, or legal advice. We are not licensed or registered as financial advisors with any regulatory authority, including the AMF (Autorité des marchés financiers). Any reference to past performance is historical and not a reliable indicator of future results. All investment decisions involve risk, and you should consult a qualified professional before acting on any information presented.

Contact us
info@thewealthumbrella.com

Save and secure check out

stripe2_edited.png

©2025 The WealthUmbrella.  All rights reserved.

bottom of page