Realistic backtesting: the costs that kill paper edges
A backtest that ignores fees, funding, slippage, partial fills, and latency is not a test. It is a daydream with axes. The gap between paper and live lives in those five words, and the gap is usually bigger than the edge.
What the clean backtest assumes
A naive backtester assumes you trade for free, fill instantly, fill completely, and fill at the printed price. None of these are true. Each false assumption is a cost, and the costs do not take turns. They arrive together, on every trade.
Fees. Small per trade, brutal in total. Two hundred round trips a year at 0.05 percent taker each side is roughly 20 percent of the account, paid before the strategy earns anything. Fee-heavy strategies do not blow up. They grind down, slowly enough that the trader blames the market.
Funding. Perps pay or collect every few hours. Bull markets charge longs. Panics charge shorts. A strategy that holds through funding windows can hand a large share of its annual edge to the other side of the book. A backtest without funding cannot see this. It reports the gross. You will live the net.
Slippage. The distance between the price the strategy decided on and the price it received. Worse on small pairs, worse in volatility, worse in thin books. Notice what that list means: slippage is worst exactly when your strategy is most active. The cost concentrates where the action is.
Partial fills. Limit orders do not always fill. The fills you miss cluster on the best trades, because the best trades are the ones where price ran and never returned to your order. A backtester that fills every limit at its price is crediting you with the market's best moments. The market does not extend that credit.
Latency. The price the strategy saw is not the price it gets. On 4-hour bars, irrelevant. On 1-minute bars, decisive. Latency alone flips marginal fast strategies from green to red.
Why the TradingView curve is a hypothesis
Pine Script has no funding model, no realistic slippage, no partial fills, and no per-venue fee tiers. Perps get simulated as if they were spot. This is not an insult to Pine. It is a fast prototyping tool, and prototyping is a fine thing. But understand what the green curve is. It is a hypothesis that the logic might matter. It is not a result. Treating a hypothesis as a result is how tuition gets paid.
What a real test models
At minimum: per-venue maker and taker fees, historical funding applied bar by bar, slippage and fills derived from book depth and your order size, and a realistic delay between signal and execution. Size-aware matters. A $1,000 order and a $100,000 order trade in different markets, even at the same moment on the same pair.
Edgecraft models all of it by default. Not as toggles. A backtest without these mechanics answers a question nobody asked.
Reading the gap
Run a strategy through real mechanics for the first time and the number drops. Traders see the drop and assume something is broken. Nothing is broken. The test started telling the truth.
- Paper Sharpe 1.5 becoming realistic Sharpe 0.8 is normal. The difference is the measured cost of doing this business.
- The gap is the leak. It is the money you would have donated by going live on the paper number.
- A strategy that stays positive after real mechanics is worth optimizing. A strategy that does not is worth killing on paper. Paper is the cheapest graveyard there is.
For a line-by-line worked example of this arithmetic, see the live headwind.
The comparison that matters
Stop comparing the realistic number to the TradingView number. They describe different worlds, and the comparison will always make the honest one look broken. The comparison that matters is realistic backtest against live results. That gap should be small. Making it small is the entire purpose of realistic testing.
And respect the marginal cases. If the honest backtest says break-even, live will say slight loss. There is no making it up in execution. Execution is where the costs live. It is not where they disappear.
How Edgecraft handles this
Every backtest runs with full mechanics on. The results show the paper number and the realistic number side by side, with the difference itemized: this much to fees, this much to funding, this much to slippage. You see where the money goes before any money goes there. The methodology is published, so you can audit the models instead of trusting them.
Continue learning
- Foundations
The live headwind: how costs eat a paper edge, line by line
A line-by-line worked example of how fees, spread, slippage, funding, missed fills and a liquidation event reduce a strong paper return to a marginal live one.
- Foundations
Overfitting: how good-looking numbers lie
The most common reason backtests succeed and live trading fails — how to detect overfitting and defend against it.
- Basics
Spot vs. perpetual futures: funding, margin, and liquidation
What a perpetual future actually is and how funding, margin and liquidation work in practice.
Build your process around evidence
Join the Edgecraft waitlist and follow the development of a strategy intelligence platform built for realistic testing and deeper strategy analysis.
Educational content only. This article is not financial advice and does not guarantee any trading outcome. Trading involves risk.