A backtest that assumes perfect fills at the mid price is a fantasy for most retail and mid-frequency systematic strategies. Commissions and slippage turn paper edges into live breakeven or worse.
Modeling costs is boring and essential.
Commissions
Commissions are explicit fees per share, per contract, or per order. Include:
- Broker per-trade minimums
- Regulatory fees where applicable
- Platform or data fees only if they scale with activity (often treat separately)
For ETFs and large caps, commissions may be small relative to spread and slippage. For high-turnover rules, they still compound.
Slippage
Slippage is the difference between the price you assumed and the price you actually received, often because of:
- Bid-ask spread (you buy at ask, sell at bid)
- Market impact (your order moves the book)
- Latency (price moves between signal and fill)
Backtests often apply slippage as:
- A fixed basis points haircut per trade (for example, 5 bps per side)
- A percentage of price
- A spread model (half spread for aggressive market orders)
Simple stress grid
When evaluating a strategy, rerun backtests with:
| Assumption | Purpose |
|---|---|
| 0 bps | Upper bound (optimistic) |
| 5-10 bps per side | Reasonable liquid ETF baseline |
| 25+ bps | Stress illiquid names or volatile periods |
If edge disappears at modest slippage, the signal may not be tradable at your scale.
Turnover interacts with costs
Frequent rebalancing and momentum rotations pay costs repeatedly. Mean reversion with tight stops can churn.
Report annual turnover alongside win rate and profit factor.
Execution time matters
Market-on-close vs intraday changes available liquidity. Close auctions differ from mid-day thin books.
Align slippage assumptions with your chosen trade time.
What costs cannot fix
Costs hide but do not fix:
- Look-ahead bias
- Survivorship bias (start date and universe issues)
- Overfitting (walk-forward helps)
Live monitoring
After paper trading, compare expected vs realized slippage by symbol and time of day. Feed that back into your model.
Summary
Treat commissions and slippage as first-class parameters, not an afterthought. A strategy that survives a sensible cost haircut is more interesting than one that only works at zero friction.
