OHLCV Timestamp, Gap and Duplicate Validator
Find duplicate times, missing intervals and inconsistent candles before analysis.
The hypothetical file contains times 00:00, 00:01, a repeated 00:01 and 00:03 UTC at a one-minute interval. It has one duplicate timestamp and one missing interval. Its last row also has high 99 while open and close are 100, so one OHLC row is invalid. Four input rows remain visible in the audit.
What this helps you check
An indicator can look precise even when its candle file contains repeated or impossible rows. This validator audits timestamps, OHLC relationships and volume, while checking gaps on unique valid times. It preserves the original row order and identifies data issues instead of manufacturing replacement candles.
A missing interval identifies a gap in this file, not its cause. No-trade periods, extraction limits and provider behavior need separate investigation. An open or unknown latest-bar state is flagged; structural checks cannot prove that the final bar is complete or that the history is exhaustive.
Your worksheet
No account connection requiredInputs are processed in your browser by this calculator. There is no quote lookup or file upload for the calculation. Site measurement and consent are handled separately by the site's privacy and consent controls.
CSV schema: timestamp (iso8601), open (number), high (number), low (number), close (number), volume (number). Header required; comma delimiter. Numeric fields use decimal points. Timestamps require Z or a numeric UTC offset. The original input remains unchanged.
Interactive calculation requires JavaScript. The method and hypothetical worked example below remain readable.
Your result
Calculated from supplied values. See the notes and boundaries before interpreting the result.
Check the example by hand
The hypothetical file contains times 00:00, 00:01, a repeated 00:01 and 00:03 UTC at a one-minute interval. It has one duplicate timestamp and one missing interval. Its last row also has high 99 while open and close are 100, so one OHLC row is invalid. Four input rows remain visible in the audit.
- Input rows
- 4
- Duplicate timestamps
- 1
- Missing intervals
- 1
- Invalid OHLC rows
- 1
Exact example inputs
{
"interval_minutes": "1",
"last_bar_state": "unknown",
"csv": "timestamp,open,high,low,close,volume\n2026-01-01T00:00:00Z,100,102,99,101,5\n2026-01-01T00:01:00Z,101,103,100,102,4\n2026-01-01T00:01:00Z,101,103,100,102,4\n2026-01-01T00:03:00Z,100,99,98,100,1"
}The example is invented to demonstrate the method. It is not a current market quote, a provider's fee schedule or verified trading performance.
How the worksheet works
- All finite OHLC prices>0 and volume>=0. Require high>=max(open,close,low) and low<=min(open,close,high).
- Count later repeated valid timestamps as duplicates.
- For gap analysis use unique valid timestamps regardless of independent OHLC validity, sorted chronologically; preserve original row order in the audit.
- For adjacent timestamps, delta/interval must be a positive integer; missing_count adds delta/interval-1; off-grid intervals receive a warning rather than a fabricated gap count.
- Flag original input out-of-order timestamps; do not silently rewrite or create candles.
- Open or unknown last-bar status generates explanatory warning, not a claim of confirmed completeness.
A missing interval identifies a gap in this file, not its cause. No-trade periods, extraction limits and provider behavior need separate investigation. An open or unknown latest-bar state is flagged; structural checks cannot prove that the final bar is complete or that the history is exhaustive.
Boundaries to keep in view
- Only fixed-duration intervals; no calendar-month or local-DST interval assumptions.
- No-trade periods can legitimately be absent depending on source.
- No fabricated candle, ATR, aggregation or source-quality rating.
- The audit is local and does not fetch market history.
Compare resources for this task
Candle-quality review starts with schema and timestamp semantics. Chart exports, exchange developer documents and libraries describe different coverage and data behavior; each needs to be understood before a raw file becomes an analytical series.
Official sources and scope
The sources document formats, mechanisms or record workflows. The arithmetic and editorial comparison on this page use the supplied worksheet definitions.
- CCXT official manual
OHLCV gaps can mean no trades rather than erroneous data; developer library and schema reference.
Reference checked 2026-10-01. Consult the source for current product rules. - Binance official kline schema
Klines have open-time identifiers, intervals and explicit time-zone semantics.
Reference checked 2026-10-01. Consult the source for current product rules. - Kraken OHLC schema
Latest record is an unfinished timeframe; endpoint history is limited.
Reference checked 2026-10-01. Consult the source for current product rules. - Coinbase candles schema
Product candle records grouped into time buckets; developer documentation.
Reference checked 2026-10-01. Consult the source for current product rules. - OKX API schemas
Order-book quantities, instrument units and candle completion states; developer documentation.
Reference checked 2026-10-01. Consult the source for current product rules. - TradingView chart CSV
Export loaded chart data to CSV; not all historical data are automatically included.
Reference checked 2026-10-01. Consult the source for current product rules.