hyperliquid.build
Measured market data for Hyperliquid's HIP-3 US-equity perps: spread and depth by trading session, an on-chain premarket board, listings changelog, taker flow, funding and macro-release reactions, with email alerts.
Context
Hyperliquid’s HIP-3 lets third parties deploy their own perp markets. The largest of them, xyz, lists US stocks, indices, commodities and a handful of pre-IPO companies, and it trades 24/7, including the hours when Nasdaq is closed.
Most Hyperliquid dashboards report volume and open interest. Neither tells you what it costs to actually trade a TSLA perp at 3 a.m. on a Sunday. hyperliquid.build answers that kind of question from measured order books, not from the exchange’s headline numbers.
The site is independent and not affiliated with Hyperliquid.
What is live
Two static sites plus one small Worker:
- hyperliquid.build carries the home page, a man-page style handbook of measured API behaviour, and the methodology.
- data.hyperliquid.build carries the dashboards:
- Liquidity. Spread, tiered depth and slippage per market, split by US session (regular hours, after-hours, overnight, weekend), with a cost calculator.
- Premarket board. What the on-chain price says overnight versus the real opening gap.
- Changelog and Pre-IPO board. Every market announced, listed, halted or delisted, diffed from daily universe snapshots.
- Flow. 24h taker buy and sell, concentration, and orders of $50k or more, rebuilt from individual fills.
- Funding. Hourly funding, measured against the neutral rate rather than against zero.
- Macro. How the markets reacted at 5 s, 5 min and the open after NFP, CPI, PPI, GDP, PCE, jobless claims and FOMC.
- Portfolio. A read-only wallet view. The browser talks to Hyperliquid directly, so addresses never reach my server.
- Accounts. Email plus a 6-digit code, and six kinds of email alerts. It runs on a Cloudflare Worker with D1 and sends from the site’s own domain.
Approach
Measure first, then publish
The data comes from my own collector, which has been recording 20-level order books about every six minutes since June 2026, plus trades, funding and asset context. A Python + Polars pipeline turns that into Parquet, then into JSON, then into static pages. A nightly cron rebuilds and deploys both sites. Separate jobs publish the premarket board at 09:05 ET and macro releases a few minutes after each print.
The home page headline comes straight out of that data: spread lies, depth tells the truth. Weekend spreads are often tighter than during regular hours, but depth within 25 bps drops by 3 to 5 times.
Every number gets a second derivation
Each pipeline is checked against an independently written script before it ships, and the review findings go back into a versioned spec. That habit caught real errors:
- Premarket. The opening price was sampled a few seconds too early, which inflated the hit rate by 1.5 points.
- Funding. A 24h window could hold 25 settlements, because settlements land a few milliseconds after the hour. Windows now use whole-hour buckets.
- Macro. Trade IDs are not in time order, and trade files can arrive up to nine hours late. Reaction prices therefore use receive order, and the page states the roughly 3 bp uncertainty at the 5-second mark.
Honest framing
The premarket board has a 9:00 ET call that matches the real opening gap 87.8% of the time (n = 3,473). Most of that comes from following ordinary US premarket trading, so the page says so. The 4:00 ET call, at 78.6% (n = 3,261), is the part only a 24/7 venue can provide.
The funding board treats 5.48% APR as neutral, because that is the base rate times the xyz multiplier. Only funding above that level counts as crowd premium. The macro board does not label prints as beats or misses, because there is no official consensus to compare against.
Results & What I Learned
Built and launched in the first days of October 2026:
- Every board listed above, plus accounts and alerts.
- 329 pipeline tests and 145 Worker tests.
- Every page checked at desktop and phone widths before deploy.
The lesson I keep relearning is that sampling artefacts look like findings. A grid-polled collector, a paginated API, or a timestamp that means something other than you assumed will each produce a clean, convincing pattern. Before any number goes on a page, I now write down what would make it wrong.
Tech Stack & Links
Stack: Python · Polars · Parquet · Cloudflare Pages · Cloudflare Workers · D1 · Email Routing · three.js · Playwright
Links: hyperliquid.build · data.hyperliquid.build