A chart price is not automatically a fill

Historical strategies often model an order at a bar open, close, stop, or limit level. Actual execution depends on bid and ask prices, available liquidity, order type, queue position, latency, and market movement. Slippage is the difference between an assumed price and the price actually received or a conservative estimate of that difference in simulation.

Fast markets, thin periods, large orders, and news can increase adverse execution. A strategy that takes many short-duration trades can be especially sensitive because costs repeat frequently. Attractive gross results can shrink or reverse after realistic assumptions are added.

Commission must match the product and account

Commission can be charged per order, per contract, per share, or as a percentage. Futures may also include exchange and regulatory fees. Forex costs can appear through spread and commission. Crypto exchanges can use maker and taker schedules. Stocks and options have their own structures. Use the units expected by TradingView and verify whether the entered amount represents one side or a complete round trip.

A one-contract micro futures test should not use assumptions copied from a different contract or broker. Contract multipliers also affect how price movement translates into profit and loss. Record the broker schedule used and include a margin of safety rather than the best promotional rate.

Spread and latency sit outside many simple reports

The last traded price on a chart does not show the full bid and ask at every historical moment. A market order crosses the spread, and a limit order is not guaranteed to fill merely because a bar touched the level. Network, alert, webhook, and broker delays can further change execution. These effects are difficult to reconstruct perfectly from bar data.

Use conservative slippage and compare several cost levels. If the strategy depends on exact fills at turning points, inspect lower-timeframe data and understand Bar Magnifier limitations. A favorable simulated fill is not evidence that the same queue position or liquidity existed.

Stress costs instead of finding one optimistic number

Test a base case, a conservative case, and a severe case. Increase slippage during high-volatility periods and review whether performance comes from times when execution would be difficult. Compare results across different numbers of trades. A high-turnover system can degrade much faster than a slower one.

Do not use cost changes only after seeing which value preserves profitability. Choose assumptions from current product information and a conservative buffer. Save every version. The purpose is to understand fragility, not to make the report survive at any cost.

Treat net results as hypothetical

Even a detailed cost model remains a simulation. Market structure, liquidity, fees, technology, and participant behavior change. The exercise helps reveal sensitivity but cannot predict future execution.

  • Use product-specific commission and fees.
  • Model spread where relevant.
  • Add conservative slippage.
  • Check contract multipliers and order units.
  • Stress fast-market and high-turnover conditions.
  • Do not assume a touched limit was filled.
  • Disclose every material assumption with simulated results.