ob25_SOLUSDT
SOL order book 25 levels per side, once per second (first book update of each exchange second); lob_update_id joins to l2_* · core · 2026-08-21 — 2026-08-28 (8 days)
Schema
| Column | Type | Meaning |
|---|---|---|
| exchange | VARCHAR | `binance` for spot streams, `binance_futures` for f*-streams. |
| symbol | VARCHAR | Instrument. |
| timestamp_ms | BIGINT | Exchange event time of the diff that produced this top-of-book state, ms UTC. |
| recv_ms | BIGINT | Local receive time, ms UTC. |
| epoch | BIGINT | WebSocket session number. |
| ingest_seq | BIGINT | Arrival counter of the producing frame. |
| lob_update_id | BIGINT | final_id of the l2_* frame after which this state was taken — joins ob_* to l2_* exactly. |
| bid_px_1 | DOUBLE | |
| bid_px_2 | DOUBLE | |
| bid_px_3 | DOUBLE | |
| bid_px_4 | DOUBLE | |
| bid_px_5 | DOUBLE | |
| bid_px_6 | DOUBLE | |
| bid_px_7 | DOUBLE | |
| bid_px_8 | DOUBLE | |
| bid_px_9 | DOUBLE | |
| bid_px_10 | DOUBLE | |
| bid_px_11 | DOUBLE | |
| bid_px_12 | DOUBLE | |
| bid_px_13 | DOUBLE | |
| bid_px_14 | DOUBLE | |
| bid_px_15 | DOUBLE | |
| bid_px_16 | DOUBLE | |
| bid_px_17 | DOUBLE | |
| bid_px_18 | DOUBLE | |
| bid_px_19 | DOUBLE | |
| bid_px_20 | DOUBLE | |
| bid_px_21 | DOUBLE | |
| bid_px_22 | DOUBLE | |
| bid_px_23 | DOUBLE | |
| bid_px_24 | DOUBLE | |
| bid_px_25 | DOUBLE | |
| bid_qty_1 | DOUBLE | |
| bid_qty_2 | DOUBLE | |
| bid_qty_3 | DOUBLE | |
| bid_qty_4 | DOUBLE | |
| bid_qty_5 | DOUBLE | |
| bid_qty_6 | DOUBLE | |
| bid_qty_7 | DOUBLE | |
| bid_qty_8 | DOUBLE | |
| bid_qty_9 | DOUBLE | |
| bid_qty_10 | DOUBLE | |
| bid_qty_11 | DOUBLE | |
| bid_qty_12 | DOUBLE | |
| bid_qty_13 | DOUBLE | |
| bid_qty_14 | DOUBLE | |
| bid_qty_15 | DOUBLE | |
| bid_qty_16 | DOUBLE | |
| bid_qty_17 | DOUBLE | |
| bid_qty_18 | DOUBLE | |
| bid_qty_19 | DOUBLE | |
| bid_qty_20 | DOUBLE | |
| bid_qty_21 | DOUBLE | |
| bid_qty_22 | DOUBLE | |
| bid_qty_23 | DOUBLE | |
| bid_qty_24 | DOUBLE | |
| bid_qty_25 | DOUBLE | |
| ask_px_1 | DOUBLE | |
| ask_px_2 | DOUBLE | |
| ask_px_3 | DOUBLE | |
| ask_px_4 | DOUBLE | |
| ask_px_5 | DOUBLE | |
| ask_px_6 | DOUBLE | |
| ask_px_7 | DOUBLE | |
| ask_px_8 | DOUBLE | |
| ask_px_9 | DOUBLE | |
| ask_px_10 | DOUBLE | |
| ask_px_11 | DOUBLE | |
| ask_px_12 | DOUBLE | |
| ask_px_13 | DOUBLE | |
| ask_px_14 | DOUBLE | |
| ask_px_15 | DOUBLE | |
| ask_px_16 | DOUBLE | |
| ask_px_17 | DOUBLE | |
| ask_px_18 | DOUBLE | |
| ask_px_19 | DOUBLE | |
| ask_px_20 | DOUBLE | |
| ask_px_21 | DOUBLE | |
| ask_px_22 | DOUBLE | |
| ask_px_23 | DOUBLE | |
| ask_px_24 | DOUBLE | |
| ask_px_25 | DOUBLE | |
| ask_qty_1 | DOUBLE | |
| ask_qty_2 | DOUBLE | |
| ask_qty_3 | DOUBLE | |
| ask_qty_4 | DOUBLE | |
| ask_qty_5 | DOUBLE | |
| ask_qty_6 | DOUBLE | |
| ask_qty_7 | DOUBLE | |
| ask_qty_8 | DOUBLE | |
| ask_qty_9 | DOUBLE | |
| ask_qty_10 | DOUBLE | |
| ask_qty_11 | DOUBLE | |
| ask_qty_12 | DOUBLE | |
| ask_qty_13 | DOUBLE | |
| ask_qty_14 | DOUBLE | |
| ask_qty_15 | DOUBLE | |
| ask_qty_16 | DOUBLE | |
| ask_qty_17 | DOUBLE | |
| ask_qty_18 | DOUBLE | |
| ask_qty_19 | DOUBLE | |
| ask_qty_20 | DOUBLE | |
| ask_qty_21 | DOUBLE | |
| ask_qty_22 | DOUBLE | |
| ask_qty_23 | DOUBLE | |
| ask_qty_24 | DOUBLE | |
| ask_qty_25 | DOUBLE |
Conventions shared by all streams — UTC
milliseconds, integer prices, what side means where, how gaps are
marked and how to rebuild the book — are in the
data dictionary. The same text is
returned by GET /v1/schema/ob25_SOLUSDT and the MCP tool
get_schema.
Sample rows (demo hour)
The demo hour for this stream is not loaded yet — but the schema above is already the contract: columns and types will not change silently.
Work with this stream in the SQL console and the backtest runner — the data stays with us, the results go to you. Get access