| Mode | Best for | How prices reach Orderly |
|---|---|---|
| Builder Oracle | Builders with their own pricing model, index service, or aggregation backend. | The Builder pushes prices to Orderly over WebSocket. |
| Bring Your Own Key (BYOK) Oracle | Builders that want to use their own provider account for a supported oracle provider such as Pyth or Stork. | Orderly uses the Builder’s provider credentials to pull prices from the oracle provider. |
Builder Oracle
Builder Oracle is the push-based Custom Oracle mode. The Builder owns the price calculation and pushes the resulting Index Price to Orderly. Use Builder Oracle when you have your own pricing infrastructure, for example:- an internal index service;
- an exchange aggregation service;
- a pricing model for a long-tail asset;
- an RWA data provider integration.
How Builder Oracle works
- The Builder registers a feed for a
base_ccy, such asBTC,AAPL, or another supported asset. - Orderly creates the Builder Oracle source for that Builder. The source is identified as
ORACLE_<broker_id>. - The Builder connects to Orderly’s oracle WebSocket and publishes
indexpricefeedmessages. - The feed can be selected as an Index Price source when listing a market.
active and private by default. This lets the Builder test the feed privately before making it available to other Builders.
Visibility
Builder Oracle visibility is controlled per feed:- Private feeds are visible only to the Builder that owns the feed.
- Public feeds can be selected by other Builders when they list markets.
Builder responsibilities
With Builder Oracle, the Builder is responsible for operating the price feed:- keep the WebSocket connection active during the relevant market session;
- publish valid prices at the required frequency;
- monitor stale data, skipped prices, and feed availability;
- use multiple sources where possible to reduce single-source risk.
Bring Your Own Key (BYOK) Oracle
Bring Your Own Key (BYOK) Oracle is the provider-key mode. Instead of building and operating a WebSocket price publisher, the Builder connects a supported oracle provider account to Orderly. Use BYOK Oracle when you want to rely on a supported oracle provider, but use your own provider credentials and account relationship. Initial BYOK provider support includes Pyth and Stork. Chainlink support is planned for a future rollout.How BYOK Oracle works
- The Builder selects a supported BYOK provider, such as Pyth or Stork.
- The Builder submits the provider credentials through Orderly’s private API.
- Orderly validates the provider credentials and creates a provider-specific source, such as
PYTH_<broker_id>orSTORK_<broker_id>. - The Builder registers feeds under that BYOK provider.
- Orderly pulls prices from the provider and makes the feed available for listing source selection.
BYOK responsibilities
With BYOK Oracle, the Builder does not need to run a WebSocket publisher, but still needs to manage the provider relationship:- keep provider credentials valid;
- monitor key status and provider health;
- manage which BYOK feeds are active;
- understand provider quota, coverage, and availability constraints.
Custom Oracle and RWA markets
Both Builder Oracle and BYOK Oracle can be used with supported real-world asset (RWA) markets. RWA support currently covers US markets only, including regular US stock hours, extended US stock hours, and US futures hours. Support for additional RWA market sessions, including Hong Kong (HK), China (CN), and Korea (KR), is planned to be added gradually. RWA trading sessions are configured at the listed market level throughmarket_session; they are not configured on the oracle feed itself.
Integration flow
For the API sequence, feed setup, source selection, RWAmarket_session, and listing submit example, see Permissionless Listing with Custom Oracle.