Automated Trading Strategy #00: The Reverse Viking
Have we found the holy grail? Spoiler Alert: No, but I had to share this with you.
Important: There is no guarantee that these strategies will have the same performance in the future. I use backtests to compare historical strategy performance. Backtests are based on historical data, not real-time data so the results shared are hypothetical, not real. There are no guarantees that this performance will continue in the future. Trading futures is extremely risky. If you trade futures live, be prepared to lose your entire account. I recommend using these strategies in simulated trading until you/we find the holy grail of trade strategy.
We haven’t found the holy grail yet, but we get closer with every strategy. Click here for the most recent performance chart. The Q2 Update will be published shortly.
As a quick reminder, our goal is to find the holy grail of automated trade strategy. This summer, in addition to looking at different ways of using AI to improve the hunt, we’re also looking at the use of correlations and the use of ‘structure’ to improve performance; in particular, high win rate (HWR) strategies. It’s one thing to find an edge, but what else can you do to refine and improve that edge? That’s what I mean by ‘structure’; I’m referring to a set of features that can help to artificially engineer better outcomes regardless of edge.
I received an interesting email the other day from a trader friend (Thank you Marla) that thinks high win rate (HWR) strategies are fundamentally flawed. I have to admit, there is an uneasiness that comes along with trading a strategy that has great odds of winning, but low odds of winning much.
The HWR strategy my friend is referring to is Strategy 68, the Martingale of trade strategy (high risk/low reward). The Martingale is a gambling system used by players of roulette. While the roulette wheel may not have a memory, the market does and you’ll start to see price trends if you watch the market long enough. At some point the market becomes more familiar—like a great aunt or uncle that tells the same story over and over again.
This is what traders are referring to when they announce “price levels”. They are referring to familiar or “sticky” prices — these prices create friction because traders have studied the market and know that these are good areas to “hunt” for more opportunity. Some traders (not including myself) are better at this than others, but I can give you an example. I used to trade crude oil. My favorite trade was on the 62 handle. Any price level that ended with a 62 was sticky: 60.62, 61.62, 62.62 (especially 62.62), 63.62. As long as it ended in 62, the market would pause and either reverse or pullback and then continue later. You’ll find the same memory around open/high/low/close (OHLC) numbers. I’ll discuss this more in an upcoming post about price patterns.
I like to study how successful gamblers make sense of the world because unlike trading, where there’s a clear memory to piggyback on; they deal in games of chance or luck. For them, it’s a game of odds, not edge. The house has the edge and they know it. In their universe the player is the hunted, and the house is on the hunt. It really makes you appreciate the market even more.
Why High Win Rate Strategies?
About a year and half ago, we compared several portfolio theories: portfolios with strategies with a high net profit, a portfolio with strategies with low drawdowns, a portfolio with strategies that have the highest profit factor and a portfolio with strategies with a high win rate. The portfolio with the lowest drawdowns performed the worst, and the portfolio with the highest win rate did the best. We ran a high win rate portfolio in Q4 of 2022 and Q1 of 2023 and it did well, however, lately it’s started to deteriorate. The source of the issue can be attributed to Strategy 7, but it still makes you wonder about the merits of the theory.
In addition to deteriorating stats for the high win rate portfolio, I am also questioning the rationale. We know that the biggest issue with backtest accuracy is NOT slippage, but missed trades altogether. It took a great deal of investigation to figure this out and if I trace back, it’s the only thing that I can point to with certainty in support of the theory. This assertion led to a series of assumptions, the biggest one being that high win rate strategies do so well from a backtest perspective because even if the live test skips a trade, it won’t impact net profit by much. On the other hand, if you miss one trade of a low win rate strategy, it impacts your net income greatly. The obvious conclusion: we need to focus on HWR strategies; in particular HWR strategies with a low maximum MAE.
Getting back to what I was saying earlier, my friend is arguing that what this conclusion does not take into consideration is that while a missed trade won’t impact net income for HWR strategies as much as it will other strategies, a bad trade can. This is because HWR strategies that are “engineered” do so with the use of, and at the expense of, a low risk/reward ratio. Again, this kind of structure would be amazing for a gambler, but as a trader, we don’t have to settle with this.
So what’s involved in engineering a strategy that offers a high reward under low risk? Sometimes the best way to engineer the opposite of what you have is to reverse it.
The Reserve Viking
I like to read good books at least three times, sometimes in different languages. It’s the same thing with TV shows—I’m on my 11th watch of Star Trek’s Deep Space 9— but my favorite show of 2023 is Succession. I’m still going through a bit of a show hole. By far my favorite term from the show is “Reverse Viking”.
The genius writers of the show used the term to refer to a move by the scion of the family to buy the company that was trying to buy his family’s company. Instead of being hunted, he tries to become the hunt-er. With one false valuation on the part of the acquirer, the target now has an opening to reach in and acquire the acquirer. Likewise, perhaps we can change the hunt from one in search of a high risk/low reward ratio to one in search a low risk/high reward ratio by reversing the structure.
The beauty of trading over gambling or even corporate games is that we don’t need luck. The market is abundant and time is on our side, especially with the use of automated trading alerts and strategies. We can engineer our own table for the market to play at—and the market is a great customer. I mean who needs a Martingale when you can engineer a Reverse Viking?
For Strategy 00 (The Reverse Viking), we’re going to reverse the Martingale structure in search of two things:
a low risk/high reward ratio (at least 20 to 1)
a percentage of profitable trades greater than 2x the inverse of the ratio (to account for missed trades).
The backtested performance of Strategy 00 is below. It has a risk / reward ratio of 26 to 1, and it’s profitable 25% of the time:
This strategy uses a risk management system to increase the number of contracts traded based on net income. At any point in time it trades from 1 to 5 NQ contracts depending on cumulative net income.
Based on a 1-yr backtest, this strategy made $568K. The average winning trade is $1,276 and the average losing trade is $49. It has a profit factor of 9 (meaning that it made 9x more in profit than it lost) and made ~2K trades over the year, which averages out to approximately 8 trades per day. Most importantly, it has a max drawdown of only $1,200.
This is what the strategy looks like on a cumulative net income basis over the period 6/24/2022 to 6/23/2023:
This can’t be real. Spoiler Alert: It isn’t. That is, it can’t be done…yet.
Still, it’s worth noting that two years ago I would have said that the strategy above is the holy grail.
All attributes of our criteria have been met in one singular strategy and in one time period:
Profit factor greater than 3 (check)
Annual drawdown less than 3% (check)
Annual return on max drawdown greater than 500% (check)
Maximum daily loss is -$1,000 (check, the largest daily loss is -$350)
Avg Daily profit greater than $1,000 (check)
Less than 5,000 trades annually (check)
More than 253 trades annually (check)
…so maybe it’s worth seeing if this strategy could work?
We’ve been impaled by a unicorn many times before so I know better than to get too happy. Still, this strategy has a minute based data series (not range or some other difficult bar calculation that makes simulations revolt) and a risk reward ratio that more than makes up for the probability of missing a trade.
I know I’m going to have a problem with this strategy when trading it live, but I also know that we’ve come a long way. I know that even flawed backtests have a story to tell and this one is showing us that there might be an entire universe of “structured'‘ strategies at our disposal if we figure out a way to improve latency. And, some of you know a lot more about how to make strategies ‘work’ than I do so I’m going to tell you how to recreate this strategy for yourself. I’ll also give you the download instructions for NT8 (C#) at the end of the post as well as screenshots of the 18+ tabs that went into creating this strategy in the NT8 strategy builder. Perhaps one of you is Neo.
So let’s get into how to recreate Strategy 00: The Reverse Viking.