#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.

#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

#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
ℹ️

Settlement price may differ slightly from displayed price. This is normal and protects against manipulation.


#Available Price Feeds

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 next oracle price, not the displayed price. This prevents front-running.

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

Similar, but not identical. Pyth aggregates from multiple sources including those venues.

#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

Type to search…