Price Data Feed
This section describes how to derive the price of rock.rETH shares.
Last updated
This section describes how to derive the price of rock.rETH shares.
You can get the rock.rETH:ETH exchange rate here: https://etherscan.io/address/0x716f0c5453099690b54e7b72d9491a72b8df445e#readContract#F1
The price of a vault share represents the value of the underlying asset the share is a claim on.
For example if 1 rock.rETH share is worth 1.05 rETH and rETH/USD = $5,000 USD, then 1 rock.rETH = 1.05 x $5,000 = $5,250. Conversely that means 1 rETH = 0.95238 rock.rETH (1/1.05).
Similarly for ETH, if 1 rock.rETH share is worth 1.05 rETH and 1 rETH = 1.1443 ETH then 1 rock.rETH = 1.05 x 1.1443 = 1.201515 ETH
For integration with RockSolid vaults, there are a number of ways to source pricing, both on-chain and via API.
The simplest way to calculate rock.rETH exchange rates is to use the Balancer rate provider deployed here. That returns the rock.rETH:ETH exchange rate in wei. For example, at the time of writing it is 1161699563412314198 which when converted to ETH is 1.16. I.e. 1 rock.rETH = 1.16 ETH. For display, you would source ETH/USD from your preferred provider
To obtain the value 1 rock.rETH share in the underlying asset rETH purely from the smart contract, you can use standard ERC-4626 methods. You convert an amount of shares to assets and divide by the scale of the underlying. To obtain rock.rETH to rETH it would be:
convertToAssets(10 ** vault.decimals()) / 10 ** underlyingAsset.decimals()
For USD, simply multiple by the rETH/USD exchange rate
We don't currently provide exchange rates via API. Please reach out at [email protected] if you need this.
Last updated

