ThreeXBatchProcessing
Defines if the Batch will mint or redeem 3X
Functions:
Events:
Graphs:
Function Definitions:
constructor()
getMinAmountToMint()
getMinAmountFromRedeem()
valueOfComponents()
batchMint()
This function deposits USDC in the underlying Metapool and deposits these LP token to get yToken which in turn are used to mint 3X This process leaves some leftovers which are partially used in the next mint batches. In order to get USDC we can implement a zap to move stables into the curve tri-pool handleKeeperIncentive checks if the msg.sender is a permissioned keeper and pays them a reward for calling this function (see KeeperIncentive.sol)
batchRedeem()
This function reedeems 3X for the underlying yToken and deposits these yToken in curve Metapools for USDC In order to get other stablecoins from USDC we can use a zap to redeem USDC for stables in the curve tri-pool handleKeeperIncentive checks if the msg.sender is a permissioned keeper and pays them a reward for calling this function (see KeeperIncentive.sol)
setApprovals()
setComponents()
Parameter Name | Type | Description |
---|---|---|
| address[] | An array of addresses for the yToken needed to mint 3X |
| struct ThreeXBatchProcessing.ComponentDependencies[] | An array structs describing underlying yToken, curveMetapool (which is also the lpToken), swapPool and AngleRouter |
Events
BatchMinted
BatchRedeemed
ComponentDependenciesUpdated
Graphs
Dependency Graph
Inheritance Graph
Last updated