Options Data - free NIFTY 1-second sample (optionsdata.shop)

Trading day: 2026-09-10 (bars from 09:15:00 to 15:30:00 IST)
Files:
  NIFTY_OPT_1sec_2026-09-10_exp2026-09-15.parquet: 474,857 rows, 11 strikes, 22 contracts
  NIFTY_OPT_1sec_2026-09-10_exp2026-09-22.parquet: 333,125 rows, 11 strikes, 22 contracts
  NIFTY_SPOT_1sec_2026-09-10.parquet: 22,499 rows

Option files: cut from the paid 1-second files for the same day to strikes 23200-23700
(+/-250 points around the day's median ATM strike, 23450). Paid files carry every strike
held for that expiry. Columns and values are otherwise exactly as in the paid files:
  datetime, stock_code, exchange_code, product_type, expiry_date, strike_price, right,
  open, high, low, close, volume, open_interest
  One row per contract per second in which the source returned a 1-second bar. Seconds with
  no bar are absent (not forward-filled).
Spot file (complete day, unmodified): timestamp, open, high, low, close, volume (always 0 for
the index), atm_strike, straddle, straddle_iv.
  atm_strike  = among strikes where both the nearest-expiry CE and PE have a bar that second,
                the one with the smallest |CE close - PE close|
  straddle    = CE close + PE close at atm_strike
  straddle_iv = mean Black-Scholes IV of that CE and PE (r = 6%), percent

No Greeks, no bid/ask, no tick-by-tick prints. Open with pandas, polars, DuckDB or any Parquet reader.
How the 1-second files are built: https://optionsdata.shop/guides/how-nifty-1-second-data-is-built
NIFTY 1-second packs: https://optionsdata.shop/data/nifty-options-1-second-data
