RealismIntermediate

Execution Assumptions

Execution assumptions are the modelled details of how orders actually reach the market in a backtest (fill prices, slippage, transaction costs, latency and liquidity limits) and they determine whether a simulated edge could survive real trading.

Quick answer: Execution assumptions are the modelled details of how orders actually reach the market in a backtest (fill prices, slippage, transaction costs, latency and liquidity limits) and they determine whether a simulated edge could survive real trading.

In simple words

A backtest has to guess how your orders would really have been filled: at what price, with what delay, after what costs. Those guesses are execution assumptions. Optimistic ones, like assuming you always buy at the exact price you wanted with no cost, can make a losing strategy look profitable. Realistic execution assumptions are often the difference between a backtest that survives live and one that collapses.

Purpose

This page explains the assumptions a backtest must make about order execution and why understating slippage and costs is one of the most common ways a backtest overstates an edge.

Professional explanation

The fill-price assumption

Every simulated trade needs an assumed fill price, and the choice quietly governs realism. Assuming fills at the signal bar's close is both optimistic and often look-ahead; assuming the next bar's open is more honest; assuming the bar's low for buys and high for sells is fantasy. For limit orders you must model whether the limit would actually have traded, since a limit resting at a good price frequently goes unfilled while the market moves away. The fill assumption is not a technicality; a strategy can be profitable under one and unprofitable under another.

Slippage: the gap between intended and achieved price

Slippage is the difference between the price you expected and the price you got. It arises from the bid-ask spread, from the market moving between decision and execution, and from your order consuming available liquidity. It is typically worse for larger orders, illiquid instruments, fast markets and the moments around news. A common modelling approach is a fixed number of ticks or a percentage of price per fill, but a realistic model scales slippage with order size relative to available volume. Systematically understating slippage is one of the most damaging and most common backtest errors.

Transaction costs in the Indian market

Explicit costs must be modelled in full: brokerage, exchange transaction charges, GST on brokerage and charges, SEBI turnover fees, stamp duty and Securities Transaction Tax (STT). These differ by segment, so intraday equity, delivery and F&O each carry a distinct cost profile. Because these frictions apply to every trade, their total scales with turnover, and a high-frequency strategy can pay its entire gross edge away in costs. A backtest that models zero or token costs is measuring an edge no real trader could keep.

Latency and the decision-to-execution delay

In live trading there is a delay between a signal being generated and the order reaching the exchange: computation time, network latency and queue position. For daily strategies this is negligible, but for intraday and especially high-frequency strategies it is decisive, because prices can move meaningfully in the milliseconds involved. A backtest that assumes instantaneous execution ignores that a fast-moving signal may already be stale by the time a real order arrives, which is why latency-sensitive strategies rarely reproduce their backtest live.

Market impact and capacity

Beyond slippage on a single fill, a strategy's own orders move the price when they are large relative to available liquidity, an effect called market impact. This creates a capacity limit: a strategy that works on Rs 5,00,000 may degrade or fail at Rs 5,00,00,000 because its orders can no longer be filled without moving the market against itself. Backtests almost always assume the strategy is a price-taker with no impact, which is acceptable at small size but dangerously optimistic at scale. Capacity must be considered before assuming a backtested edge scales.

Conservative modelling and the burden of proof

Because every execution assumption can be tuned to flatter the result, the disciplined default is conservatism: assume the next-bar fill, generous slippage, full costs, and no benefit of the doubt on limit fills. If the edge survives pessimistic execution assumptions, it is more likely to survive live; if it only appears under optimistic ones, it was never real. The burden of proof sits on the strategy, so execution assumptions should be stress-tested by rerunning the backtest with progressively harsher costs and slippage.

Practical example

Illustrative example (Indian market)

An intraday Bank Nifty options strategy on Rs 5,00,000 shows a gross return of 30 percent over a year across 1,500 round-trip trades. Model execution honestly: say Rs 20 brokerage per leg, STT and exchange charges totalling roughly Rs 40 per round trip, and slippage of about half a percent of premium given the spread. If the average trade risks Rs 3,000 of premium, half a percent slippage is around Rs 15 per side, but the fixed charges dominate at small size. Across 1,500 trades, costs near Rs 90,000 to Rs 1,00,000 consume most of the Rs 1,50,000 gross profit, leaving a thin and fragile net edge that a slightly worse slippage assumption would erase entirely.

On NSE, options at further strikes and in the last hour before expiry can have wide bid-ask spreads, so a backtest using the mid price assumes a fill that the spread would never have granted. Modelling execution at the bid for sells and the ask for buys, rather than the mid, is a more honest baseline.

Advantages

  • Turns a gross, theoretical edge into an achievable, net one
  • Exposes strategies whose apparent profit is purely unmodelled friction
  • Reveals capacity limits before real capital is scaled up
  • Makes backtest-to-live decay smaller and more predictable

Limitations

  • True slippage and impact are hard to model without real fill data
  • Latency effects cannot be measured accurately without live testing
  • Capacity depends on liquidity that itself varies over time
  • Every assumption can be tuned, so honesty depends on discipline

Why it matters in practice

  • Execution assumptions often decide whether a strategy is viable at all
  • For high-turnover strategies, the cost model matters more than the signal

Common mistakes

  • Assuming fills at the mid or at the signal bar's own close
  • Using a token slippage figure that ignores spread and order size
  • Modelling brokerage but forgetting STT, exchange charges and stamp duty
  • Assuming every limit order fills at the desired price
  • Ignoring latency for an intraday or high-frequency strategy
  • Assuming a small-size edge scales to large capital without market impact

