Skip to main content

Asset Configuration

PRICE v1.2 improves Olympus price resolution by combining oracle feeds from different providers where available and filtering out stale or deviating values. This increases resilience for protocol pricing while preserving backwards compatibility with the PRICE v1 functions used by existing policies.

Existing policies such as the Yield Repurchase Facility and Emissions Manager continue to read OHM prices through the v1-style functions they already use. Newer integrations can use asset-specific functions such as getPrice(address asset_), getPriceIn(address asset_, address quote_), and getAssets() to read configured asset prices directly.

External integrations that need standard oracle interfaces can consume configured PRICE v1.2 asset prices through oracle adapters backed by PriceCache.

Policy Usage

PolicyPRICE usage
Yield Repurchase FacilityUses backwards-compatible OHM price reads to size OHM buyback markets against USDS.
Emissions ManagerUses backwards-compatible OHM price reads to calculate premium and set minimum auction prices for OHM emissions.
HeartCalls the policies that consume PRICE during regular protocol beats.

Configured Assets

AssetRole in PRICEPrice resolutionMoving average
USDSStable reserve reference assetAverage of Chainlink USDS-USD, Chainlink DAI-USD, and API3 USDS-USD after excluding deviating feeds.Not stored or used
sUSDSYield-bearing reserve assetERC4626-derived price from USDS.Not stored or used
wETHETH reference asset used by OHM price pathsAverage of Chainlink ETH-USD, RedStone ETH-USD, API3 ETH-USD, and a Chainlink ETH-BTC x BTC-USD derived path after excluding deviating feeds.Not stored or used
OHMProtocol token priced for YRF, EM, and future integrationsAverage of two OHM/wETH Uniswap V3 fee-tier feeds, OHM/sUSDS, and Chainlink OHM-ETH x ETH-USD after excluding deviating feeds.Stored for 30 days, but not used as an OHM spot-price input

Configuration Values

AssetStrategyDeviation thresholdStrict modeExpected priceExpected tolerance
USDSgetAveragePriceExcludingDeviations()100 bpsYes1e18100 bps
sUSDSERC4626-derived from USDSN/AN/A1.095038992740982406e18100 bps
wETHgetAveragePriceExcludingDeviations()500 bpsYes2282.17e18500 bps
OHMgetAveragePriceExcludingDeviations()200 bpsYes16.5e18500 bps

Feed Parameters

AssetFeed pathStale thresholdTWAP window
USDSChainlink USDS-USD86,400 secondsN/A
USDSChainlink DAI-USD86,400 secondsN/A
USDSAPI3 USDS-USD90,000 secondsN/A
sUSDSERC4626 derived from USDSN/AN/A
wETHChainlink ETH-USD3,600 secondsN/A
wETHRedStone ETH-USD86,400 secondsN/A
wETHAPI3 ETH-USD90,000 secondsN/A
wETHChainlink ETH-BTC leg86,400 secondsN/A
wETHChainlink BTC-USD leg3,600 secondsN/A
OHMUniswap V3 OHM/wETH 30 bpsN/A1,500 seconds
OHMUniswap V3 OHM/wETH 100 bpsN/A1,500 seconds
OHMUniswap V3 OHM/sUSDSN/A1,500 seconds
OHMChainlink OHM-ETH leg86,400 secondsN/A
OHMChainlink ETH-USD leg3,600 secondsN/A

How Price Resolution Works

For assets with multiple feeds, PRICE asks each configured feed for a price, drops zero values and feeds outside the configured deviation threshold, then averages the remaining values. Strict mode requires enough surviving feeds to calculate a resilient average. For OHM, the two OHM/wETH pools are separate feed inputs that share the same wETH price path.

For Chainlink, RedStone, and API3 Chainlink-compatible paths, the stale threshold is the maximum time since the feed's last update. API3 feeds use a 90,000 second threshold, giving a one-hour grace period around their 24-hour heartbeat. For Uniswap V3 paths, the TWAP window defines the period used to smooth pool prices.

OHM's 30-day moving average is migrated into PRICE v1.2 for backwards-compatible target-price reads. It is not an input to OHM spot-price resolution.

PRICE audit references are listed on the audits page.

USDS Price Resolution

wETH Price Resolution

OHM Price Resolution

Configuration Changelog

DateReleased VersionChange
2026-07-14PRICE v1.2Released asset configuration from olympus-v3 PR #187 head a7402cac180f9250225e154e4b4ca9b7a23e06f4. Configures resilient multi-feed price resolution for USDS, sUSDS, wETH, and OHM.