SommelierTurboGHOStrategy
Overview
The SommelierTurboGHOStrategy contract is a strategy that supplies tokens into a Sommelier Vault to earn yield, with specific handling for GHO token conversions through Uniswap V3.
Constants
address constant gho = GHO_MAINNET; // GHO token address
IUniswapV3Router constant router = IUniswapV3Router(UNISWAP_V3_ROUTER_MAINNET); // Uniswap V3 router
Functions
Initialization Functions
initialize
function initialize(
IMaxApyVault _vault,
address[] calldata _keepers,
bytes32 _strategyName,
address _strategist,
ICellar _cellar
) public override initializer
Initializes 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
_swapGho
function _swapGho(uint256 amountIn) internal returns (uint256)
Swaps GHO tokens to underlying using Uniswap V3.
Parameters:
amountIn
: Amount of GHO to swap
Returns:
Amount received after swap
Internal View Functions
_ghoBalance
function _ghoBalance() internal view returns (uint256)
Returns the contract's GHO balance.
Returns:
Current GHO balance
Last updated