Automated Trading Strategy #51
Strategy 51 has a total portfolio net profit of $151K with an average profit factor of 3.55.
There is no guarantee that any strategy will have the same performance in the future. Some may perform worse and some may perform better. We use backtests to compare historical strategy performance. Backtests are based on historical data, not live data. 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. We recommend using our strategies in simulated trading until you/we find the holy grail of trade strategy.
For a link to all strategies and the most recent performance chart, click here.
Click on the table to enlarge.
Today, we’re introducing Strategy 51. As a quick reminder, our goal is to find the holy grail of automated trade strategy as defined below:
Profit factor greater than 3
Annual drawdown less than 3%
Annual return on max drawdown greater than 500%
Maximum daily net loss of -$1,000
Avg Daily profit greater than $1,000
Less than 5,000 trades annually
More than 253 trades annually
When used as a portfolio strategy, Strategy 51 meets 6 out of 7 of these attributes.
Strategy 51 is a continuation of Strategy 50. The primary issue with Strategy 50 is one of low net income. So, the goal of Strategy 51 was to figure out a way to boost net income.
How much did we boost income?
Well, there are two ways to boost net income:
by using the strategy as a portfolio strategy based on the highest performing assets (futures contracts in this case)
by increasing the number of contracts we use on each trade
You may think that both options necessarily increase risk, but they don’t. In fact the former diversifies your risk and the latter minimizes risk while maximizing profit. I’ll give you an example of how that plays out trade-by-trade in a moment.
So for Strategy 51 we decided to both: increase the number of contracts, and incorporate those contracts into a portfolio strategy based on the highest performing assets.
The first step in our testing process is to run a standard backtest over a one year period. In this case the period is July 1, 2021 to July 1, 2022.
What did the standard backtest yield? This is the performance of the portfolio with the use of only one contract. It shows that we have a total portfolio net profit of $151K and an average profit factor of 3.55 on 590 trades. Average max drawdown is only $1,585, and on average 68% of the trades are profitable.
This is the performance of the portfolio with the use of up to 5 contracts per instrument based on our risk management system.
It shows that we have a total portfolio net profit of $656K and an average profit factor of 3.71 on 600 trades. Average max drawdown is only $6,679, and on average 67% of the trades are profitable.
These are the futures contracts we’re using in this portfolio:
6B - British Pound (FX)
6E - Euro (FX)
CL - Crude Oil
ES - E-Mini S&P 500
FDAX - DAX
GC - Gold
NQ - E-Mini NASDAQ 100
RTY - E-Mini Russell 2000
YM - Mini Dow
ZB - 30 year Bond
ZN - 10 Year Note
ZS - Soybeans
ZW - Wheat
Each contract has been optimized based on a minute-based data series between 1 and 60. What we discovered over the last two months, and discussed in the July portfolio update, is that unlike optimizing indicator parameters, optimizing minute-based data series does not appear to result in overfitting, so we expect to see these results going forward.
The next test is a backtest using high order-fill, however, you can’t run this test when you’re using more than one underlying contract, which is what we’re doing with Strategy 51. So we had to skip to the next test: market replay.
Market replay results are more accurate than both standard and high order-fill results because there’s more data — more data equates to 1) a better simulation of the market, and 2) a better understanding for how the strategy will perform in the live market.
Unfortunately, due the size of data for market replay it is difficult and time consuming to run market replay data for a year so we just ran it for two weeks from 6/27/2022 to 7/14/2022. The results matched the backtest, which is to say — there were no trades made over the last two weeks. The same is true for the simulated live account. We will continue to track this portfolio in the Mudder Report. This isn’t surprising because according to the standard backtest the last trade was made on June 7.
Now, I’m going to get into how to recreate Strategy 51. The strategy is also available for download (C#) below.