Hyperliquid L4 Book
The Hyperliquid L4 Book data type provides order-by-order order book snapshots and updates with user attribution on the Hyperliquid L4 exchange.
Hyperliquid L4 Book
Overview
The Hyperliquid L4 Book data type provides a comprehensive, order-by-order view of the order book for a specific trading pair on the Hyperliquid L4 exchange. Each row represents a single order in the book or a change to an existing order, including the Hyperliquid user address, order type, time-in-force, and L4 status information.
[!NOTE]
This data type is available only for symbols on the
HYPERLIQUIDL4exchange. It extends the standard Full Limit Order Book format with Hyperliquid-specific fields.
File Organization
Hyperliquid L4 Book data is organized in the coinapi bucket using the structure below.
T-LIMITBOOK_FULL/
└── D-{YYYYMMDD | YYYYMMDDHH}/
└── E-HYPERLIQUIDL4/
└── IDDI-[IDENTIFIER]+SC-[COINAPI_SYMBOL_ID]+S-[EXCHANGE_SYMBOL].csv.gzExamples:
T-LIMITBOOK_FULL/D-2026060900/E-HYPERLIQUIDL4/IDDI-47427873+SC-HYPERLIQUIDL4_PERP_BTC_USDC+S-BTC.csv.gz
Where:
T-LIMITBOOK_FULL: Indicates the data type (Full Limit Order Book)D-{YYYYMMDD | YYYYMMDDHH}defines the time partition:YYYYMMDDincoinapi→ legacy daily partitions published before 2026-06-09YYYYMMDDHHincoinapi→ hourly partitions for data published on or after 2026-06-09
E-HYPERLIQUIDL4: Hyperliquid L4 exchange identifierIDDI-[IDENTIFIER]: CoinAPI's internal identifierSC-[COINAPI_SYMBOL_ID]: CoinAPI's symbol identifierS-[EXCHANGE_SYMBOL]: The symbol as identified by the exchange
File Format
Files are in CSV format, compressed with gzip. Each row represents a single order book update.
Data Fields
| Column Name | Type | Description |
|---|---|---|
| time_exchange | datetime | UTC timestamp of the update provided by the exchange or estimated using the exchange API delay. |
| time_coinapi | datetime | UTC timestamp when CoinAPI first received the update. |
| update_type | string | Describes the order book operation. See Update Types Explained for definitions. |
| is_buy | boolean | Indicates if the update is related to the bid side of the book. 0 for ask (sell), 1 for bid (buy). |
| entry_px | decimal | Price of the order. |
| entry_sx | decimal | Current size of the order. |
| order_id | string | Exchange-provided order identifier. |
| user | string | User or account identifier associated with the order, as provided by Hyperliquid. |
| tif | string | Time-in-force value. Examples: Alo, Gtc, Ioc. |
| reduce_only | boolean | Indicates whether the order is reduce-only. 0 for false, 1 for true. |
| order_type | string | Order type. Examples: Limit, Market, Take Profit Limit, Take Profit Market, Stop Market, Stop Limit. |
| cloid | string | Client order identifier, when provided by the exchange. |
| orig_size | decimal | Original order size at placement. |
| trigger_condition | string | Human-readable trigger condition. N/A for regular orders. Examples: Price above 65000 or Price below 65000 for stop, take-profit, or stop-loss orders. |
| is_trigger | boolean | Indicates whether the order is a stop, take-profit, or stop-loss order that will activate when trigger_px is reached. 0 for regular limit orders. |
| trigger_px | decimal | Price at which a trigger order activates. 0.0 for non-trigger orders. |
| is_position_tpsl | boolean | Indicates whether the order is a take-profit or stop-loss that applies to an entire position, rather than a specific order. |
| children_oids | string | Comma-separated list of order IDs for bracket child orders attached to the parent order. Empty when no children are attached. |
| is_child | boolean | Indicates whether the order is a child order in a bracket. 0 for parent orders, 1 for child orders. |
| hl4_status | string | Hyperliquid L4 order status. Present on incremental updates only. See hl4_status Values for definitions. Empty on SNAPSHOT rows. |
Example Data
Snapshot rows establish the initial order book state:
time_exchange;time_coinapi;update_type;is_buy;entry_px;entry_sx;order_id;user;tif;reduce_only;order_type;cloid;orig_size;trigger_condition;is_trigger;trigger_px;is_position_tpsl;children_oids;is_child;hl4_status
00:00:00.0050246;00:00:00.7751290;SNAPSHOT;0;63058.0;0.00362;463141850511;0x388d9e1ccaec74527f73f8c87b5928ba28c06c03;Alo;0;Limit;0x00000000000000000000019e9681853a;0.00362;N/A;0;0.0;0;;0;Incremental update examples:
00:00:00.0050246;00:00:00.8864830;SET;0;63123.0;0.026;463141856202;0xf5dd745bcf393686ceffb6a43f7e7b4c172aefad;Alo;0;Limit;0x57f9b690afe6937760d553b17a3aebc4;0.026;N/A;0;0.0;0;;;OPEN
00:00:00.0050246;00:00:00.8340728;DELETE;0;63072.0;0.01138;463141848401;0x31ca8395cf837de08b24da3f660e77761dfb974b;Alo;0;Limit;;0.01138;N/A;0;0.0;0;;;CANCELED
00:00:00.0050246;00:00:00.8889144;REJECTED;0;63057.0;0.52335;463141856209;0x2cffce91b4e0c81df18726ff66b31b2b1545e1ad;Alo;0;Limit;0x20e929c95def00cf6b53743265be0100;0.52335;N/A;0;0.0;0;;;REJECTED_ALOData Collection Process
- We maintain a real-time connection to the Hyperliquid L4 exchange.
- Every change to the order book is captured and recorded with full order-level detail.
- The data is processed, normalized, and stored in our system.
- Data is uploaded to the
coinapibucket as hourly partitions for data published on or after 2026-06-09. Legacy daily partitions published before that date remain incoinapi. Thecoinapi-daily-tailbucket receives daily files for the previous day only and retains them for 24 hours.
Update Types Explained
SNAPSHOT: Provides a full snapshot of the order book. All previous data should be discarded before processing aSNAPSHOT.SET: Order accepted and placed in the book.DELETE: Order removed from the book. Seehl4_statusfor the removal reason.REJECTED: Order rejected. Seehl4_statusfor the rejection reason.PENDING: Order is pending activation (for example, a trigger order waiting for its trigger price).
hl4_status Values
hl4_status is present on incremental updates only, alongside update_type. Snapshot rows leave this field empty.
| Value | Description |
|---|---|
OPEN | Order accepted and placed on the book. |
FILLED | Order fully executed. |
CANCELED | Order canceled by the user. |
TRIGGERED | Stop/TP/SL trigger order was activated and executed. |
REDUCE_ONLY_CANCELED | Canceled because it would increase position size (reduce-only constraint). |
SELF_TRADE_CANCELED | Canceled to prevent self-trading against own orders. |
SIBLING_FILLED_CANCELED | OCO bracket — canceled because its sibling order was filled. |
MARGIN_CANCELED | Canceled by the risk engine due to insufficient margin. |
VAULT_WITHDRAWAL_CANCELED | Canceled due to a vault withdrawal reducing available balance. |
LIQUIDATED_CANCELED | Canceled as part of a liquidation process. |
REJECTED_ALO | Rejected — Add Liquidity Only order would have crossed the spread. |
REJECTED_MARGIN | Rejected — insufficient perpetual margin. |
REJECTED_IOC | Rejected — Immediate-or-Cancel order could not be filled immediately. |
REJECTED_BALANCE | Rejected — insufficient spot balance. |
REJECTED_REDUCE | Rejected — reduce-only order would not reduce position. |
REJECTED_MIN_NTL | Rejected — order size below minimum notional value. |
REJECTED_ORACLE | Rejected — oracle price deviation too large. |
REJECTED_OI | Rejected — would exceed open interest limit. |
Corner Cases and Special Considerations
- Snapshots: Snapshots are provided at the start of each day or after a disconnection. Always process
SNAPSHOTupdates by clearing the existing book first. - Bracket Orders: Parent orders may reference child orders via
children_oids. Child orders are identified byis_child=1. - Trigger Orders: Stop, take-profit, and stop-loss orders include
trigger_condition,is_trigger, andtrigger_pxfields. - High Frequency Updates: During periods of high volatility, you may observe a very high frequency of updates.
Usage Tips
- To reconstruct the full order book, process updates sequentially, maintaining the state of the book in memory.
- Use the
time_exchangefield for accurate sequencing of updates. - Pay attention to the
update_typeandhl4_statusfields to correctly apply changes to your local order book representation. - Use the
userfield to analyze order book composition by Hyperliquid account.
For any questions or issues with the Hyperliquid L4 Book data, please contact our support team.
Full Limit Order Book
The Full Limit Order Book data type provides a comprehensive view of the order book for a specific trading pair on an exchange.
Limit Order Book Snapshot 50
Fifty-level order book snapshots derived from the full limit order book, recording the top 50 bid and ask levels at one-minute intervals.