[BIP-557] Enable gauge for sFRAX/FRAX on [Optimism]

PR with Payload

Summary

  • This is a proposal on behalf of Frax to enable one uncapped Balancer gauge for sFRAX/FRAX on Optimism.
  • The underlying pool is an Elliptic Concentrated Liquidity Pool (E-CLP). E-CLPs are custom pools from Gyroscope built on top of Balancer’s pool architecture. They enable trading along the curve of an ellipse. This pool type is ideally suited for stablecoins and liquid staking tokens; it is typically more capital efficient and could thus generate significant trading volume.
  • The pool shall has a swap fee of 1 basis points, i.e., 0.01% at pool inception. The fee split is as follows: 50% of all collected fees will go to liquidity providers, while the remaining 50% will go towards Balancer. At pool inception, no fees will go towards Gyroscope.

References/Useful links

Protocol description

  • Staked FRAX (sFRAX) is an ERC4626 staking vault that distributes part of the Frax Protocol yield weekly to stakers denominated in FRAX stablecoins. The sFRAX token represents pro rata deposits within the vault and is always withdrawable for FRAX stablecoins at the pro rata rate at all times. - Frax
  • Frax Finance is a decentralized lending platform which issues the FRAX stablecoin. Frax Finance algorithmically sustains the value of FRAX through the use of fractional collateral reserves. The collateral used on Frax Finance is split between an accepted collateral (e.g. ether) and Frax Finance’s governance token, FXS. The collateralization ratio for FRAX changes based on its price. - Gemini

Motivation

By using E-CLPs a comparably small amount of initial capital can provide a disproportionately deep market for GYD. The E-CLP’s efficiency gains are possible due to:

  • Customizable liquidity profiles: Using the curve of an ellipse enables highly customizable liquidity profiles. E-CLPs can be calibrated to approximate most trading curves that would be desired. E-CLP curves can be tailored to have certain regions of low price impact and other regions of high price impact.
  • Price bounds: The E-CLP concentrates liquidity within price-bounds that enable the E-CLP to be highly capital-efficient. Functionally, this works by enabling arbitrary truncation of liquidity profiles from a given trading curve. In effect, the capital efficiency comes from bounding the trading curve to an expected trading range of the assets.

Several E-CLPs have already been deployed to provide custom tailored liquidity profiles for LSTs and stablecoins. A similar E-CLP to the one mentioned in this proposal has been recently deployed on Arbitrum. For an overview of previously deployed E-CLPs consult: https://dune.com/gyro_finance/gyroscope-e-clps

Specifications

Governance

The Gyroscope Protocol will be governed by a DAO and relevant stakeholder with the full launch on Ethereum. For now, the FTL Labs multi-sig can pause the pool, change the swap fee and set the protocol fee. As a custom pool by Gyroscope, the E-CLP will be controlled by Gyroscope governance upon its launch.

Oracles

  • rateProvider0 (for FRAX): 0x00
  • rateProvider1 (for sFRAX): 0x7E13b8b95d887c2326C25e71815F33Ea10A2674e
  • (allows to control for a price drift from accruing yield by using rate providers to first convert from yield accruing tokens to the underlying)

Audits

Audit reports by Nethermind, Trail of Bits, and Runtime Verification can be accessed here (the E-CLP is called the “CEMM” in these reports). In addition, the E-CLP code has been live in production on Polygon since November 2022.

Centralization vectors

No centralization vectors. The FTL Labs team’s multi-sig can - currently - pause the pool, change the swap fee and set the protocol fee.

Market History

The Gyroscope Protocol is live on Ethereum since EOY23, with E-CLPs on several other chains. Details available here .

Value

As per “Motivation”.

Contracts

Specification

Transaction: The Balancer Maxi LM Multisig eth:0xc38c5f97B34E175FFd35407fc91a937300E33860 will interact with the GaugeAdderv4 at 0x5DbAd78818D4c8958EfF2d5b95b28385A22113Cd and call the addGauge function with the following arguments:

gauge(address): 0x7E1726D24B1CD3dFcd713f67a83ccEaa6108d069

gaugeType(string): Optimism

3 Likes

https://snapshot.org/#/balancer.eth/proposal/0x674701a935097fab3474afe87e233092408785192b2a9a0a13450a87db29a454

2 Likes