Tick Data
Tick data is the raw, trade-by-trade or quote-by-quote record of the market, preserving the exact sequence and timing that OHLC bars discard, which makes it the only data that can honestly model intrabar fills, slippage and order-book behaviour — at the cost of enormous size and its own quality problems.
Quick answer: Tick data is the raw, trade-by-trade or quote-by-quote record of the market, preserving the exact sequence and timing that OHLC bars discard, which makes it the only data that can honestly model intrabar fills, slippage and order-book behaviour — at the cost of enormous size and its own quality problems.
In simple words
Tick data is the market with nothing thrown away: every individual trade, and often every change in the best bid and ask, stamped with a time. Where a daily bar gives you four numbers, tick data can give you hundreds of thousands of rows for the same instrument and day. This detail is exactly what you need to know the true order price moved in, but it is heavy to store, slow to test on, and surprisingly dirty.
Purpose
Tick data exists because some questions — did my stop or my target trigger first, what slippage would I really have paid, was there volume at my price — simply cannot be answered from bars. It is the ground truth a bar approximates.
Professional explanation
What counts as a tick
The word tick is used loosely for two related things: trade ticks, which record each executed trade with price, size and time, and quote ticks, which record each change in the best bid and ask. A full order-book or level-2 feed goes further, showing depth at multiple price levels. For backtesting, trade ticks tell you what actually transacted, while quote ticks tell you the prices you could realistically have hit or been filled at. Serious execution modelling needs quotes, because a trade printing at a price does not mean you could have got that price for your size.
When a backtest genuinely needs ticks
Most daily and swing strategies do not need tick data; bars are adequate and far cheaper. Ticks become necessary when the strategy's edge lives inside the bar: intraday systems with tight stops, breakout triggers, scalping, anything sensitive to the exact fill price, and any study of slippage or market impact. The rule of thumb is that if changing your assumption about intrabar ordering or fill price would meaningfully change the result, you need data fine enough to remove the assumption. Otherwise ticks add cost and processing time for no gain in fidelity.
The storage and processing reality
Tick data is large by orders of magnitude. A single liquid instrument can generate millions of ticks a day, and a multi-year study across many symbols quickly reaches hundreds of gigabytes. This forces engineering choices: columnar or binary storage rather than CSV, compression, careful partitioning by symbol and date, and streaming rather than loading everything into memory. A backtest on ticks also runs far slower than one on bars, which affects how many parameter combinations you can afford to test and pushes researchers to prototype on bars and confirm on ticks.
Tick data has its own quality problems
Raw tick feeds are not clean. They contain duplicate prints, out-of-sequence timestamps, trades reported late, cancellations and corrections, off-market prints from block or auction trades, and occasional erroneous prices that would trigger phantom signals. Because there are so many rows, a single bad tick is easy to miss and can create a spike that a strategy trades on. Cleaning tick data is a discipline in itself: de-duplicating, sequencing by exchange timestamp, filtering non-standard trade conditions, and flagging outliers before any signal is computed.
Timestamps and sequencing
With ticks, timestamp precision and source become critical. A feed may carry an exchange timestamp, a vendor receive timestamp and a local capture timestamp, and they do not agree. Sequencing on the wrong one can reorder events and reintroduce look-ahead, because your backtest may act on a trade before the quote that should have preceded it. For Indian data the timestamps are in IST but the sub-second resolution and clock discipline vary by vendor, so a tick-level backtest must fix a single authoritative time source and sort strictly by it.
Trade ticks vs Quote ticks
| Aspect | Trade ticks | Quote ticks |
|---|---|---|
| Records | Each executed trade | Each change in best bid or ask |
| Answers | What price actually transacted | What price you could have hit |
| Needed for | Volume, last-price signals | Realistic fills and slippage |
| Volume of data | Large | Often larger than trades |
| Fill realism | Partial | Higher, especially for limit orders |
Practical example
Illustrative example (Indian market)
You test a Bank Nifty scalping rule that enters on a 30-point breakout with an 15-point stop, on capital of Rs 5,00,000. On daily or even one-minute bars the fills are guesses, so you rebuild the backtest on trade-and-quote ticks. Now you can see that on a fast breakout the best offer jumped from 48,020 to 48,055 in under a second, so your assumed entry at 48,030 was never available — the real fill was 48,055, and the extra 25 points of slippage per trade, across hundreds of trades, erases the edge the bar-based test showed. Only tick data made that slippage visible, because a bar simply reported a high of 48,060 with no hint that the price was untouchable for your size.
NSE offers historical trade and, through some vendors, quote and order-book data for cash and F&O, but full tick history is a paid product and heavy to handle. Retail traders often approximate with one-minute bars, which is acceptable for swing systems but not for Bank Nifty option scalps, where the difference between the printed price and the price actually available for your lot size is the whole game.
Limitations
- Storage and compute cost is orders of magnitude higher than bar data, limiting how much you can test
- Raw ticks are dirty — duplicates, out-of-sequence prints, corrections and erroneous prices are common
- Full quote or order-book history for Indian markets is expensive and not always available
- Multiple conflicting timestamps make correct sequencing non-trivial and a source of hidden look-ahead
- Backtests run much slower, which constrains parameter searches and robustness testing
Common mistakes
- Buying or storing tick data for a strategy whose edge does not actually depend on intrabar detail
- Sequencing ticks on the vendor receive timestamp instead of the exchange timestamp, reordering events
- Failing to filter off-market, block or auction prints, which pollute the price series
- Treating a printed trade price as a price you could have filled your full size at
- Skipping outlier and duplicate cleaning because there are too many rows to inspect
- Loading an entire multi-year tick file into memory instead of streaming it
Professional usage
Professional execution and intraday researchers store ticks in compressed columnar formats partitioned by symbol and date, clean them through a documented pipeline before any signal is computed, and sequence strictly on a single authoritative exchange timestamp. They prototype on bars for speed and reserve tick backtests for the questions that demand them: realistic fills, slippage, market impact and precise stop-or-target ordering. Crucially they use quote data, not just trade prints, to model what price was actually available for their size.
Key takeaways
- Tick data preserves the exact sequence and timing that bars throw away, making honest intrabar fills possible
- Use it only when the strategy's edge lives inside the bar; otherwise bars are cheaper and sufficient
- It is huge and slow, forcing columnar storage, streaming and fewer parameter runs
- Raw ticks are dirty and must be de-duplicated, sequenced and outlier-filtered before use
- Model fills against quotes, not trade prints, and sort strictly on the exchange timestamp
Frequently asked questions
What is tick data?
How is tick data different from OHLC bars?
When does a backtest need tick data?
When is tick data unnecessary?
What is the difference between trade ticks and quote ticks?
Why is tick data so large?
Is tick data clean?
How do bad ticks affect a backtest?
Why do timestamps matter so much with tick data?
Can I get tick data for Indian markets?
What is level-2 or order-book data?
Does tick data eliminate look-ahead bias?
How should I store tick data for backtesting?
Why prototype on bars and confirm on ticks?
Voice search & related questions
Natural-language questions people ask about Tick Data.
What is tick data in simple terms?
Do I need tick data to backtest?
Why is tick data hard to work with?
What is the difference between a trade tick and a quote tick?
Can tick data show me real slippage?
Is tick data clean when I download it?
Sources & references
Last reviewed 12 July 2026. Educational content only — not investment advice. Markets and rules change; verify current conventions with SEBI, NSE/BSE and your broker.