The Price Feed Store is a chain-specific registry that lists which tokens and price feeds can be used within Gearbox on that chain.
For a token to be used as collateral, it must first be added to the Price Feed Store, along with a list of available price feeds.
Only the Instance Owner—a chain-specific multisig—can add or update entries in the Price Feed Store. This role acts as a neutral technical gatekeeper, ensuring safe and verified configurations while staying out of risk or business decisions.
The Instance Owner multisig is open to participation from active curators and chain contributors, making the process transparent and inclusive without compromising protocol safety.
maxConfToPriceRatio (takes value in bps: 300 = 3%)
Except for the current price, Pyth returns confidence interval
If the width of confidence interval in % is larger than this parameter, feed ourput is considered invalid causing tx revert
Example (consider maxConfToPriceRatio = 3%)
Valid price:
Price: 3000
Confidence interval: 15
confToPriceRatio = 15/3000 = 0.5%
Invalid price:
Price: 3000
Confidence interval: 120
confToPriceRatio = 120/3000 = 4%
Staleness Period
Gearbox contracts track the timestamp of last Feed's update
If the update happened more than Staleness Period seconds ago, feed value should be updated or the contracts will revert
Recommended value for Pull feeds: 240s = 4min
Right after a new Pyth feed is deployed it's required to send 0.000001 ETH to its address. Without it won't function and can't be added to Price Feed Store.
Gearbox contracts track the timestamp of last Feed's update
If the update happened more than Staleness Period seconds ago contracts will revert
&#xNAN;Motivation: If the feed with heartbeat of 24 hours wasn't updated in the last 30 hours, smth bad happened with the oracle providers and protocol operations are blocked waiting for Curator to interfere
Recommended value:
Heartbeat + 15 minutes for slower chains (Ethereum)
87 300s = 24h + 15min
Heartbeat + 2 minutes for faster chains
86 520s = 24h + 2min
ERC4626 exchange rate
This contract fetches mint/redeem rate from specified erc4626 vault and multiplies it by the underlying feed output to return the vault shares' USD price.
Click New Feed and select ERC4626 type
Config parameters:
Name:
Specify token Symbol and underlying feed price Provider name
Example:
Name: sDAI (Chainlink)
Will mean that this feed takes ERC4626 sDAI/DAI exchange rate directly from sDAI contract + DAI/USD price from Chainlink
Vault:
Address of ERC4626 vault to fetch mint/redeem rate from.
underlyingPriceFeed:
Select existing price feed
Example:
If the specified vault it sUSDe, then underlying price feed should return USDe/USD price.
To understand what asset's feed should be passed as underlying, go to the ERC4626 vault contract and call its asset() method — you will get the address of the token which is vault's underlying.
Token address
Needed for Gearbox contracts to understand what pull feed needs to be updated
descriptionTicker
The same as name
This parameter is to be removed later
dataServiceId
Most likely should be kept untouched
Internal variable for non-standard sources of redstone data
dataFeedId
The same as Symbol in Redstone UI
signersThreshold
Minimum amount of signatures from Redstone nodes to have for the feed's result to be deemed valid.
Redstone currently have maximum of 5 nodes.
The safest option is to set this value to 5 (this was historically used in Gearbox), but sometimes couple of Redstone nodes may stop working for a short periods of time.
Signer 1/2/3/4/5
Most likely should be kept untouched
Redstone have fixed list of signers' addresses that rarely (if ever) changes
Kodiak island
Click New Feed and select Kodiak_island type
Config parameters:
Name:
Specify token Symbol and sources of Underlying Prices
Example:
Deploy PT to SY oracle using createOracle Factory method
Market: Pendle Market address
twapDuration: twap duration in seconds (1800 recommended)
baseOracleType: 0 (PT to SY price)
Add deployed pendle feed as external (staleness period = 1)
Deploy Composite Gearbox Oracle
Set Feed 1 to previously deployed PT-to-SY feed
Set Feed 2 to feed which prices SY to USD
SY to USD feed shouldn't be of updatable type (Redstone Pull or Pyth pull)
Deploy Bounded Gearbox Oracle
Set underlying feed to previously deployed Composite feed
Set bound to 1
Gearbox PT feed
Click New Feed and select Pendle PT TWAP type
Config parameters:
Name:
Specify token Symbol and source of Underlying Price
Example:
Name: PT-sUSDE-25SEP2025 (Chainlink)
Underlying feed: sUSDe/USD (Chainlink)
market
Pendle Market address
UnderlyingPriceFeed
The feed contract is able to fetch price of PT token in terms of SY token from the Pendle Market and then multiplies it by SY price in terms of USD ⇒ underlying feed is an intended method to price SY in terms of USD.
priceToSy
Most likely you need to check this box (if on the previous step you set underlying price feed to be equal to SY price)
If you don't check this box, you will need to use asset price as underlying price feed. (read more about the difference between Asset and SY here)
twapWindow
The window length in seconds for averaging market price
Value of 1800s was usually used for previous deployments
Deploy Bounded Gearbox Oracle
Set underlying feed to previously deployed PT TWAP feed
Set bound to 1
Curve Stable
Click New Feed and select Curve_stable type
Config parameters:
Name
Specify pool Symbol and sources of Underlying Prices
Example:
Deploy PT to SY oracle using createOracle Factory method
Market: Pendle Market address
twapDuration: twap duration in seconds (1800 recommended)
baseOracleType: 2 (LP to SY price)
Add deployed pendle feed as external (staleness period = 1)
Deploy Composite Gearbox Oracle
Set Feed 1 to previously deployed LP-to-SY feed
Set Feed 2 to feed which prices SY to USD
SY to USD feed shouldn't be of updatable type (Redstone Pull or Pyth pull)
Deploy Bounded Gearbox Oracle
Set underlying feed to previously deployed Composite feed
Set bound to 1
Gearbox PT feed
Click New Feed and select Pendle PT TWAP type
Config parameters:
Name:
Specify token Symbol and source of Underlying Price
Example:
Name: PT-sUSDE-25SEP2025 (Chainlink)
Underlying feed: sUSDe/USD (Chainlink)
market
Pendle Market address
UnderlyingPriceFeed
The feed contract is able to fetch price of PT token in terms of SY token from the Pendle Market and then multiplies it by SY price in terms of USD ⇒ underlying feed is an intended method to price SY in terms of USD.
priceToSy
Most likely you need to check this box (if on the previous step you set underlying price feed to be equal to SY price)
If you don't check this box, you will need to use asset price as underlying price feed. (read more about the difference between Asset and SY here)
twapWindow
The window length in seconds for averaging market price
Value of 1800s was usually used for previous deployments
Deploy Bounded Gearbox Oracle
Set underlying feed to previously deployed PT TWAP feed
Set bound to 1
Balancer V3 LP
Balancer chainlink-compatible factory
Feeds of underlying tokens used for deployment shouldn't be of updatable type (Redstone Pull or Pyth pull)