Price oracle
A specialised oracle that publishes asset prices on-chain. Foundational component for any lending protocol, perpetual, or delta-neutral strategy.
Aliases: price feed, on-chain price feed
Price oracle is the oracle whose only job is to publish market prices on-chain. The accuracy and resilience of that feed determines how safely a DeFi protocol can liquidate, accrue, and trade.
Architecture
A typical price-oracle stack:
- Sources. Exchange APIs (Binance, OKX, Bybit), aggregators (CoinGecko, CMC), DEX pools.
- Off-chain aggregator. Takes multiple sources, drops outliers, returns median or volume-weighted mean.
- Signer. Signs the result with a private key.
- Publication. Either push (writing to a contract) or pull (a signed message bundled with the user’s transaction).
Core requirements
- Freshness. A stale price is dangerous — markets can move 5–10% during a lag, causing false liquidations or missing real ones.
- Manipulation resistance. Multiple sources, medians, anomaly filters.
- Availability. If the oracle stops publishing, the lending protocol either halts or runs on a stale price at risk.
- Coverage of every asset. The more exotic the token, the thinner the source pool, the higher the risk.
Typical models
- TWAP — time-weighted average price from an on-chain DEX. Manipulation-resistant but lagged.
- VWAP — volume-weighted, closer to real market quotes.
- Median across CEX — combined data from top centralised venues.
- Hybrid — most production protocols use a blend.
What matters for users
- If a protocol’s TON oracle reads off STON.fi alone, a pool manipulation can liquidate users en masse.
- If publication is push-style every 10 minutes, false signals are possible during fast moves between updates.
- Good protocols publish circuit breakers — thresholds that pause trading on anomalous oracle behaviour.
On TON, EVAA, Storm, and Tradoor each run their own price-oracle stacks; external solutions such as Pyth have started integrating, but no dominant provider has emerged yet.