Skip to main content

Volatility data

The vol surface, as a clean timeseries.

Constant-maturity implied volatility at every tenor and delta, alongside realised volatility over matching lookbacks, for BTC, ETH and other crypto underlyings on Deribit, OKX, Binance and Bybit. The same data behind Sandmark’s own analytics, delivered as JSON over a simple REST API.

What you get

Implied volatility

Continuous IV for 9 tenors from 1 day to 1 year and 10 delta points per side. Interpolated in total variance, so the series never jumps when an expiry rolls off.

Realised volatility

Annualised RV of the underlying index over 9 rolling lookbacks, from 1 to 365 days. Line it up against IV of the same horizon to read the variance premium.

Reference data

The assets, sampling frequencies and listed expiries you can query, so your code never has to hard-code an identifier.

History window

Up to three years of hourly history, depending on your billing plan.

Backtesting add-on

Run options strategies over history with one request: equity curve, every trade and full statistics, as JSON, an HTML report or Excel.

Conventions

These hold for every endpoint. They’re worth reading once before you write any code.
0.37 means 37%. Multiply by 100 to get the vol points shown on trading screens.
Timeseries rows are ordered by DATETIME, newest first. limit therefore keeps the most recent rows in your range. See Paging through history to walk further back.
Every DATETIME is the bar close in UTC, ISO 8601 with a Z suffix. Query parameters accept any ISO 8601 timestamp; one without an offset is read as UTC.
IV is read from the IV_MARK surface unless you ask for another one with iv_source_col. Keep one surface for a whole analysis: the two published surfaces differ slightly on every point.
If no observation exists for an hour, there is no row for it. Nothing is carried forward or interpolated across time.

Base URL

Every request needs your API key in the X-API-Key header. See Authentication.