Mark Price & Oracle Price

Rubicon uses two price types for different purposes. Understanding them is crucial for trading.

Oracle Price

The oracle price is the authoritative ETF price published by Rubicon's oracle system.

Source

  • Fetched directly from data providers (Polygon, Yahoo Finance)

  • Updated every 3 seconds during market hours

  • Frozen at last close price when market is closed

Used For

  • Liquidations — Positions are liquidated based on oracle price

  • Funding rate calculation — Determines funding payments

  • Settlement — Final PnL uses oracle price

Why Direct ETF Prices?

We fetch the actual ETF price, not a synthetic basket:

  • ETF providers handle rebalancing

  • No drift from actual ETF value

  • Simpler, more reliable

Mark Price

The mark price is used for real-time PnL display and margining.

Calculation

Hyperliquid calculates mark price as the median of:

  1. Our oracle price

  2. Our EMA-smoothed suggestion (markPxs)

  3. Hyperliquid's internal mark calculation

Used For

  • Unrealized PnL — What you see on screen

  • Margin calculations — Available margin, margin ratio

  • Position health — Warning indicators

EMA Smoothing

We submit an EMA (Exponential Moving Average) smoothed price as our mark price suggestion:

  • Reduces impact of momentary price spikes

  • Prevents manipulation via thin liquidity

  • Provides more stable PnL display

Price Comparison

Aspect
Oracle Price
Mark Price

Source

Direct from data provider

Median of multiple sources

Update frequency

Every 3 seconds

Continuous

Smoothing

None

EMA applied

Used for liquidation

Yes

No

Used for PnL display

No

Yes

Why Two Prices?

Manipulation Resistance

If we used only the order book mid-price:

  • A whale could push price to trigger liquidations

  • Thin liquidity = easy manipulation

  • Cascading liquidations possible

The oracle price provides an external anchor that's harder to manipulate.

Smooth UX

If we used only the oracle price:

  • PnL would update in 3-second jumps

  • No reflection of current order book state

  • Poor user experience

The mark price provides smooth, real-time feedback.

Price Bands

To prevent extreme deviations, mark price is constrained:

For 3x max leverage:

Mark price cannot exceed these bounds, limiting potential manipulation.

Example Scenario

Your unrealized PnL is calculated at $225.00 (mark). If liquidation triggers, it uses $225.00 (oracle).

During Market Closure

When the US stock market is closed:

Price
Behavior

Oracle

Frozen at last closing price

Mark

May drift slightly based on order book activity

Implications:

  • Existing positions maintain their PnL

  • No new liquidations from price movement

  • Funding continues based on mark vs oracle deviation

  • Trading continues with frozen oracle reference

Monitoring Prices

The trading interface shows:

  • Oracle — Labeled as "Index" or "Oracle"

  • Mark — Labeled as "Mark" (used for display)

  • Last Trade — Most recent execution price

Impact on Trading

  1. For entries — Order book price matters (what you pay)

  2. For PnL display — Mark price matters (what you see)

  3. For liquidation — Oracle price matters (when you're closed)

Understanding this separation helps you trade more effectively and avoid surprises.

Last updated