pickuma.
Finance

Slippage and Transaction Costs: The Silent Killer of Backtests

A strategy that's profitable on paper often dies the moment you add realistic trading costs. Here's what slippage, spread, and fees actually do to returns, and how to model them honestly.

O
Owen
Engineer · Investor
Verify profile ↗
7 min read

Here’s a pattern that has humbled every developer who builds a trading strategy: the backtest shows a smooth, rising equity curve, you deploy it, and the live results are mediocre or negative. The strategy didn’t break — your backtest was lying, because it assumed you could trade at the price on the screen, instantly, for free. None of those things are true, and the gap between them and reality is where backtested edges go to die. None of this is investment advice.

The three costs your backtest probably ignores

Real trading has three frictions that a naive backtest leaves out, and they compound.

The spread. Every tradable asset has a bid and an ask, and you buy at the higher ask and sell at the lower bid. The difference is a cost you pay on every round trip, before the price moves at all. On liquid large-cap stocks it’s tiny; on small-caps, options, or thin crypto pairs it can be substantial.

Slippage. Your order isn’t free to the market — placing it moves the price against you, especially if your size is large relative to available liquidity. You also rarely fill at the exact moment your signal fired; by the time your order reaches the exchange, the price has drifted. Backtests that fill at the closing price of the signal bar are quietly assuming away this entire problem.

Commissions and fees. Even “commission-free” brokers have costs baked in elsewhere, and many assets carry explicit fees. These are the easiest to model and the smallest of the three for most strategies — but they still add up with frequency.

Why turnover is the multiplier that matters

Transaction costs aren’t a fixed tax — they scale with how often you trade. A strategy that rebalances once a month pays these costs twelve times a year; one that trades several times a day pays them hundreds or thousands of times. So the same per-trade cost that’s negligible for a low-turnover strategy is fatal for a high-frequency one.

This is why so many high-turnover strategies look brilliant gross and lose money net. Their edge per trade is real but tiny, and costs eat all of it. Before you get excited about a strategy with a high trade count, ask: what’s the average profit per trade, and is it comfortably larger than the round-trip cost? If a strategy makes 0.1% per trade but costs 0.15% to execute, no amount of win-rate saves it.

Modeling costs honestly

You don’t need a perfect market simulator; you need to stop assuming costs are zero. A reasonable approach for retail backtesting:

Fill at the next bar’s open rather than the signal bar’s close, so you’re not trading on information you couldn’t have acted on. Subtract a per-trade cost that combines an estimate of the spread plus slippage for your asset and typical order size — be pessimistic, because optimism here is expensive. Add explicit commissions where they apply. Then re-run, and judge the strategy on the net curve, never the gross one.

The goal isn’t precision; it’s to stop fooling yourself. A strategy that survives conservative cost assumptions might be real. A strategy that only works at zero cost was never a strategy — it was a measurement of the market’s frictions, mistaken for an edge.

FAQ

How much should I assume for slippage?+
It depends heavily on the asset's liquidity and your order size — there's no universal number. The discipline that matters is being pessimistic and explicit: pick a conservative estimate for your specific instrument, and test how sensitive your results are to it. If small changes flip the outcome, the edge is too thin to trust.
Do commission-free brokers eliminate transaction costs?+
No. Commissions are usually the smallest of the three costs. Spread and slippage remain regardless of commission, and 'free' brokers often recoup costs through payment for order flow or worse fills. Free trades do not mean cost-free trades.
Why does filling at the next open matter so much?+
Filling at the signal bar's close assumes you could trade on a price before it was even known, which is impossible. Filling at the next bar's open reflects the earliest moment you could realistically act, and it removes a large, sneaky source of look-ahead bias from your results.

Slippage and transaction costs are unglamorous, which is exactly why they’re so often ignored — and why ignoring them ruins so many strategies. Model them conservatively from the start, and you’ll waste far less time chasing edges that only ever existed in a frictionless simulation.

Related reading

See all Finance articles →

Get the best tools, weekly

One email every Friday. No spam, unsubscribe anytime.

O
Owen
Engineer · Investor
Verify profile ↗