Mark Price vs Oracle Price vs Last Price
Why Hyperliquid uses multiple prices for trading, funding, PnL, and liquidation.
A perpetual market can display several prices at once because execution, external reference pricing, and risk management are different jobs. Hyperliquid separates the last traded price, oracle price, and mark price so one fragile data point does not control every part of the market.
Last price tells you where the most recent trade happened
The last price is the price of the latest executed trade on the local market. It is useful for charts and immediate market context.
It is also easy to overinterpret. One small trade can occur away from broader fair value when liquidity is thin, spreads widen, or the market moves quickly.
Using the last price alone for liquidation would allow a single local print to have an outsized effect on leveraged accounts.
Oracle price brings in an external reference
Hyperliquid validators publish oracle prices using external market data under the protocol's oracle rules. The oracle provides a reference that does not depend only on Hyperliquid's own latest trade.
This reference is important for funding and for constructing more robust risk prices.
Oracle data can still lag very short market moves because updates occur on a schedule and source markets can move between updates. An oracle is therefore a reference system, not an instant perfect price.
Mark price is built for risk calculations
Mark price is the price Hyperliquid uses for important account calculations such as unrealized profit and loss, margin, liquidations, and trigger behavior where specified.
It combines multiple components, including oracle based information and local market signals, with protocol rules designed to reduce sensitivity to a single bad input.
The goal is not to forecast where the market will trade next. The goal is to provide a more robust value for risk accounting.
Robust Price Indices and Oracles covers the broader design.
Divergence is normal during fast markets
Imagine a sudden move begins on Hyperliquid before external venues fully reprice. The last trade can jump first, the oracle can update shortly after, and the mark can move according to its blended inputs and protective rules.
The reverse can also happen if an external venue moves before local liquidity reacts.
This is why a trader should always identify which price a rule uses. A stop trigger, liquidation threshold, funding calculation, and chart candle do not necessarily depend on the same number.
Builders need the same distinction
A trading application that displays only one price can give users a misleading risk view. A liquidation dashboard should expose the price used by the actual risk engine rather than estimate risk from the latest trade.
Likewise, automated systems should not calculate expected funding from a local midpoint if the protocol uses oracle based inputs.
Continue reading
Read How Hyperliquid Calculates Mark Prices for the deeper construction and How Oracle Prices Feed Hyperliquid's Risk Engine for the path from external references to margin and liquidation.