What a backtest is, and when you can actually trust one

· 10 min read · Analysis
What a backtest is, and when you can actually trust one

$274,406. That's the gross profit in the Rentabilio backtest, and on its own it means nothing. A number like that is worth exactly as much as the method behind it. That is why the useful skill isn't reading a backtest, it's interrogating one.

The good news: it takes an afternoon to learn, and it works on anybody's numbers, ours included.

What a backtest actually is

A backtest is a simulation. You take a set of rules, run them over historical price data as if they had been live, and record what would have happened. Nothing was bought or sold, no money was at risk. It is the standard way to test whether a trading bot's rules had an edge.

That's its strength and its weakness at once. The strength: thousands of trades across conditions nobody could live through in a reasonable time. The weakness: every input is controlled by whoever ran it, and the temptation to keep adjusting until the curve looks beautiful is enormous.

The one thing to remember

A backtest is a hypothesis, not a track record. It is evidence that a set of rules had an edge in a defined period under defined assumptions. Check the assumptions, or the number is decoration.

Look-ahead bias: the lie that's hardest to see

Look-ahead bias means the simulation used information that wasn't available at the moment of the trade. It is the most common way a backtest turns beautiful, and it rarely happens on purpose.

Look-ahead is why a strategy looks flawless in testing and falls apart in its first live week. Nothing broke. The simulation was playing with cards it wouldn't have held.

Tick data versus minute data

This decides whether the numbers are honest for any system that places a stop and a target at once, which is what Rentabilio does, with its target set at 2× the risk.

Picture a one-minute bar whose range covers both your stop and your target. Which was hit first? Minute data cannot tell you. The software has to assume, and every assumption is a policy: optimistic ones credit the target, conservative ones charge the stop. That single assumption can swing the result by a wide margin.

Tick data doesn't assume. It has every trade in sequence, so the simulation knows which price came first. It is heavier, slower and often costs money. It is also the only way a stop-and-target backtest means anything.

If a seller can't tell you what data resolution their backtest ran at, you've learned everything you needed to know.

Commissions, slippage and the zero-cost fantasy

Set commissions to zero and any marginal system becomes profitable. It is the cheapest trick in the industry because it requires no dishonesty: just leaving a field at its default.

Micro futures commissions are small but not zero: roughly $1 per micro contract round turn, all-in. Across 4,557 trades that's real money: about 5% of gross, which is how $274,406 becomes approximately $260,700 net, an average near $35,500 a year or $2,900 a month over more than seven years.

Slippage is the other half. Market orders don't always fill at the price on your screen, and stops fill worse in fast conditions. A backtest with perfect fills describes a market that does not exist.

Cherry-picked periods, survivorship and sample size

Three ways of showing a flattering slice of reality.

Cherry-picked periods. Almost any long strategy looks superb from 2020 to 2021. The question is never "how good is it" but "what period, and why that one." A test should cover several regimes (trending, choppy, volatile, boring) because you will trade in all of them. The Rentabilio backtest runs 88 months, day by day, long enough to include stretches it handled badly.

Survivorship bias. Mostly a stock problem: test on today's index members and you've excluded everything that went bankrupt or got delisted. Index futures dodge it, since the contract is the contract. A related version still applies to systems: you are shown the strategy that survived the developer's own selection. The twelve that failed aren't on the page.

Sample size. Two hundred trades is a story. A few thousand is a statistic. At a 46.2% win rate (this system loses more often than it wins), the gap between a real edge and luck only becomes visible over many trades.

Curve fitting, the sophisticated version

Curve fitting is tuning parameters until the system fits history so tightly it has memorized it rather than learned anything. The telltales: many parameters, oddly specific values, filters that exclude particular dates, and results that collapse when you nudge an input by 10%.

The defense is a stability test: change a parameter slightly and watch whether performance degrades gently or falls off a cliff. A genuine edge is a plateau; a fitted one is a needle.

How to read the Rentabilio report

Read the numbers in this order. Profit comes last, not first.

