SFrxETHOracle
SFrxETHOracle
This oracle fetches the price of sfrxETH
Solidity API
SFRXETH_FRAX_ORACLE
Address of SfrxEthFraxOracle
contract ISfrxEthFraxOracle SFRXETH_FRAX_ORACLESFRXETH
Address of sfrxETH
address SFRXETHmaxAllowedPriceDifference
Maximum allowed price difference
uint256 maxAllowedPriceDifferenceconstructor
Constructor for the implementation contract.
constructor(address _sfrxEthFraxOracle, address _sfrxETH) public❌ Errors
ZeroAddressNotAllowed is thrown when
_sfrxEthFraxOracleor_sfrxETHare the zero address
initialize
Sets the contracts required to fetch prices
function initialize(address _accessControlManager, uint256 _maxAllowedPriceDifference) externalParameters
_accessControlManager
address
Address of the access control manager contract
_maxAllowedPriceDifference
uint256
Maximum allowed price difference
❌ Errors
ZeroValueNotAllowed is thrown if
_maxAllowedPriceDifferenceis zero
setMaxAllowedPriceDifference
Sets the maximum allowed price difference
function setMaxAllowedPriceDifference(uint256 _maxAllowedPriceDifference) externalParameters
_maxAllowedPriceDifference
uint256
Maximum allowed price difference
❌ Errors
ZeroValueNotAllowed is thrown if
_maxAllowedPriceDifferenceis zero
getPrice
Fetches the USD price of sfrxETH
function getPrice(address asset) external view returns (uint256)Parameters
asset
address
Address of the sfrxETH token
Return Values
[0]
uint256
price The price scaled by 1e18
❌ Errors
InvalidTokenAddress is thrown when the
assetis not the sfrxETH token (SFRXETH)BadPriceData is thrown if the
SFRXETH_FRAX_ORACLEoracle informs it has bad dataZeroValueNotAllowed is thrown if the prices (low or high, in USD) are zero
PriceDifferenceExceeded is thrown if priceHigh/priceLow is greater than
maxAllowedPriceDifference
Last updated

