Add fxSAVE-long LlamaLend Market on Mainnet to Gauge Controller

Summary:

Add gauge for the fxSAVE-long LlamaLend market to the gauge controller.

This proposal includes an overview of fxSAVE and rationale for the LlamaLend market configuration.

Abstract:

The fxSAVE-long LlamaLend market is configured like the sUSDe-long market, using a conservative parameter template due to its unique characteristics. Recently, the fxSAVE/scrvUSD Curve Pool was added to the gauge controller. The fxSAVE-long LlamaLend market was deployed with a proxy oracle that allows the DAO to change the oracle implementation post-deployment. This may be necessary if liquidity migrates to new pools, making the original implementation an unreliable price source.

fxSAVE Overview:

f(x) Protocol consists of two core products: fxUSD and xPOSITION. fxUSD is a synthetic stablecoin exclusively backed by stETH and WBTC. xPOSITION is a non-fungible token which represents a long position on either ETH or BTC.

fxUSD and/or USDC can be deposited into the protocol Stability Pool to earn wstETH rewards from xPOSITION fees, Aave yield, and reserve yield. Users can also earn FXN emissions instead of protocol revenue. The Stability Pool serves an important peg stability role for fxUSD, making use of Chainlink oracles to programmatically swap for the undervalued token (between fxUSD and USDC).

fxSAVE is a vault product created by Concentrator, another AladdinDAO protocol. It is a non-rebasing, ERC-4626 token compatible with DeFi integrations. The product autocompounds rewards from f(x) Stability Pool deposits into additional stablecoins. fxSAVE can be redeemed for the Stability Pool token or the underlying stablecoins; redemption requests involve a 60 minute cooldown which can be bypassed for a 1% fee.

Minting Mechanism

fxUSD is minted when a new xPOSITION is opened. Here’s a breakdown of the process:

  1. User deposits accepted collateral into f(x) Protocol to open an xPOSITION.
  2. Collateral is instantly swapped into WBTC or stETH.
  3. f(x) Protocol takes a flash loan to obtain the collateral required to back the leveraged position.
  4. fxUSD is minted to repay flash loan.

Here’s an example:

  1. User deposits $1000 worth of ETH to open an xPOSITION on ETH with 3x leverage.
  2. All ETH collateral is zapped into stETH.
  3. Flash loan is utilized to obtain $2000 worth of stETH.
  4. $2000 worth of fxUSD is minted to repay flashloan
  5. Now, the user has an xPOSITION with $3000 worth of exposure to ETH and $2000 worth of fxUSD has been minted.

Rebalancing Mechanism

In the case of collateral backing falling in price, f(x) Protocol employs a rebalancing mechanism to ensure the overcollateralization of fxUSD. If collateral price causes the LTV of a xPOSITION to fall below the rebalance line (currently set at 88%), the protocol automatically reduces xPOSITION leverage to raise LTV and prevent undercollateralization of fxUSD. This is done by deducting fxUSD from the flash loan needed to raise LTV back to 88% while simultaneously burning an equivalent amount of fxUSD from the Stability Pool. Then the corresponding amount of collateral is redeemed and sold for fxUSD or USDC. This fxUSD or USDC is returned to the Stability Pool.

In case of LTV of a xPOSITION reaching the liquidation line (currently set at 95%), the position is completely liquidated with the entirety of fxUSD debt burned.

This novel rebalancing mechanism enables traders to avoid liquidation without needing manual intervention, while keeping fxUSD overcollateralized.

Peg Stability

f(x) Protocol employs several peg stability mechanics. The Stability Pool accepts both USDC and fxUSD. The Stability Pool employs arbitrage operations in fxUSD/USDC pools to keep the peg stable, selling fxUSD/USDC depending on depeg direction. If fxUSD is below peg, xPOSITION minting is halted to prevent minting of more fxUSD and funding fees are applied to current xPOSITIONs. These funding fees are directly delivered to the Stability Pool, encouraging more deposits and helping peg stability.

