Bad ticks and data gaps are the reason a backtest can show a trade that never could have happened
Posted: Sat Oct 31, 2026 7:22 pm
Historical data is not as tidy as it looks on a chart. Some of the problems are obvious and some can sit in a file for years without anyone noticing. Here are the ones that tend to matter for scalpers, since a single bad point can create a full-sized win or loss in a tight-stop system:
- Spike ticks. One quote far off the market that reverses immediately. A scalper's tight target gets "hit" by a price that never existed, and the strategy books a free win. These are often a provider glitch, not a market move.
- Zero or inverted spreads. A moment where the ask is below the bid, or both are equal. Costs vanish for that trade.
- Missing minutes. Gaps in the data where the platform fills in a flat bar. The strategy sees no movement and then a jump, and may enter or exit at the jump with no slippage.
- Weekend and holiday gaps handled badly. Some files treat the Sunday open as continuous with Friday's close, leading to phantom stops.
- Duplicate or out-of-order timestamps, which scramble the path inside a second.
- Stale quotes that repeat the last price for a long stretch, usually during illiquid times.
Checking for them takes a few simple passes. Sort trades by profit and look at the top ten: do any of them rely on one outlier tick? Plot the distribution of tick-to-tick price changes and look at the extreme tail. Count bars per day and look for days with odd totals.
Cleaning has its own risk, since over-filtering removes real spikes that a live trade would have suffered. The goal is to remove impossible data, not inconvenient data.
What is the worst bad tick you ever found in a file, and how did it get through?
- Spike ticks. One quote far off the market that reverses immediately. A scalper's tight target gets "hit" by a price that never existed, and the strategy books a free win. These are often a provider glitch, not a market move.
- Zero or inverted spreads. A moment where the ask is below the bid, or both are equal. Costs vanish for that trade.
- Missing minutes. Gaps in the data where the platform fills in a flat bar. The strategy sees no movement and then a jump, and may enter or exit at the jump with no slippage.
- Weekend and holiday gaps handled badly. Some files treat the Sunday open as continuous with Friday's close, leading to phantom stops.
- Duplicate or out-of-order timestamps, which scramble the path inside a second.
- Stale quotes that repeat the last price for a long stretch, usually during illiquid times.
Checking for them takes a few simple passes. Sort trades by profit and look at the top ten: do any of them rely on one outlier tick? Plot the distribution of tick-to-tick price changes and look at the extreme tail. Count bars per day and look for days with odd totals.
Cleaning has its own risk, since over-filtering removes real spikes that a live trade would have suffered. The goal is to remove impossible data, not inconvenient data.
What is the worst bad tick you ever found in a file, and how did it get through?