Rules that quietly look ahead
A rule written as "enter when the day closes above the opening range" needs the close to exist before it can fire. A template tool will run it and hand back a number. We flag it and ask what you meant.
You already have a strategy. This is the part where you find out what it would have done, and exactly what had to be assumed to find out.
Plain language is fine. Start from a preset if your setup is a common one - previous day high/low, opening range breakout, moving-average cross - or write out something custom in your own words.
Your rules execute against actual CME price data, with the commission and slippage you set on your order applied, and each report stating which. Contract rolls are handled as forced exits rather than price gaps that could invent a signal.
Every trade, every figure, and a written list of exactly what the run assumed and where those assumptions could be wrong. What the numbers mean for your trading is your call to make.
Figures, the full trade list, and the assumptions behind them. We do not add an interpretation, because the interpretation is yours to make.
Trades
202
Terminal equity
$53,642
Max drawdown
−81.59%
Peak open risk
73.4%
Mean units
3.12 of 4
| Closed | Entry rule | Side | Units | Qty | Result |
|---|---|---|---|---|---|
| 2026-08-04 | 20-day breakout | Short | 4 | 4 | −$6,602 |
| 2026-08-03 | 55-day breakout | Short | 4 | 4 | −$6,597 |
| 2026-06-09 | 55-day breakout | Long | 4 | 4 | +$14,204 |
| 2026-06-05 | 20-day breakout | Long | 4 | 4 | +$30,226 |
The last four of 202 to close, on the study’s two entry rules run on one account. “Units” is how many of the four position-sized blocks the pyramid filled and “Qty” is the contracts those came to; results are dollars on a $100,000 account. The full list is in the report.
What this run assumed
16 more, including what the run cannot tell you and the corrections the study made to itself.
These are the things we look for in every run, and the reason a person reads your rules before the compute runs.
A rule written as "enter when the day closes above the opening range" needs the close to exist before it can fire. A template tool will run it and hand back a number. We flag it and ask what you meant.
Limit orders filled at prices that only printed once, stops assumed to fill at exactly the stop price, both a stop and a target hit inside the same bar. Each one has an assumption behind it, and we write down which we used.
Fourteen trades over eight months is a number, not a pattern. We put the sample size next to every figure so it is impossible to miss.
A setup tuned until the backtest looked right will keep looking right on that same window. We report how much the result moves when the parameters move.
A futures contract expires, and the trading moves to the next month. The price of the new contract is usually not the price of the old one, and that difference is not a market move - nobody could have traded it.
Continuous-contract data chains the months together but leaves those differences in the series. Run a backtest straight over that and a roll can trigger an entry, or take out a stop, on a price change that never happened.
We store roll dates as explicit events. Raw, unadjusted prices are what the simulation executes against, and at a roll the position is forced flat and reopened on the new contract, the way it would be in a real account. Every report tells you how many rolls fell inside your date range.
Charts may show a back-adjusted series so the line is continuous to look at. That series is for display only. It is never what the simulation trades.
ES
E-mini S&P 500
CME · quarterly roll
MES
Micro E-mini S&P 500
Rolls with ES
NQ
E-mini Nasdaq-100
CME · quarterly roll
MNQ
Micro E-mini Nasdaq-100
Rolls with NQ
GC
Gold futures
COMEX · quarterly roll
More CME products are on the way. Forex is not supported.
Describe the rules you are already trading and we will take it from there.