Since pool creation on Curve in June 2024, fxUSD has maintained a relatively strong peg. The spread between fxUSD and USD has become more stable over the past few months, typically remaining within a 30 basis point range. For reference, USDT typically stays within a spread range of 15 basis points.


Source: Dune

Redemption Mechanism

Users can always redeem 1 fxUSD for $1 worth of fxUSD’s collateral. Collateral is obtained by reducing the debt of xPOSITIONs. The most leveraged xPOSITIONs have their positions reduced up to a maximum proportion (currently set at 20% of total position), before moving onto the next leverage level. There is a 0.5% redemption fee.

Risk Management and Disclosures

Key risks and their mitigations include:

  • Oracle Risk
    • Risk: Oracle manipulation could lead to faulty rebalances and minting operations
    • Mitigation: stETH and WBTC both incorporate multiple price sources from mutliple protocols, reducing single dependency and oracle manipulation risk.
  • Market Risk
    • Risk: Quick market movements could cause undercollateralization if collateral is unable to be liquidated quickly.
    • Mitigation: High collateralization ratio combined with reserve fund to absorb losses reduce chance of undercollateralization.
  • DeFi Composability Risk
    • Risk: Collateral is deposited on Aave which brings additional smart contract risks
    • Mitigation: Aave is an extensively audited protocol with a strong security record. However, it is still recommended to diversify lending protocol usage.

Specification:

Given below is the configuration of the fxSAVE-long LlamaLend market and the rationale for this configuration.

Market Parameters

Parameter Value
A (Band Width Factor) 200
AMM Swap Fee 0.2%
Liquidation Discount 1.4%
Loan Discount 1.9%
Max LTV 97%

The market has been instantiated with the same market parameters as the sUSDe-long market. fxSAVE is a relatively new product with little history available to refine specific attributes of this asset. With the unique characteristics of fxSAVE, a conservative market parameterization is used.

Note also that the protocol imposes a 1% instant redemption fee. By setting the liquidation discount greater than this value, we ensure liquidations can process atomically through the protocol. This allows the market to sustain greater debt levels without requiring substantial liquidity in secondary markets.

Monetary Policy

Parameter Value
Min Rate 0.1%
Max Rate 30%

The market was deployed with Semilog Monetary Policy, as this is required by the LlamaLend factory. This policy uses a polynomial curve based on the market utilization and the min/max rates set by governance. The parameter config has been set with a somewhat higher max rate compared to other yieldbearing stable markets (30% instead of 25%) and is intended to exceed the expected yield on the underlying, thereby protecting lenders against market illiquidity. The current APY of fxSAVE is hovering around 10% and has historically been an unusually high yielding instrument compared to more traditional yieldbearing stablecoin products.

There are plans to replace the current monetary policy with EMAMonetaryPolicy that calculates the fxSAVE yield and assigns a rate at target utilization. This policy has been introduced to the sfrxUSD market with good results, and we are considering to standardize this policy for all YBS markets going forward.

Oracle

The proxy allows the DAO to set a new oracle implementation, if necessary, without requiring a market migration. The implementation CryptoFromPoolVaultWAgg is an oracle that uses a single Curve pool price oracle with an ERC4626-compliant vault and the aggregated price of crvUSD.

The underlying pools and contracts used in the oracle include:


Source: Dune

The fxSAVE/scrvUSD Curve Pool is a brand new pool, but has seen an influx in liquidity. This pool has been deployed by the f(x) team and they plan to maintain liquidity in this pool.

The use of aggregated price of crvUSD improves the resiliency of the market to instances of transient crvUSD depeg in the constituent pools. This reduces the probability that users can be liquidated as a result of crvUSD price deviations.

Vote Actions

This vote action is to add the fxSAVE-long LlamaLend market to the gauge controller.

ACTIONS = [
     # Add fxSAVE-long gauge to gauge controller
     ("0x2F50D538606Fa9EDD2B11E2446BEb18C9D5846bB", "add_gauge", "0xFFf3e31fbAB60ea73ea4a11eA796877F73d77E0f", 0, 0)
]
1 Like

This vote is live here: