Limitations of Slippage Assumptions in Forex Backtesting

Learn why slippage assumptions can mislead forecasts in forex testing.

Direct answer

Slippage assumptions estimate how much extra price movement or execution cost you may experience between the moment a trade decision is made and the moment it is filled. The main limitation is that they often compress a variable, path-dependent execution process into one simplified number. When real execution conditions differ from the assumption, backtest results can become misleading.

Mechanism and definition

In a backtest, slippage assumptions are usually applied by adjusting the trade entry and/or exit prices (or by subtracting a cost) to reflect the gap between an intended fill and a realized fill. This adjustment is typically based on an assumption such as a fixed amount, a fixed percentage, or a rule tied to market features like volatility or spread.

The core mechanics are straightforward: the calculation assumes that trades will experience slippage in the same way as specified by the model. That assumption may be reasonable for certain stable conditions, but it is not the same as observing every component of execution, such as changing bid-ask spreads, liquidity depth, order-book dynamics, and whether the order is filled immediately or gradually.

Evidence or example (failure modes)

A common failure mode is “cost mis-modeling.” If your slippage model uses a single average value, it may fit quiet periods but understate costs during events that increase volatility or reduce liquidity. In practice, spreads can widen quickly and liquidity can thin, so the realized execution can be worse than the assumed adjustment.

Another failure mode is “execution path mismatch.” Slippage is not only about price moving; it is also about how the market interacts with your order. For example, if your model assumes immediate full fills, but real executions may involve partial fills or delayed fills, the effective average fill price can diverge substantially.

A third failure mode is “spread dynamics ignored.” Even if the intended slippage number is correct at one time, spread behavior can change intraday or around news-like volatility regimes. If the assumption does not respond to those changes, backtest comparability across time breaks down.

Limitations and risks

Slippage assumptions are less useful when any of the following conditions hold:

  • Market conditions and liquidity vary materially over time, causing slippage to change more than the model allows.
  • The execution setup (order type, timing granularity, and fill handling) differs from what the slippage assumption implicitly represents.
  • Trading costs other than slippage are not modeled consistently (for instance, if commissions or fees are handled differently in backtests versus live execution).
  • Historical relationships do not establish future results. A strategy can see periods where slippage behaves near the historical average and other periods where it does not.

These limitations do not mean slippage modeling is pointless; they mean the assumed slippage number is conditional on a simplified representation of execution and market behavior.

Verification and next question

To independently verify the usefulness of slippage assumptions, treat them as a hypothesis that must be stress-tested rather than a fixed truth. A practical approach is to run sensitivity checks: vary the slippage inputs across plausible ranges and observe how robust the conclusions remain. If results change direction or materially depend on the exact slippage value, the model is likely not capturing execution uncertainty well.

A useful next question is: which part of execution is your assumption trying to represent—spread movement, delayed fills, partial fills, or a combined cost—and how well does that match the reality of how orders are actually filled during the periods you test?

Trading foreign exchange and CFDs involves substantial risk. Information on FoxiForex is educational and is not personal financial advice. Sponsored placements are labelled clearly.