Check it against your own data.
Real production rows, not a mock-up — the same file contents a paying customer receives. No signup, no sales call. Load it, compare it against whatever source you already trust, and decide from evidence.
- underlying
- ETH
- date
- 2026-07-14
- window
- 12:00–14:00 UTC
- format
- Parquet · zstd
- size
- 2.3 MB
What you can check with it
Every column on the schema page, with real values and real nulls. Confirm dtypes, units and nullability before you write a loader.
Mark, bid and ask IVs and the Greeks are the exchange's own published values, captured at the snapshot instant. If you hold an independent source for this window, they should line up row for row.
You'll find nulls in bid_iv on illiquid strikes. That's the
exchange publishing no bid, stored as null rather than filled with a value
nobody quoted.
Count distinct timestamps and check the spacing yourself. Then read coverage, where every gap over five minutes is listed with its UTC timestamps.
Loading it
import pandas as pd
df = pd.read_parquet("volar-sample-ETH-2026-07-14.parquet")
print(df.dtypes)
print(df.timestamp.nunique(), "snapshots")
import duckdb
duckdb.sql("""
SELECT instrument, mark_iv, bid_iv, ask_iv, delta
FROM 'volar-sample-ETH-2026-07-14.parquet'
WHERE type = 'call'
LIMIT 20
""").show()