#Oracle System

Exolane uses oracles to provide fair, manipulation-resistant price feeds for all trading activity.

#Overview

All prices on Exolane come from Pyth Network, a high-fidelity oracle designed for DeFi.

Aspect Detail
Provider Pyth Network
Update Frequency Sub-second
Staleness Threshold 40 seconds
Data Sources Major exchanges, market makers

#Why Pyth Network?

#Speed

  • Updates every ~400ms
  • Critical for trading accuracy
  • Reflects real-time market conditions

#Accuracy

  • Aggregates from 50+ data sources
  • Includes major CEX and DEX data
  • Weighted by quality and volume

#Decentralization

  • Multiple independent publishers
  • No single point of failure
  • Cross-chain availability

#How Prices Are Used

#Position Valuation

text
Position Value = Size × Oracle Price
PnL = Size × (Current Price - Entry Price)

#Margin Calculation

text
Effective Margin = Collateral + Unrealized PnL
(Unrealized PnL uses oracle price)

#Order Execution

text
All orders settle at the oracle price
at the time of settlement

#Liquidation

text
Liquidation triggers when:
Position Value at Oracle Price → Margin < Maintenance

#Oracle Freshness

#Staleness Window: 40 Seconds

If the oracle hasn't been updated in 40 seconds, the system pauses:

Affected When Stale
Opening positions ❌ Blocked
Closing positions ❌ Blocked
Liquidations ❌ Blocked
Margin changes ❌ Blocked

#Why This Matters:

Protection against:

  • Acting on outdated prices
  • Exploitation during oracle downtime
  • Price manipulation windows

Once oracle updates:

  • All operations resume immediately
  • Pending orders can settle

#Oracle Update Flow

text
1. Pyth publishes new price
        ↓
2. Keeper submits price to Exolane
        ↓
3. Oracle validates:
   - Timestamp is recent
   - Price is within bounds
   - Publisher signatures valid
        ↓
4. Price is accepted
        ↓
5. Pending orders settle at new price

#Price Display vs. Settlement

#What You See:

The UI shows the latest oracle price, updating in real-time.

#What You Get:

Orders settle at the oracle price at settlement time, not submission time. Order size and Exolane order flow do not move that execution price.

#Why the Difference?

Benefit Explanation
No front-running Can't race to beat your order
Fair execution Everyone in same window gets same price
MEV protection Reduces extraction opportunities
No local price impact Your trade size does not push the price higher or lower on Exolane

#Example:

text
You submit order at 12:00:00
  Displayed price: $100,000

Oracle updates at 12:00:02
  New price: $100,050

Your order settles at: $100,050
ℹ️

If the final price differs from the displayed quote, it is because the oracle updated between submission and settlement. Exolane has 0% slippage from local liquidity: your trade size does not move the execution price.


#Example Price Feeds

Below are example Pyth feed IDs for some supported markets. Additional live markets use their own deployed feeds and follow the same oracle settlement model.

Market Pyth Price Feed ID
BTC/USD 0xe62df6c8...415b43
ETH/USD 0xff61491a...fd0ace
SOL/USD 0xef0d8b6f...0b56d
BNB/USD 0x2f95862b...1c4f
XRP/USD 0xec5d3998...ea1c8
DOGE/USD 0xdcef50dd...d25c
XMR/USD 0x46b8cc93...321d
AVAX/USD 0x93da3352...7bb7
LINK/USD 0x8ac0c70f...d221
SUI/USD 0x23d73151...5744

Each market is linked to a specific Pyth price feed at deployment.


#Oracle Security

#Multiple Publishers

Price is aggregated from multiple independent publishers, preventing single-source manipulation.

#Confidence Intervals

Pyth provides confidence intervals. Exolane uses the aggregate price when confidence is high.

#Timestamp Validation

Prices older than 40 seconds are rejected, preventing stale price attacks.

#On-Chain Verification

All price updates are verified on-chain with publisher signatures.


#Edge Cases

#Oracle Downtime

If Pyth experiences issues:

  1. Oracle becomes stale after 40 seconds
  2. All trading operations pause
  3. No liquidations occur
  4. Resume when fresh prices arrive

#Price Spikes

If a sudden price move occurs:

  1. Price is validated against Pyth aggregate
  2. If legitimate, trading continues normally
  3. Positions may be liquidated at new price
  4. Stop-losses may trigger

#Flash Crashes

Exolane's oracle-based settlement provides protection:

  1. Orders settle at next oracle update
  2. Brief wicks may not trigger liquidations
  3. Price must persist through oracle update

#Oracle Fees

There are small oracle-related costs:

Fee Who Pays Amount
Commitment Gas Keeper (passed to user) ~$0.001
Settlement Gas Keeper (passed to user) ~$0.001

These are included in execution costs and are typically negligible.


#Transparency

All oracle prices are:

  • Public — Viewable on-chain
  • Verifiable — Check Pyth directly
  • Historical — Past prices queryable

You can verify any settlement price after the fact.


#Oracle FAQ

#Q: Can the team manipulate prices?

No. Prices come from Pyth Network, an independent oracle. Exolane cannot modify price feeds.

#Q: What if Pyth goes down?

Trading pauses until fresh prices arrive. No trading or liquidations on stale prices.

#Q: Why didn't I get the price I saw?

Orders settle at the next valid oracle price, not the displayed price. If the oracle moves while your order is pending, the final price moves with it. Your size does not change the execution price on Exolane.

#Q: Are prices the same as Binance/Coinbase?

Not necessarily. Pyth aggregates multiple venues into one oracle price, so settlement follows the oracle feed rather than any single exchange's last trade.

#Q: What's the maximum price lag?

40 seconds. After that, the system pauses until fresh data arrives.


#Summary

Aspect Detail
Provider Pyth Network
Update Speed ~400ms
Max Staleness 40 seconds
Manipulation Risk Low (aggregated, multi-source)
Downtime Handling Trading pauses
Verification On-chain, public

#Next Steps