sDAI
Custom price feed for Sky Savings Dai (sDAI).
Custom price feed for Sky Savings Dai (sDAI). sDAI is an ERC-4626 vault share that accrues value as savings yield accumulates. The price is derived from the vault's current share-to-asset conversion rate multiplied by the NAV's DAI/USD price.
Source: sDAI_CustomPriceFeed.sol
Approach
sDAI.convertToAssets(1 sDAI) × DAI/USD (from the NAV's primary feed)
Price calculation
decimals = sDAI.decimals() // vault share decimals
rate = sDAI.convertToAssets(10^decimals) // DAI per 1 sDAI
price = rate × DAI_USD / 10^assetDecimalsconvertToAssets()
IERC4626(sDAI)
DAI backing per 1 sDAI share at the current accrued rate
DAI_USD
NAV base — getPriceDataNoDivergence(DAI) (8 dec)
the NAV's primary DAI/USD price
The divisor is 10^assetDecimals (the underlying's decimals), not the share decimals — they differ whenever a vault uses a decimals offset. Result carries the feed's 8 decimals.
Constructor
vault_
The sDAI vault address (also used to read vault decimals)
nav_
NAVCalculator (proxy) — supplies the base asset's USD price via getPriceDataNoDivergence
baseAsset_
The registered base asset whose USD price is read (DAI); must equal the vault's asset() — reverts BaseAssetMismatch otherwise
Staleness
The price is stale if the NAV reports the base asset (DAI) stale — all its feeds stale. The base leg's updatedAt comes from the NAV's selected DAI feed. The convertToAssets rate has no heartbeat — it is a live view on the ERC-4626 vault.
Chains
Deployed on Ethereum mainnet. Gnosis prices its own savings-DAI via sXDAI, a separate feed.
Last updated