What a fill really costs
The next open, the spread, commission and stops that fill worse than their price: the frictions that decide if a strategy that works on paper works at all.
2 min read
Most strategies that fail in live trading don’t fail because the idea was wrong. They fail on frictions the backtest left out: a fill at a price that was never available, and trading that cost nothing.
The next open, not this close
You decide on a bar you have just watched close. The earliest you can act is the next bar, so a market order in Backstride fills at the open of the next one-minute bar. Most of the time that’s within a tick of the close. Around news, and at every session open on stocks, it isn’t, and those are the moments that decide a strategy.
Half the spread, both ways
You buy at the ask and sell at the bid. The engine models this as half the spread against you on every market and stop fill: buyers pay a little above the open, sellers receive a little below it. With a 2 bps spread, a round trip gives up 2 bps of the position before any commission.
A limit order fills at its own price or better, with no spread. That’s the point of a limit.
Maker and taker
Exchanges charge less for adding liquidity than for taking it, and so does the engine. A limit order resting in the book pays the maker rate when it fills, and so does a take profit, which is a resting limit on the position. A market order, a stop, a stop loss and the close at the end of a session all pay the taker rate. A flat fee per fill sits on top of both.
One round trip, in numbers
A $10,000 long, entered and exited with market orders, with a 2 bps spread and a 20 bps taker rate:
entry 10,000 × (0.0001 + 0.0020) = $21.00
exit 10,000 × (0.0001 + 0.0020) = $21.00
round trip = $42.00 0.42%
A strategy that makes 0.3% a trade before costs loses money after them. Take profit with a resting limit instead and the exit drops to the maker rate, which is why the way you leave a trade matters as much as the way you enter it.
Stops fill worse than the stop
A stop triggers when a bar trades through it and fills at the worse of the bar’s open and the stop price, plus half the spread. If the market gaps through your stop, you get the open, not the number you typed.
When a single bar touches both your stop loss and your take profit, the bar alone can’t say which came first. The engine assumes the stop loss. It’s the conservative guess, and a strategy that only works with the optimistic one doesn’t work.
Set the costs to your own
Every backtest has its own spread, maker rate, taker rate and fee per fill. Look up your broker’s schedule and enter it. When in doubt, round up: a strategy that survives costs slightly worse than yours will survive yours.