A backtest cannot tell you what your order will cost when available liquidity vanishes between price levels. A historical signal can remain valid while the live trade becomes unacceptable because the price needed to fill it no longer exists in usable size.
On May 6, 2010, U.S. markets entered a period of severe disorder now known as the Flash Crash. The joint CFTC and SEC report documents how activity in E-mini S&P 500 futures accelerated as liquidity became fragmented and automated trading amplified the move. Prices moved through levels that, under ordinary conditions, appeared available. In the moment, the question was not whether a trading rule had identified a signal. It was whether the market could absorb an order at anything close to the price implied by the signal.
That gap between a modeled fill and a live fill is where risk management becomes real.
A backtest records trades that could be priced
Most backtests need an execution assumption. They may use an opening price, closing price, midpoint, or a fixed amount for slippage. Those assumptions make the test possible, but they also flatten a complicated market into a number.
A chart can show that price traded at $50.00. It cannot automatically tell you how many shares or contracts were available there when your order arrived, how quickly they disappeared, or where the next meaningful liquidity sat. If your position size needs more liquidity than the book offers, your average fill can land far from the price that made the trade look sensible.
This matters most around the open, during news, in thin stocks, and in less-liquid crypto markets. A setup may meet every historical rule. The spread may still widen, displayed size may vanish, and the stop distance may expand before the position is even established.
Backtesting explained plainly: it tests a trading idea against recorded market data. It does not guarantee that future orders will receive the same fills.
The signal and the execution are separate decisions
A trade has at least two tests.
The first is analytical: does the setup meet your entry rules?
The second is operational: can you enter at a price, size, spread, and risk level that still fit your plan?
Treating those as one decision hides execution risk. A valid breakout signal may call for an entry near a defined level. If the offer has moved several levels higher by the time you can trade, the original position size may no longer make sense. The stop may be too far away. The reward-to-risk calculation may have changed. Passing on the trade can be the disciplined result.
This is one reason approval-gated trading matters. An AI can generate and queue a signal, but the human reviewing it can see the live spread, current available liquidity, proposed size, and distance to invalidation before any order executes. The approval step creates room for judgment where the backtest necessarily used an assumption.
That judgment is especially important after a fast move. Why automated trading bots can amplify overtrading in thin markets examines why constant execution can turn a thin-market condition into repeated exposure.
Measure the gap your model leaves out
Add execution fields to your trading journal. Record the signal price, intended entry, actual fill, bid-ask spread, planned size, actual size, and whether the live trade still fit the original risk limit.
Over time, this separates a weak strategy from a strategy damaged by execution assumptions. If trades work in the backtest but frequently begin with unexpected slippage, your model may need stricter liquidity rules, smaller position sizes, or a limit-order policy. If the opportunity disappears before a limit order fills, that is also useful information. The market did not offer the trade at your acceptable terms.
A practical pre-trade check can be short:
- Compare the live bid-ask spread with the spread assumed in your test.
- Check whether visible size can support your planned position without crossing multiple levels.
- Recalculate position sizing from the live entry and stop, rather than the historical signal price.
- Reject or reduce a trade when the live execution changes the defined risk.
These checks do not remove uncertainty. They make it visible before capital is committed.
Approval is where the historical model meets the live market
The Flash Crash report remains useful because it shows how quickly familiar market mechanics can change when liquidity withdraws. Prices may keep printing. That does not mean your intended size can trade at those prices.
A backtest gives you a hypothesis about behavior under stated assumptions. Live execution tests those assumptions in public, one order book at a time. Keep the two records separate. When the book offers a gap, preserve the right to decline the fill your model expected.
Educational content, not financial advice.
Comments
No comments yet.