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 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
_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