Professional usage

Professional researchers treat execution as adversarial: they assume the least favourable realistic fill, model the full Indian cost stack per segment, scale slippage with order size against traded volume, and rerun the backtest under progressively harsher assumptions to find the point where the edge breaks. They separate the signal from the execution model so each can be stressed alone, and they treat capacity and market impact as first-order questions before ever discussing scaling capital.

Key takeaways

  • Execution assumptions decide whether a simulated edge could survive real trading
  • Understating slippage and costs is a leading way backtests overstate an edge
  • Model the full Indian cost stack, and scale slippage with order size
  • Be conservative: if the edge survives harsh assumptions it is more likely real

Frequently asked questions

What are execution assumptions in a backtest?
They are the modelled details of how orders reach the market: the assumed fill price, slippage, transaction costs, latency and liquidity limits. Together they determine whether a simulated edge is achievable in reality, and optimistic assumptions can make a losing strategy look profitable.
What is slippage?
Slippage is the difference between the price you expected and the price you actually got, arising from the bid-ask spread, price movement between decision and execution, and your order consuming liquidity. It is worse for large orders, illiquid instruments and fast markets, and understating it is a common backtest error.
Why do costs matter so much for active strategies?
Because brokerage, STT, exchange charges, GST and stamp duty apply to every trade, so their total scales with turnover. A high-frequency strategy can pay its entire gross edge away in frictions, which is why a cost-free backtest of an active strategy is meaningless.
What fill price should a backtest assume?
The most honest simple assumption is the next bar's open after a signal computed on the close, not the signal bar's own close, and certainly not the bar's low for buys. For limit orders you must also model whether the limit would actually have traded rather than assuming it always fills.
Does latency matter in backtesting?
For daily strategies it is negligible, but for intraday and high-frequency strategies the delay between signal and execution is decisive, because prices move in the milliseconds involved. A backtest assuming instantaneous execution overstates the edge of any latency-sensitive strategy.
What is market impact?
Market impact is the way a strategy's own orders move the price when they are large relative to available liquidity. It creates a capacity limit, so a strategy that works at small size may fail at large size because its orders can no longer be filled without moving the market against itself.
How should I model slippage in India?
A reasonable baseline is to fill buys at the ask and sells at the bid rather than the mid, and to add slippage that scales with order size relative to traded volume. For wide-spread instruments such as far options near expiry, the spread itself is the dominant slippage cost.
What is the difference between slippage and transaction costs?
Transaction costs are the explicit, known charges such as brokerage, STT and exchange fees, while slippage is the implicit cost of not getting your intended price. Both reduce net return, but costs are largely predictable per trade whereas slippage varies with liquidity and speed.
Why is my live result worse than the backtest?
Very often because the backtest used optimistic execution assumptions: mid-price fills, token slippage, missing charges or no latency. Live trading imposes the real spread, real costs and real delays, so tightening the execution model usually closes most of the gap.
Should I assume limit orders always fill?
No. A limit resting at a favourable price frequently goes unfilled while the market moves away, so assuming every limit fills overstates the edge. A realistic model fills a limit only when the market actually traded through its level, and treats unfilled limits as missed trades.
How do I know if my execution assumptions are realistic?
Stress-test them: rerun the backtest with progressively harsher slippage and costs and see where the edge breaks. If a small increase in assumed friction destroys the result, the strategy was living on optimistic execution and is unlikely to survive live.
Does a small-capital edge scale to large capital?
Not automatically. As size grows, market impact and capacity limits mean the same orders can no longer be filled at the same prices, so an edge validated on Rs 5,00,000 may degrade badly at institutional size. Capacity must be assessed before assuming a strategy scales.
What costs apply to Indian F&O backtests?
F&O trades carry brokerage, exchange transaction charges, GST, SEBI turnover fees, stamp duty and STT, with STT on options charged on the sell side. These differ from the equity segment, so the cost model must match the instrument being traded to be accurate.

Voice search & related questions

Natural-language questions people ask about Execution Assumptions.

What are execution assumptions in a backtest?
They are your guesses about how orders would really fill, at what price, after what delay, and after what costs. Optimistic guesses can make a bad strategy look good.
What is slippage in trading?
Slippage is getting a slightly worse price than you wanted because of the spread or the market moving. It is bigger for large orders and fast markets.
Why is my live trading worse than my backtest?
Usually because the backtest assumed perfect fills and low costs. Real spreads, real charges and real delays eat into the edge you saw on paper.
Do trading costs really change the result that much?
Yes, especially if you trade often. Charges apply to every trade, so an active strategy can pay away its whole profit in brokerage, STT and slippage.
Should I assume I always get my price?
No. Assume you fill at the next price after your signal, pay the spread, and sometimes miss limit orders. Being pessimistic keeps the backtest honest.
Will a strategy that works on small money work on big money?
Not always. Large orders move the market against you, so an edge that works on a few lakh can break down when you trade crores.

Sources & references

    Last reviewed 11 July 2026. Educational content only — not investment advice. Markets and rules change; verify current conventions with SEBI, NSE/BSE and your broker.

    Educational content only — not investment advice. Examples use illustrative numbers and simplified models. Backtested results are hypothetical and trading derivatives involves substantial risk. See our Risk Disclosure and SEBI Disclaimer.