tessera-analytics/hyperliquid-ohlcv-1m
Tessera Analytics Hyperliquid Order-Flow OHLCV (1-minute) — free sample A growing monthly sample of gold_ohlcv_1m, the order-flow-enriched 1-minute OHLCV dataset served by Tessera Analytics: open / high / low / close and volume for every minute, plus the order-flow context raw candles can't show — the aggressor buy/sell volume split, cumulative volume delta (CVD), distinct taker counts, taker fees and realized PnL, and the hourly forward-filled funding rate. Coverage: BTC, ETH… See the full description on the dataset page: https://huggingface.co/datasets/tessera-analytics/hyperliquid-ohlcv-1m.
Tessera Analytics Hyperliquid Order-Flow OHLCV (1-minute) — free sample
A growing monthly sample of `gold_ohlcv_1m`, the order-flow-enriched 1-minute OHLCV dataset served by Tessera Analytics: open / high / low / close and volume for every minute, plus the order-flow context raw candles can't show — the aggressor buy/sell volume split, cumulative volume delta (CVD), distinct taker counts, taker fees and realized PnL, and the hourly forward-filled funding rate.
Coverage: BTC, ETH, SOL, HYPE · 2026-08 → 2026-08 (UTC, month-grained) · 178,506 rows · 25 columns · 1-minute bars, one gzipped CSV per coin per month (ohlcv_1m_<COIN>_<YYYY-MM>.csv.gz). A new month is appended a few days after it closes.
Source & provenance
Produced by the Tessera Analytics gold pipeline (Rust workers orchestrated by Dagster): raw Hyperliquid L1 trade and funding data is ingested nightly from the Hyperliquid node archive, transformed through bronze → silver → gold stages, and published as Parquet. Each month's file is exported from the same production partition the API serves once that partition is final — the sample is refreshed monthly (appended, never truncated); the live API gets nightly updates. Per-month revisions are tagged (v<YYYY-MM> of the push that first added that month).
Quickstart
Load locally (the sample is plain gzipped CSV):
import polars as pl
df = pl.read_csv("ohlcv_1m_BTC_*.csv.gz")
print(df.select("time", "close", "cvd").tail())Or pull live data with the official `tessera-api` Python SDK (free API key, no card, at tesseralytics.dev):
import tessera
client = tessera.TesseraClient() # reads $TESSERA_API_KEY
df = client.read("gold_ohlcv_1m", "BTC", "2026-05")
print(df.select("time", "close", "cvd").tail())The MCP server exposes the same datasets to Claude and other MCP clients; the full dataset catalog is at tesseralytics.dev/datasets.
Data dictionary
time is the start of the minute (UTC; each bar covers [time, time+1min), so lag one bar before joining to point-in-time data). All columns are non-null.
Known gaps
Scattered minute-level gaps — 54 missing minutes of 178,560 (0.03%) so far, where the upstream Hyperliquid node archive had no data. No hour is fully missing.
Limitations
- Sample window: this sample starts 2026-08 and grows month by month; the full dataset on the API has complete multi-month history (from October 2025). The first sample month's CVD / funding state is already stitched to the prior month's, so running-state columns are continuous even where the sample itself begins mid-history.
- Running state (
cvd,funding_rate) is per-coin continuous across appended months. - Fees, realized PnL, funding, and open/close leg volumes reflect Hyperliquid's taker/maker model only — this is DEX perp data, not CEX data.
Go beyond the sample
Pro ($29/mo) unlocks the full history (from October 2025) plus all coins — including HIP-3 markets — and the gold_funding_1h and gold_positioning_1h datasets, via the same API. Free tier: gold_ohlcv_1m for BTC/ETH/SOL/HYPE, trailing 30 days, free key at tesseralytics.dev.
Citation
Derived from raw Hyperliquid L1 data, processed and served by Tessera Analytics (https://tesseralytics.dev). Terms: https://tesseralytics.dev/terms — data is provided "as is", nothing here is financial advice.
