Skip to content
LearnHyperCore8 pages
HyperCore overviewFoundationHyperCore is where Hyperliquid's order books, margin, clearing and settlement run as native protocol state, applied by every validator in one order.The clearinghouse: one margin enginePractitionerHyperCore's clearinghouse holds balances and positions and checks margin on every trade; in standard mode each perp dex has its own balance and cross margin.The order book and matchingPractitionerEach HyperCore asset has one on-chain book matched in price-time priority, with cancels and post-only orders sequenced ahead of orders that take liquidity.Oracles, mark prices and robust price indicesPractitionerValidators publish perp oracle prices every 3 seconds; the mark price used for margin and liquidation is a median that no single book or venue can move.Quote assets: USDC, USDH, aligned and permissionlessPractitionerAny token can become a HyperCore quote asset if its issuer stakes 200k HYPE against a peg and liquidity standard; aligned issuers also share reserve yield.Vaults: HLP, protocol vaults, user vaultsFoundationA vault pools depositors' USDC into one HyperCore account run by one strategy; HLP is the protocol vault that makes markets and performs liquidations.Multi-sig accountsPractitionerHyperCore can make any account a native k-of-n multi-sig with no smart contract, but CoreWriter stops working for it and its HyperEVM side keeps the old key.API servers and how state reaches youPractitionerAPI servers follow a node, keep a local copy of HyperCore state, answer reads from it, and reply to a transaction only once it executes in a committed block.

Options on the borrow rate

Expert

A research track priced the HyperCore USDC borrow rate with HIP-4 scalar bands, listed them on somebody else's perp, and found owning the perp does not pay.

The HyperCore USDC borrow rate floats, and nothing on Hyperliquid lets you fix it. The track built an index on the rate and a ladder of HIP-4 scalar bands across its kink: buy a band to fix part of a cost, sell one to lock a yield. The deciding test, listing on a perp somebody else deployed, passed.

The rate is 0.05 + 4.75 * max(0, u - 0.8) a year on utilisation u, accrued continuously and indexed hourly. Past 80 per cent, each point of utilisation adds 475 basis points. Every borrower, including portfolio-margin accounts that borrow automatically, is short a call on utilisation.

Say utilisation rises from 80 to 81 per cent:

  • The rate goes from 5.00 to 9.75 per cent.
  • The index, quoted as 100 - rate, falls from 95.00 to 90.25.
  • Settled there, the 90 to 95 band pays Long (90.25 - 90) / (95 - 90) = 0.05 and Short 0.95 per contract.

This is the rate-futures convention: 5 to 25 per cent maps to 95 to 75. A HIP-3 rule forced it. An externalPerpPx move over 50 per cent from the start-of-day price triggers a validator slashing review, and assets expected to do that more than once a month cannot be cross margined. Through the kink, 5 to 10 per cent is +100 per cent as a rate but 5.3 per cent as 95.00 to 90.00.

  • It tracks the hourly-indexed realised accrual, not an average of the instantaneous rate, so a hedge is exact.
  • It recomputes the rate from utilizationBps rather than trusting borrowYearlyRateBps, so divergence is detected. Five gates fail closed on degenerate inputs.

Each band is a fully collateralised call spread

Section titled “Each band is a fully collateralised call spread”

No liquidation, no auto-deleveraging. A scalarPrice Long pays (price - low) / (high - low) clamped to 0 to 1 and Short pays 1 minus that, on a TWAP of the named perp over a stated window. Adjacent bands replicate a payoff curve far better than as many single strikes.

A Long band is short the rate: borrowers hedge with Short, suppliers lock a yield with Long. The kink at 95.00 is steep: the 90 to 95 band covers rates of 5 to 10 per cent, utilisation of 80 to about 81.05 per cent. See market shapes.

The template accepts somebody else’s perp

Section titled “The template accepts somebody else’s perp”

The project hinged on one keyword. scalarPrice names its underlying through hlPerp; if it rejected a builder-deployed dex:COIN, only a rate perp would remain. The docs hinted : was allowed, but mainnet had 0 scalarPrice outcomes among 228 active.

Proven by the track’s own transaction:

Evidence Finding
Shared type scalarPrice, binaryPrice and priceTouch all declare perp as hlPerp on mainnet; validation is per keyword type
Already used 35 of 228 live mainnet outcomes carried a dex-prefixed hlPerp value
Own markets Four testnet scalars on a builder-deployed US 10-year Treasury yield perp, accepted first time and read back from outcomeMeta: bands 4.5 to 4.75, 4.75 to 5, 5 to 5.25 and 5.25 to 5.5, expiring 2026-10-15 at 16:00 UTC, on the 3,600-second TWAP
Testnet template scalarPrice3 instead of scalarPrice, with the same keywords, name and side names

An outcome deployer need not own the perp dex: all three mainnet outcome venues on the largest builder-deployed dex were third parties to it.

