Why Your Backtest Results Don't Match Live Trading
That strategy with an 80% win rate in backtesting? It'll probably hit 55% live. Here's why—and what to do about it.
You've done the work. Hundreds of hours backtesting, optimizing, refining. Your strategy shows an 80% win rate, 2.5 profit factor, beautiful equity curve. You go live.
Three weeks later, you're sitting at 54% win rate and wondering what went wrong.
You didn't do anything wrong. You just learned the most important lesson in systematic trading: backtests lie. Not maliciously—they just operate in a fantasy world that doesn't exist.
The Fantasy World of Backtesting
When you backtest, your simulator assumes:
- Orders fill instantly at the exact price you wanted
- There's no slippage, ever
- Liquidity is infinite—you can buy or sell any size without moving the market
- Your emotions don't exist
- Your internet never drops
- The exchange never hiccups
In reality, none of that is true.
Where the Performance Leaks Out
Slippage: Death by a Thousand Ticks
In a fast-moving market, your limit order at 4500.00 might fill at 4500.25. That's one tick of slippage. Doesn't sound like much.
But if you're trading 10 times a day, that's potentially 20 ticks of slippage (entry and exit). At $12.50 per tick on ES, that's $250 per day your backtest didn't account for.
What to do: Build slippage into your backtests. Assume at least 1-2 ticks per side on any liquid instrument. More on fast-moving ones like NQ.
Look-Ahead Bias: The Invisible Cheat
Your backtest "knows" how each candle closes. When it evaluates a signal at the close, it has perfect information. In real-time, you don't know the close until it closes.
If your strategy says "buy when the 5-minute candle closes above the moving average," your backtest assumes you execute at exactly that closing price. In reality, by the time you confirm the close and send the order, price has moved.
What to do: Only use confirmed closes for signals. If you backtest on candle closes, trade on candle closes. And add execution delay to your simulations if your platform supports it.
Curve Fitting: The Illusion of Edge
This is the big one.
You have 47 parameters. You optimize until your backtest shows 300% annual returns. You've found the holy grail, right?
No. You've fit noise, not signal. You've created a strategy that perfectly explains the past and will completely fail in the future.
Here's a test: take your optimized parameters and run them on data you didn't optimize on. If performance falls off a cliff, you were curve fitting.
What to do: Use walk-forward optimization. Split your data into in-sample and out-of-sample periods. Optimize on the first, test on the second. If it doesn't hold up, your edge isn't real.
Survivorship Bias: The Missing Data
Testing your stock strategy on today's S&P 500? You're only looking at survivors. All the companies that went bankrupt, got delisted, or merged out of existence aren't in your data.
Your backtest thinks you would have avoided them. In reality, you might have held Enron all the way down.
What to do: Use point-in-time data that includes delisted securities. This matters less for futures traders, but if you're trading equities, it's critical.
The 30% Rule
Here's a rough heuristic that's served traders well:
Expect live performance to be about 70% of backtest performance.
If your backtest shows a 2R average win, plan for 1.4R live. If it shows 70% win rate, expect 50-55%. If it shows $1,000 per day, budget for $700.
This isn't pessimism. It's calibration. And it keeps you in the game when reality doesn't match the simulation.
Bridging the Gap
Paper Trade First
Before real money, run your strategy on paper for at least 30-50 trades. Track:
- Actual fill prices vs. signal prices
- Time from signal to fill
- Any trades you missed due to technical issues
Start Small
When you go live, use minimum size. Run for another 50+ trades. Compare results to your backtest. If you're within 30% of expected performance, you're probably okay. If you're way off, investigate before sizing up.
Track Everything
Keep a log of every trade. Note when fills were worse than expected, when you got lucky with better fills, when latency caused issues. This data is gold.
The Good News
None of this means backtesting is useless. It's how you develop and validate ideas. It's how you avoid obviously bad strategies. It's how you build confidence in your edge.
Just don't mistake the map for the territory. A backtest is a best-case scenario. Live trading is messier, more expensive, and less forgiving.
Accept that going in, and you'll be ahead of most traders who blow up learning this lesson the hard way.
Related Articles
The Trading Journal: Your Edge in Understanding Yourself
The habit that separates improving traders from stuck ones. Here's why journaling matters and how to do it without wasting time.
Analyzing Your Trading Performance: The Metrics That Matter
Beyond P&L: the numbers that tell you if your strategy is actually working and what to fix when it isn't.
Questions about this article? hi@algobread.com