Coverage & completeness
An archive that states its limits is more useful than one that pretends to be exhaustive. Everything on this page is exposed as structured fields in the data itself: your code can check it, not just your eyes.
Coverage windows
- Archive: markets resolving from May 2026 onward (the manifest’s
coverage.firstExpiryMsis authoritative). - Odds history: capture began June 2026. Markets resolved before then
have
oddsMeta.points: 0. - Validator votes: event markets only, and only where the action was
recorded while it was live. Price markets settle from the oracle and have no
vote at all. Check
settlementApplicable, thensettlementCaptured(see below).
Odds
Hyperliquid does not serve historical odds at all: this series exists only
because Hypersight sampled each market’s YES mid every ~5 minutes while it was
live, and the chain purges the market afterwards. That has two honest
consequences, both visible in oddsMeta:
| Field | Meaning |
|---|---|
points | Number of samples |
firstTs / lastTs | The captured range (epoch ms) |
gaps | Capture interruptions longer than 15 minutes: [{ "fromTs", "toTs" }] |
complete | true when the captured range has no interruption |
complete: true speaks for the captured range only. It does not claim the
range covers the market’s whole life. Combine firstTs with the market’s own
timestamps if you need wall-to-wall coverage.
A gap means our indexer was down or the market settled during an outage. Those minutes are unrecoverable: the chain kept no copy.
Validator votes
Hyperliquid’s settlement-vote feed is in-flight only: votes vanish from the node API the moment an action finalizes. Hypersight freezes them (with each validator’s name and stake weight at vote time) while the action is live.
Two fields, answering two different questions. Read them in order:
settlementApplicable- whether this market class settles by validator vote at all. Price markets settle from the oracle and never carry a settlement action, so this isfalseon every one of them, and thesettlementCapturednext to it isfalseby construction. Nothing is missing there.settlementCaptured- whether we hold the voter set. Only meaningful whensettlementApplicableistrue.falsemeans the votes were never captured (capture started after the market settled, or the action finalized during an indexer gap). It does not mean nobody voted.
On event markets, where the vote exists, the archive holds the voter set for
the large majority (269 of 313 at the time of writing). The rest finalized
before anyone recorded them and left no trace anywhere: that cannot be improved
retroactively. Where settlementCaptured is true, the voter set is the only
surviving copy.
Volume
totalVolume is lifetime traded volume in USDC, single-counted, measured over
each market’s whole life rather than accumulated live, so it is exact rather
than drift-prone.
0 means no trading was recorded, and on multi-outcome markets that is
usually the literal truth: the fallback leg (labelled Other) only pays if the
oracle fails, so nobody buys it, and extreme price buckets often close without
a single trade. Those markets are complete, not missing.
Scores
Final scores on sports events are snapshotted at settlement from public
scoreboard data and survive independently of the chain. null means the event
was not a sports fixture.