For the complete documentation index, see llms.txt. This page is also available as Markdown.

Oracle Prices

Trading perpetuals involves significant risk, including the risk of liquidation and partial or total loss of assets. Review the Risk Disclosures and ensure you understand the risks before trading.

For RWA perpetual markets, index and mark prices rely on:

Trading hours are specified for each market below.

Oracle Price Reference

Group
Market
Oracle Price Reference

Indices

SPX, NDX

Value of the index

Energy

WTI

1 barrel of West Texas Intermediate (WTI) Light Sweet Crude Oil

Energy

NATGAS

1 MMBtu of Henry Hub natural gas

Energy

XBR

1 barrel of Brent Crude Oil

Precious Metals

XAU

1 troy ounce of gold

Precious Metals

XAG

1 troy ounce of silver

Precious Metals

XPT

1 troy ounce of platinum

Industrial Metals

XCU

1 pound of copper

FX

EUR

EUR/USD exchange rate

FX

USDJPY

USD/JPY exchange rate

Equities

All

Underlying share price

ETFs

EWY

EWY share price

Pre-IPO

SPCX

Trade.xyz SpaceX reference price

Oracle Price Methodology

The table below outlines the Oracle Price Methodology for all RWA markets, including the provider, calculation methodology, underlying price reference, and oracle availability.

Market
Provider
Oracle Price Reference
Oracle Availability

Indices: SPX, NDX

CME¹,² futures equivalent* normalised to spot

23/5**

Energy: WTI, NATGAS, XBR

CME¹,² and ICE¹ futures equivalent*

23/5**

Precious Metals: XAU, XAG, XPT

Massive (XAU, XAG) and LMAX (XPT) spot with fallbacks***

23/5**

Industrial Metals: XCU

CME futures equivalent*

23/5**

FX: EUR, USDJPY

RedStone (EUR) Stork (JPY)

EUR: LMAX spot with fallbacks*** JPY: FX broker spot prices

24/5

Equities & ETFs: All

Regular, pre-market, and post-market sessions: NYSE/Nasdaq midpoint prices via licensed data providers.

Overnight: Blue Ocean ATS

24/5

Pre-IPO: SPCX

Trade.xyz

24/7

* CME and ICE futures equivalent: a proprietary aggregate of market-maker and broker feeds that has historically shown high correlation with CME and ICE L1 mid-prices. Used as an alternative to direct CME and ICE market data. Expected maximum deviation from CME and ICE L1 mid-prices is 1-2 bps, depending on the market.

** 23/5 = 6:30 PM – 5:30 PM ET, Sunday to Friday, with 1 hour daily gaps.

*** Fallback is automatically triggered when the primary source is down or significantly deviates from the median of fallback sources.

Outside of Oracle Availability windows, the index and mark prices are calculated based on the off-hours pricing mechanics.

Futures-to-spot normalisation

For indices (SPX and NDX), where the price represents a futures-implied spot price, the oracle normalises the futures price to a spot equivalent using the cost-of-carry formula:

where:

  • r = risk-free rate (SOFR) sourced from New York Fed

  • d = annualised dividend yield, derived from major index ETF dividend yields and updated monthly. Current values can be obtained here.

  • T = days to futures expiry

Roll Schedule for Indices

Index oracles (SPX and NDX) reference quarterly futures contracts. The active contract follows the standard quarterly cycle, with settlement codes corresponding to the contract month:

  • H — March

  • M — June

  • U — September

  • Z — December

The active contract rolls to the next quarterly contract before expiry, on the corresponding “Active Until” date. The active and expiry dates for each quarterly contract are shown below:

Underlying Suffix
Active Until
Expiration

H6

2026-03-16 14:00:00 UTC

2026-03-20 13:30:00 UTC

M6

2026-06-15 14:00:00 UTC

2026-06-18 13:30:00 UTC

U6

2026-09-14 14:00:00 UTC

2026-09-18 13:30:00 UTC

Z6

2026-12-14 15:00:00 UTC

2026-12-18 14:30:00 UTC

Roll Schedule for Energy and Industrial Metals

For markets that reference futures-based price feeds (WTI, XBR, NATGAS, XCU), the active contract rolls over a 5-business-day transition window.

The roll period runs from the 5th to the 10th business day of the month. During this period, the oracle price transitions from the front-month contract to the next active contract using a linear weighting model that updates at predefined timestamps aligned with internal pricing sessions.

Updated weightings take effect when the oracle switches back to external pricing at 6:00 PM ET.

Roll Example. If WTI is referencing the M6 contract and rolling into N6, the transition proceeds as follows:

Timestamp
Front-month (M6) weight
Next-month (N6) weight

Day 5, 5:30 PM ET

80%

20%

Day 6, 5:30 PM ET

60%

40%

Day 7, 5:30 PM ET

40%

60%

Day 8, 5:30 PM ET

20%

80%

Day 9, 5:30 PM ET

0%

100% (roll complete)

Active contract schedule

The table below shows the active contract at the start of each month and the corresponding roll target for each energy and industrial metals market.

Instrument
Apr 2026 roll
May 2026 roll
Jun 2026 roll
Jul 2026 roll
Aug 2026 roll
Sep 2026 roll
Oct 2026 roll
Nov 2026 roll
Dec 2026 roll

XCU (Copper)

K6 → N6

N6

N6 → U6

U6

U6 → Z6

Z6

Z6

Z6 → H7

H7

WTI

K6 → M6

M6 → N6

N6 → Q6

Q6 → U6

U6 → V6

V6 → X6

V6 → X6

X6 → Z6

Z6 → F7

XBR (Brent)

M6 → N6

N6 → Q6

Q6 → U6

U6 → V6

V6 → X6

X6 → Z6

Z6 → F7

F7 → G7

G7 → H7

NATGAS

K26 → M26

M26 → N26

N26 → Q26

Q26 → U26

U26 → V26

V26 → X26

X26 → Z26

Z26 → F27

F27 → G27

Off-hours Pricing

During off-trading hours, if the oracle has not been updated for more than 5 minutes, both the Index Price and Mark Price for RWA markets are derived from order book liquidity.

Index Price Calculation

The Index Price evolves according to:

where the index moves from its previous value toward prices implied by the order book, with the speed of adjustment controlled by the smoothing factor (1 − β).

Adjustment Term

where:

  • Impact Bid = average execution price required to fill the market's configured impact notional on the bid side.

  • Impact Ask = average execution price required to fill the market's configured impact notional on the ask side.

The adjustment term behaves as follows:

  • If the Index Price lies between the Impact Bid and Impact Ask, no adjustment is applied.

  • If the Impact Bid exceeds the Index Price, the index moves upward.

  • If the Impact Ask falls below the Index Price, the index moves downward.

  • If either side lacks sufficient liquidity to fill the impact notional, that side contributes zero to the adjustment.

Smoothing Factor

The smoothing factor is time-aware, so the index behaves consistently regardless of update cadence and remains robust to irregular updates.

Capping the effective elapsed time at c·τ (3 minutes) ensures no update can move the index by more than approximately 9.5% of the current adjustment term, even after a prolonged period without updates.

Maximum Deviation

To limit off-hours price drift, the maximum deviation of the Index Price and Mark Price from the last known oracle price is capped at |Index_t − last_oracle_price| ≤ 1 / max_leverage.

Last updated