SommelierTurboEthXStrategy
Overview
The SommelierTurboEthXStrategy contract is a strategy that supplies an underlying token into a Sommelier Vault to earn yield, with specific handling for ethX token conversions through Uniswap V3.
Constants
address constant ethX = ETHX_MAINNET; // EthX token address
IUniswapV3Router constant router = IUniswapV3Router(UNISWAP_V3_ROUTER_MAINNET); // Uniswap V3 routerFunctions
Initialization Functions
initialize
function initialize(
IMaxApyVault _vault,
address[] calldata _keepers,
bytes32 _strategyName,
address _strategist,
ICellar _cellar
) public override initializerInitializes the strategy with required components.
Parameters:
_vault: MaxApy vault address_keepers: Array of keeper addresses_strategyName: Name of the strategy_strategist: Strategist address_cellar: Sommelier cellar address
Core Functions
liquidateExact
function liquidateExact(uint256 amountNeeded) external virtual override checkRoles(VAULT_ROLE) returns (uint256 loss)Withdraws exactly amountNeeded to vault.
Parameters:
amountNeeded: Amount to withdraw
Returns:
loss: Amount of realized loss
Internal Core Functions
_divest
function _divest(uint256 shares) internal override returns (uint256 withdrawn)Withdraws assets from Cellar Vault.
Parameters:
shares: Amount of shares to withdraw
Returns:
withdrawn: Amount of assets received
_swapEthX
function _swapEthX(uint256 amountIn) internal returns (uint256)Swaps ethX tokens to underlying WETH using Uniswap V3.
Parameters:
amountIn: Amount of ethX to swap
Returns:
Amount of WETH received
Internal View Functions
_ethXBalance
function _ethXBalance() internal view returns (uint256)Returns the contract's ethX balance.
Returns:
Current ethX balance
Last updated