Frax Finance ¤
English 🇰🇾

Advanced Concepts

Getting a Fresh Price

Since the Frax protocol only updates Frax Oracle prices once per day, the price may be up to 23 hours and 59 minutes old. If you need a fresher price, you can call addRoundData() on the Dual Oracle to write a fresh price, and then call latestRoundData() / getRoundData() / getPrice() on the Frax Oracle to retrieve the fresh price.

Smart Contract Design

L1 -> L2

Timelock Configuration

Controls all configuration for all Frax Oracles on L1:
Controls all configuration for all Frax Oracles on Arbitrum:

Attacks and Mitigations

Oracle manipulation attacks are handled economically. There is too much protocol owned liquidity for manipulating the Curve / Uniswap pools to be profitable. Bounding prices ensures that frxEth/sfrxEth will never be overvalued and will never be undervalued by more than 30%. frxEth is fully backed with ETH in validators, so the only risk that exists with it is time duration risk.

Contract Addresses


Dual Oracles / Price Sources

Frax Oracles


L2 (Arbitrum)

Price Source

Frax Oracles