FigureValueWhat it tells you
Max drawdown$4,379Worst peak-to-trough stretch. Start here: it's what you'd have had to sit through.
Total trades4,557Whether the sample is big enough to mean anything.
Period88 monthsWhether more than one kind of market is represented.
Win rate46.2%How often it is wrong. Below 50% is normal at 2-to-1.
Average winner / loser$354 / $193Ratio 1.84: the asymmetry that makes a losing majority pay.
Profit factor1.58Gross profit over gross loss. Much above 2 on intraday futures deserves suspicion.
Net after commissions≈ $260,700The only profit figure that matters, from $274,406 gross.

Then do the thing almost nobody does: check the numbers against each other. 46.2% of 4,557 trades is about 2,105 winners and 2,452 losers. Winners: 2,105 × $354 ≈ $745,000. Losers: 2,452 × $193 ≈ $473,000. The difference is roughly $272,000, within rounding of the reported gross, and $745,000 ÷ $473,000 ≈ 1.58, the stated profit factor. The report is internally consistent. If it weren't, that would tell you more than any equity curve.

Don't take the numbers on faith

The full report is published with the drawdown, the losing stretches and the settings needed to run it yourself. If your figures don't match ours, open a ticket and we'll work out why.

How to reproduce it in NinjaTrader 8

The Strategy Analyzer is a standard tool inside NinjaTrader 8. Anyone with the strategy installed can run it.

  1. Install the strategy and confirm it compiles without errors.
  2. Get the data. Download historical data for the instrument over the full period. An honest result needs tick data, and tick data is large: budget disk space and download time.
  3. Open New > Strategy Analyzer and select the strategy from the list.
  4. Set the instrument and date range to match the published report exactly. A different range is a different test.
  5. Set the account size to $50,000 at one contract, which is what the published backtest used.
  6. Set order fill resolution to High, 1 tick. The setting from the tick-data section above, and the one people skip.
  7. Set commissions and slippage. Roughly $1 per micro contract round turn, plus a realistic slippage figure. Zero gives you a prettier number and a useless one.
  8. Run it, then compare the summary and the trade list against the published report.

Two runs rarely match to the dollar, because data feeds differ slightly in their tick history. The shape has to match: trade count within a small margin, same win rate, same drawdown neighborhood. Finding out why it doesn't is the whole exercise. Live behavior is described on how it works.

Hypothetical performance. Every figure here comes from a simulation over historical data, not a live account. Simulated results are prepared with hindsight, carry no financial risk, and cannot fully reflect real execution, slippage or liquidity. Past performance, real or simulated, does not guarantee future results.

What a backtest still can't tell you

Even a clean one has hard limits, and the honest thing is to name them.

Frequently asked questions

Is a backtest the same as a track record?

No, and treating them as equivalent is the most expensive mistake in this field. A track record is money that moved in a real account, with real fills and real slippage. A backtest simulates what the rules would have done, prepared with hindsight. Good evidence; not proof of anything that happened.

How long should a backtest be?

Long enough to include several distinct market environments, which for an intraday futures system means years, not months. Trade count matters more than calendar time: a few thousand trades across varied conditions tells you more than two calm years. Under a few hundred trades is an anecdote.

What profit factor should I look for?

On an intraday futures system, roughly 1.3 to 1.8 is plausible and defensible. Much above 2 over a long period on a liquid instrument warrants hard questions about data resolution, commissions and parameter count. A high profit factor is not automatically good news; it is a reason to look closer.

Can I run the backtest myself before I buy?

Reproducing it needs the strategy installed, which is why we publish the settings rather than a summary. Before buying, check that the report is internally consistent and that drawdown, win rate and trade count are disclosed. A vendor who publishes profit but not drawdown has told you something important.

Why does my result differ from the published one?

Usually one of four things: a different date range, a different fill resolution, commissions left at zero, or a different data feed. Work through them in that order and the gap almost always closes. If it doesn't, open a ticket through the contact form with your settings.

In short: a backtest is a hypothesis you can inspect, not a promise you have to believe. Check the data resolution, the commissions, the period, the trade count and the drawdown before you look at the profit. If the seller can't answer all five, the number at the top of the page is worth nothing.

Seeing it work beats reading about it

Rentabilio, the automated system sold on this site, takes one trade a day at 8:30 AM ET with the stop and the target placed before it enters, and its backtest can be reproduced in your own NinjaTrader 8. The full report, the drawdown and the losing stretches are all on one page.