Equity Perpetuals
What Equity Perpetuals are.
Equity perpetuals are linear contracts margined and settled in USDC. The oracle is denominated in USD, and no USDC/USD conversion is applied. Economic exposure is therefore quanto with USD P&L cash-settled in USDC. All XYZ perps are currently isolated-margin only; support for cross-margin will be added in the future.
Listed on the XYZ HIP-3 deployment, XYZ perpetuals' matching, order types, funding, liquidations, and auto-deleveraging are provided by HyperCore. Two components are bespoke: the oracle price and the mark price. The XYZ relayer transmits oracle and mark price updates approximately every 3 seconds.
Mark Price
The mark price—used for margining, liquidations, stop/limit triggers, and unrealized P&L—is the median of three components:
The oracle price.
The sum of the oracle price and a 150-second continuous-time exponentially weighted moving average of the difference between the perpetual's mid-price and the oracle price.
The median of the best bid, best ask, and last trade.
In each update, the relayer publishes (1) and (2). The Hyperliquid protocol computes (3) and takes the median of the three components as the mark.
Relayer updates are clamped to ±50 bps of the current value to mitigate significant price jumps. This applies to components (1) and (2) of the mark price, which are clamped to the current mark, as well as the oracle price.
More information on the EMA implementation can be found in the internal pricing section below.
Oracle Price
The oracle serves two critical functions: (i) as the reference price for funding and (ii) as a direct input to mark price calculation.
The key unlock for equity perpetuals is extending the oracle to operate 24/7, beyond external trading sessions of the underlying asset. To achieve this, the system prioritizes external pricing and employs a robust internal mechanism when external data is unavailable.
External Pricing
During active sessions, the oracle consumes price data for the underlying asset from institutional liquidity providers, through partners such as Pyth. Instrument-specific details for external price derivation can be found in their respective section. When available, fresh externally-derived spot prices are transmitted as the oracle price in relayer updates.
Internal Pricing
When external inputs are unavailable, the oracle advances via a continuous-time exponentially weighted moving average that incrementally adjusts the previous oracle price by a fraction of the impact price difference.
With oracle price S the impact price difference (IPD) is defined as:
where the impact bid price (PimpactBid) and impact ask price PimpactAsk are the average execution prices to trade a configured impact notional amount on the bid and ask sides of the orderbook, respectively. If insufficient depth exists on a side, that side's contribution is set to zero.
The oracle is robust to irregular updates and market halts. It uses a time constant τ=1 hours and updates as:
where Δt∗=min(Δt,cτ), Δt=t−tprev, and c=0.1 (so 1−βt≤1−e−0.1≈9.5%).
Note: This provides the more general form of the continuous-time EMA. Component (2) of the mark price samples the basis (xt=St−Pmid,t) with a time constant τ=150 seconds.
When external data becomes unavailable, the internal mechanism initializes from the last available external price. When external inputs resume, the oracle reverts to the externally derived spot on the next tick.
Last updated
Was this helpful?