uDecimal values forbid trailing zeros: 95.000 signs and prints normally but is refused on submission; 95 is accepted.

Smoothing sets how long an attacker must hold, not whether they can. Routes to the kink against the 2026-09-20 reserve:

Route to the kink Capital Marginal cost to hold 8 hours
Borrow until utilisation reaches 80% 55.8 million USDC borrowed, plus 87.3 million USD of HYPE collateral at 0.65 LTV about 3,110 USD of interest
Borrow further, to a 6.00% rate 56.8 million USDC 9,300 USD of borrowing per extra basis point
Withdraw own supply until utilisation reaches 80% 69.8 million USDC about 1,958 USD of forgone yield
Withdraw further, to a 6.00% rate 70.8 million USDC 9,788 USD of withdrawal per extra basis point

Withdrawal fits one account under the 250 million USDC per-user supply cap; borrowing needs two (50 million USDC per-user borrow cap). A holder of Q dollars of a bounded side gains at most Q, so with hurdle h on committed capital C held for t, and safety multiple k:

Q_max = C * h * t / k

At a 20 per cent hurdle and 3x safety, defending 10 million USD needs over 900 days. The real lever is reserve depth, which no deployer controls and which is thinnest near the kink, where the capital to cross 80 per cent collapses towards zero.

The HIP-3 stake cannot be earned back in fees. 500k HYPE, held at least 183 days after the dex is deployed and burned if validators vote to slash, needs the month-defensible book to turn over 187 times a day; a liquid perp turns over a few times. No row of the cost schedule (HYPE 45.69 to 182.75 USD, hurdles of 5, 10 and 20 per cent) closes the gap, even with slashing unpriced.

The testnet deploy failed on collateral, not stake: with 205 HYPE staked, registerAsset2 returned Invalid perp DEX for USDC and Collateral asset not supported for five other tokens. The deploy auction stood at 500 HYPE against 0.4 HYPE on the account.

Quantity Value Basis
Borrow rate curve 0.05 + 4.75 * max(0, u - 0.8) a year docs; spec 01
Rate at 80%, 90%, 100% utilisation 5.00%, 52.5%, 100% computed from the curve
Supply rate identity borrow * u * 0.9; 500 x 0.6736 x 0.9 = 303 bps spec 01; spec 02
Live reserve, 2026-09-20 5.00% borrow, 3.03% supply, 67.36% utilisation; 441.7 million USDC supplied, 297.6 million borrowed spec 01
Index quote 100 - rate; kink at 95.00 spec 01
Mainnet templates, testnet templates 18 and 66; scalarPrice on mainnet only spec 01, 2026-09-20
Live outcomes with a dex-prefixed hlPerp 35 of 228 spec 01
scalarPrice outcomes on mainnet 0 of 228 spec 01
Defensible open interest, 8-hour window 3,296 USD spec 01 (20% hurdle, 3x safety)
Defensible open interest, month window 296,677 USD spec 01
HIP-3 stake 500k HYPE, at least 183 days, burned if slashed docs
Stake at 91.25 USD a HYPE 45.6 million USD spec 01
Carry at a 10% hurdle 4.6 million USD a year spec 01
Breakeven volume, 0.045% fee, 50% deployer share 55.6 million USD a day spec 01
Turnover of the defensible book to break even 187 times a day spec 01
HIP-4 mainnet limits 100 active outcomes, 500 new a day digest 02

Listing on an existing perp removes the HIP-3 stake, oracle liability and slashing, but makes you a HIP-4 deployer: 500k HYPE on mainnet unless you list from an existing venue, and the duty to compute the TWAP and submit it with exactly matching names.

A rate underlying already existed, contrary to the brief: a US 10-year Treasury yield perp on mainnet, quoted as the yield in percent, with open interest. Every rate and volatility underlying found had cross margin off.

History has to be collected. There is no historical 0x812 reserve state, so a sampler records the reserve on a fixed grid while the index is tested on synthetic and adversarial series.

Orders are not delayed either, contrary to the docs: see one HyperEVM transaction.

Open question Detail
The underlying is not the HyperCore rate No borrow-rate perp exists, so the cheap path uses an external rate such as a Treasury yield
A halt on somebody else’s perp An oracle the lister does not control; its effect on live bands is not written down
Validator acceptance of a rate as a HIP-3 underlying Slashing guidance does not reach index choice, and no probe returns a stake-weighted judgement; matters only if the perp is revived
Reflexivity Whether a borrow-rate perp changes borrowing is unmodelled, and a fair reason for validators to decline
Real history The smoothing window cannot be validated until the sampler has run several multiples of it
What would flip the verdict A much lower HIP-3 stake (the HIP-3 page expects a decrease; at 50k HYPE breakeven falls tenfold), or an order of magnitude more depth in the HyperCore USDC reserve

For the hlPerp bridge, see How the HIPs compose; for stake cost and slashing, Deployer economics and risk.