@pendle/core-v2 2.17.7-tradingbot → 2.18.0-tradingbot

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  6. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  10. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  19. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  20. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  21. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  22. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  23. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  24. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  25. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  26. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  27. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  28. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  29. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  30. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  31. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  33. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/TradingBot/BotActionCallback.sol/BotActionCallback.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/TradingBot/BotActionCallback.sol/BotActionCallback.json +32 -17
  68. package/build/artifacts/contracts/core/TradingBot/BotActionHelper.sol/BotActionHelper.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/TradingBot/BotActionHelper.sol/BotActionHelper.json +32 -17
  70. package/build/artifacts/contracts/core/TradingBot/BotSimulationLib.sol/BotSimulationLib.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/TradingBot/BotSimulationLib.sol/BotSimulationLib.json +2 -2
  72. package/build/artifacts/contracts/core/TradingBot/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.dbg.json +4 -0
  73. package/build/artifacts/contracts/core/TradingBot/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.json +1190 -0
  74. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.json +301 -397
  76. package/build/artifacts/contracts/core/TradingBot/MarketExtLib.sol/MarketExtLib.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/TradingBot/SpecSegmentLib.sol/SpecSegmentLib.dbg.json +4 -0
  78. package/build/artifacts/contracts/core/TradingBot/SpecSegmentLib.sol/SpecSegmentLib.json +10 -0
  79. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.json +32 -17
  81. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  92. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  93. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  94. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  100. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  103. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  105. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  107. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  109. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  111. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  114. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  115. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  116. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  117. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.json +542 -581
  119. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.json +256 -325
  121. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.dbg.json +1 -1
  122. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.json +6 -17
  123. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  124. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  125. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  126. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  127. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  128. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  129. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  130. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  131. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  132. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  133. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  134. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  135. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  136. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  137. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  138. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  139. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  140. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  141. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  142. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  143. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  144. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  145. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  146. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  147. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  148. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  149. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  150. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  151. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  152. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  153. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  154. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  155. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  156. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +1 -1
  157. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  158. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
  159. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  160. package/contracts/core/TradingBot/BotActionCallback.sol +1 -1
  161. package/contracts/core/TradingBot/BotActionHelper.sol +1 -3
  162. package/contracts/core/TradingBot/BotSimulationLib.sol +2 -1
  163. package/contracts/core/TradingBot/LongYieldDecisionHelper.sol +413 -0
  164. package/contracts/core/TradingBot/LongYieldTradingBot.sol +63 -91
  165. package/contracts/core/TradingBot/SpecSegmentLib.sol +62 -0
  166. package/contracts/core/TradingBot/TradingBotBase.sol +14 -9
  167. package/contracts/interfaces/TradingBot/IBotDecisionHelper.sol +41 -57
  168. package/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol +24 -34
  169. package/contracts/interfaces/TradingBot/ITradingBotBase.sol +1 -3
  170. package/package.json +1 -1
  171. package/typechain-types/BotActionCallback.ts +40 -22
  172. package/typechain-types/BotActionHelper.ts +40 -22
  173. package/typechain-types/BotDecisionHelper.ts +221 -187
  174. package/typechain-types/IAnkrBNB.ts +150 -0
  175. package/typechain-types/IAnkrLiquidStaking.ts +253 -0
  176. package/typechain-types/IBotDecisionHelper.ts +142 -212
  177. package/typechain-types/ILongYieldTradingBot.ts +147 -230
  178. package/typechain-types/ISwETH.ts +123 -0
  179. package/typechain-types/ITradingBotBase.ts +14 -22
  180. package/typechain-types/LongYieldDecisionHelper.ts +598 -0
  181. package/typechain-types/LongYieldTradingBot.ts +191 -248
  182. package/typechain-types/PendleAnkrBNBSY.ts +1235 -0
  183. package/typechain-types/PendleAuraWstethAnkreth.ts +1511 -0
  184. package/typechain-types/PendleSwETH.ts +1216 -0
  185. package/typechain-types/PendleThenaSY.ts +153 -0
  186. package/typechain-types/PendleWbEthSY.ts +1229 -0
  187. package/typechain-types/ThenaLpHelper.ts +19 -0
  188. package/typechain-types/ThenaMath.ts +87 -0
  189. package/typechain-types/ThenaPreview.ts +19 -0
  190. package/typechain-types/TradingBotBase.ts +40 -22
  191. package/typechain-types/factories/BotActionCallback__factory.ts +31 -16
  192. package/typechain-types/factories/BotActionHelper__factory.ts +31 -16
  193. package/typechain-types/factories/BotDecisionHelper__factory.ts +490 -421
  194. package/typechain-types/factories/IAnkrBNB__factory.ts +74 -0
  195. package/typechain-types/factories/IAnkrLiquidStaking__factory.ts +123 -0
  196. package/typechain-types/factories/IBotDecisionHelper__factory.ts +540 -579
  197. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +255 -324
  198. package/typechain-types/factories/ISwETH__factory.ts +53 -0
  199. package/typechain-types/factories/ITradingBotBase__factory.ts +6 -17
  200. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1247 -0
  201. package/typechain-types/factories/LongYieldTradingBot__factory.ts +301 -393
  202. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1100 -0
  203. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1244 -0
  204. package/typechain-types/factories/PendleSwETH__factory.ts +1022 -0
  205. package/typechain-types/factories/PendleThenaSY__factory.ts +85 -1
  206. package/typechain-types/factories/PendleWbEthSY__factory.ts +1049 -0
  207. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  208. package/typechain-types/factories/ThenaLpHelper__factory.ts +13 -0
  209. package/typechain-types/factories/ThenaMath__factory.ts +36 -0
  210. package/typechain-types/factories/ThenaPreview__factory.ts +14 -1
  211. package/typechain-types/factories/TradingBotBase__factory.ts +31 -16
  212. package/typechain-types/hardhat.d.ts +4 -40
  213. package/typechain-types/index.ts +2 -10
  214. package/build/artifacts/contracts/core/TradingBot/BotDecisionHelper.sol/BotDecisionHelper.dbg.json +0 -4
  215. package/build/artifacts/contracts/core/TradingBot/BotDecisionHelper.sol/BotDecisionHelper.json +0 -1070
  216. package/contracts/core/TradingBot/BotDecisionHelper.sol +0 -306
@@ -92,12 +92,12 @@ export type TokenAmountStructOutput = [string, BigNumber] & {
92
92
  };
93
93
 
94
94
  export type LongTradingSpecsStruct = {
95
- lowerIyLimit: BigNumberish;
96
- upperIyLimit: BigNumberish;
97
- floatingSyRatioLimit: BigNumberish;
98
- floatingSyRatioTarget: BigNumberish;
99
- ytPtRatioLimit: BigNumberish;
100
- ytPtRatioTarget: BigNumberish;
95
+ buyYtIy: BigNumberish;
96
+ sellYtIy: BigNumberish;
97
+ targetSyRatio: BigNumberish;
98
+ maxSyRatio: BigNumberish;
99
+ minYtPtRatio: BigNumberish;
100
+ numOfBins: BigNumberish;
101
101
  };
102
102
 
103
103
  export type LongTradingSpecsStructOutput = [
@@ -108,24 +108,31 @@ export type LongTradingSpecsStructOutput = [
108
108
  BigNumber,
109
109
  BigNumber
110
110
  ] & {
111
- lowerIyLimit: BigNumber;
112
- upperIyLimit: BigNumber;
113
- floatingSyRatioLimit: BigNumber;
114
- floatingSyRatioTarget: BigNumber;
115
- ytPtRatioLimit: BigNumber;
116
- ytPtRatioTarget: BigNumber;
111
+ buyYtIy: BigNumber;
112
+ sellYtIy: BigNumber;
113
+ targetSyRatio: BigNumber;
114
+ maxSyRatio: BigNumber;
115
+ minYtPtRatio: BigNumber;
116
+ numOfBins: BigNumber;
117
117
  };
118
118
 
119
119
  export type BotStateStruct = {
120
120
  lpBalance: BigNumberish;
121
121
  ytBalance: BigNumberish;
122
122
  syBalance: BigNumberish;
123
+ buyBins: BigNumberish;
123
124
  };
124
125
 
125
- export type BotStateStructOutput = [BigNumber, BigNumber, BigNumber] & {
126
+ export type BotStateStructOutput = [
127
+ BigNumber,
128
+ BigNumber,
129
+ BigNumber,
130
+ BigNumber
131
+ ] & {
126
132
  lpBalance: BigNumber;
127
133
  ytBalance: BigNumber;
128
134
  syBalance: BigNumber;
135
+ buyBins: BigNumber;
129
136
  };
130
137
 
131
138
  export type MarketStateStruct = {
@@ -174,6 +181,65 @@ export type MarketExtStateStructOutput = [
174
181
  BigNumber
175
182
  ] & { state: MarketStateStructOutput; index: BigNumber; blockTime: BigNumber };
176
183
 
184
+ export type StrategyDataStruct = {
185
+ botState: BotStateStruct;
186
+ marketExt: MarketExtStateStruct;
187
+ specs: LongTradingSpecsStruct;
188
+ };
189
+
190
+ export type StrategyDataStructOutput = [
191
+ BotStateStructOutput,
192
+ MarketExtStateStructOutput,
193
+ LongTradingSpecsStructOutput
194
+ ] & {
195
+ botState: BotStateStructOutput;
196
+ marketExt: MarketExtStateStructOutput;
197
+ specs: LongTradingSpecsStructOutput;
198
+ };
199
+
200
+ export declare namespace ILongYieldTradingBot {
201
+ export type AddLiqFromYtInputStruct = {
202
+ botParams: ApproxParamsStruct;
203
+ minLpOut: BigNumberish;
204
+ targetIy: BigNumberish;
205
+ currentBin: BigNumberish;
206
+ };
207
+
208
+ export type AddLiqFromYtInputStructOutput = [
209
+ ApproxParamsStructOutput,
210
+ BigNumber,
211
+ BigNumber,
212
+ BigNumber
213
+ ] & {
214
+ botParams: ApproxParamsStructOutput;
215
+ minLpOut: BigNumber;
216
+ targetIy: BigNumber;
217
+ currentBin: BigNumber;
218
+ };
219
+
220
+ export type RemoveLiqToYtInputStruct = {
221
+ botParams: ApproxParamsStruct;
222
+ guessTotalPtToSwap: ApproxParamsStruct;
223
+ minYtOut: BigNumberish;
224
+ targetIy: BigNumberish;
225
+ currentBin: BigNumberish;
226
+ };
227
+
228
+ export type RemoveLiqToYtInputStructOutput = [
229
+ ApproxParamsStructOutput,
230
+ ApproxParamsStructOutput,
231
+ BigNumber,
232
+ BigNumber,
233
+ BigNumber
234
+ ] & {
235
+ botParams: ApproxParamsStructOutput;
236
+ guessTotalPtToSwap: ApproxParamsStructOutput;
237
+ minYtOut: BigNumber;
238
+ targetIy: BigNumber;
239
+ currentBin: BigNumber;
240
+ };
241
+ }
242
+
177
243
  export declare namespace ITradingBotBase {
178
244
  export type MultiApprovalStruct = { tokens: string[]; spender: string };
179
245
 
@@ -190,28 +256,29 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
190
256
  "PT()": FunctionFragment;
191
257
  "SY()": FunctionFragment;
192
258
  "YT()": FunctionFragment;
193
- "addLiqFromSy((uint256,uint256,uint256,uint256,uint256),uint256,uint256)": FunctionFragment;
194
- "addLiqFromYt((uint256,uint256,uint256,uint256,uint256),uint256,uint256)": FunctionFragment;
195
- "addLiqKeepYt(address,(uint256,uint256,uint256,uint256,uint256),uint256,uint256,uint256)": FunctionFragment;
259
+ "addLiqFromYt(((uint256,uint256,uint256,uint256,uint256),uint256,uint256,int256))": FunctionFragment;
260
+ "addLiqKeepYt(uint256,uint256,uint256)": FunctionFragment;
196
261
  "approveInf((address[],address)[])": FunctionFragment;
197
- "claimAndCompound(address,(address,uint256,address,address,address,(uint8,address,bytes,bool))[],uint256)": FunctionFragment;
262
+ "buyBins()": FunctionFragment;
263
+ "claimAndCompound((address,uint256,address,address,address,(uint8,address,bytes,bool))[],uint256)": FunctionFragment;
198
264
  "claimOwnership()": FunctionFragment;
199
265
  "claimWithoutCompound()": FunctionFragment;
200
266
  "decisionHelper()": FunctionFragment;
201
267
  "depositSy(uint256)": FunctionFragment;
202
- "depositToken(address,(address,uint256,address,address,address,(uint8,address,bytes,bool)),uint256)": FunctionFragment;
268
+ "depositToken((address,uint256,address,address,address,(uint8,address,bytes,bool)),uint256)": FunctionFragment;
203
269
  "initialize((uint256,uint256,uint256,uint256,uint256,uint256))": FunctionFragment;
204
270
  "market()": FunctionFragment;
205
271
  "owner()": FunctionFragment;
206
272
  "pendingOwner()": FunctionFragment;
207
273
  "proxiableUUID()": FunctionFragment;
208
274
  "readBotState()": FunctionFragment;
209
- "readMarketExtState(address)": FunctionFragment;
210
- "removeLiqToYt((uint256,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256,uint256),uint256,uint256)": FunctionFragment;
275
+ "readMarketExtState()": FunctionFragment;
276
+ "readStrategyData()": FunctionFragment;
277
+ "removeLiqToYt(((uint256,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256,uint256),uint256,uint256,int256))": FunctionFragment;
278
+ "router()": FunctionFragment;
211
279
  "setSpecs((uint256,uint256,uint256,uint256,uint256,uint256))": FunctionFragment;
212
280
  "specs()": FunctionFragment;
213
281
  "swapCallback(int256,int256,bytes)": FunctionFragment;
214
- "swapSyToYt(address,(uint256,uint256,uint256,uint256,uint256),uint256,uint256)": FunctionFragment;
215
282
  "transferOwnership(address,bool,bool)": FunctionFragment;
216
283
  "upgradeTo(address)": FunctionFragment;
217
284
  "upgradeToAndCall(address,bytes)": FunctionFragment;
@@ -222,31 +289,22 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
222
289
  encodeFunctionData(functionFragment: "PT", values?: undefined): string;
223
290
  encodeFunctionData(functionFragment: "SY", values?: undefined): string;
224
291
  encodeFunctionData(functionFragment: "YT", values?: undefined): string;
225
- encodeFunctionData(
226
- functionFragment: "addLiqFromSy",
227
- values: [ApproxParamsStruct, BigNumberish, BigNumberish]
228
- ): string;
229
292
  encodeFunctionData(
230
293
  functionFragment: "addLiqFromYt",
231
- values: [ApproxParamsStruct, BigNumberish, BigNumberish]
294
+ values: [ILongYieldTradingBot.AddLiqFromYtInputStruct]
232
295
  ): string;
233
296
  encodeFunctionData(
234
297
  functionFragment: "addLiqKeepYt",
235
- values: [
236
- string,
237
- ApproxParamsStruct,
238
- BigNumberish,
239
- BigNumberish,
240
- BigNumberish
241
- ]
298
+ values: [BigNumberish, BigNumberish, BigNumberish]
242
299
  ): string;
243
300
  encodeFunctionData(
244
301
  functionFragment: "approveInf",
245
302
  values: [ITradingBotBase.MultiApprovalStruct[]]
246
303
  ): string;
304
+ encodeFunctionData(functionFragment: "buyBins", values?: undefined): string;
247
305
  encodeFunctionData(
248
306
  functionFragment: "claimAndCompound",
249
- values: [string, TokenInputStruct[], BigNumberish]
307
+ values: [TokenInputStruct[], BigNumberish]
250
308
  ): string;
251
309
  encodeFunctionData(
252
310
  functionFragment: "claimOwnership",
@@ -266,7 +324,7 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
266
324
  ): string;
267
325
  encodeFunctionData(
268
326
  functionFragment: "depositToken",
269
- values: [string, TokenInputStruct, BigNumberish]
327
+ values: [TokenInputStruct, BigNumberish]
270
328
  ): string;
271
329
  encodeFunctionData(
272
330
  functionFragment: "initialize",
@@ -288,12 +346,17 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
288
346
  ): string;
289
347
  encodeFunctionData(
290
348
  functionFragment: "readMarketExtState",
291
- values: [string]
349
+ values?: undefined
350
+ ): string;
351
+ encodeFunctionData(
352
+ functionFragment: "readStrategyData",
353
+ values?: undefined
292
354
  ): string;
293
355
  encodeFunctionData(
294
356
  functionFragment: "removeLiqToYt",
295
- values: [ApproxParamsStruct, ApproxParamsStruct, BigNumberish, BigNumberish]
357
+ values: [ILongYieldTradingBot.RemoveLiqToYtInputStruct]
296
358
  ): string;
359
+ encodeFunctionData(functionFragment: "router", values?: undefined): string;
297
360
  encodeFunctionData(
298
361
  functionFragment: "setSpecs",
299
362
  values: [LongTradingSpecsStruct]
@@ -303,10 +366,6 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
303
366
  functionFragment: "swapCallback",
304
367
  values: [BigNumberish, BigNumberish, BytesLike]
305
368
  ): string;
306
- encodeFunctionData(
307
- functionFragment: "swapSyToYt",
308
- values: [string, ApproxParamsStruct, BigNumberish, BigNumberish]
309
- ): string;
310
369
  encodeFunctionData(
311
370
  functionFragment: "transferOwnership",
312
371
  values: [string, boolean, boolean]
@@ -325,10 +384,6 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
325
384
  decodeFunctionResult(functionFragment: "PT", data: BytesLike): Result;
326
385
  decodeFunctionResult(functionFragment: "SY", data: BytesLike): Result;
327
386
  decodeFunctionResult(functionFragment: "YT", data: BytesLike): Result;
328
- decodeFunctionResult(
329
- functionFragment: "addLiqFromSy",
330
- data: BytesLike
331
- ): Result;
332
387
  decodeFunctionResult(
333
388
  functionFragment: "addLiqFromYt",
334
389
  data: BytesLike
@@ -338,6 +393,7 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
338
393
  data: BytesLike
339
394
  ): Result;
340
395
  decodeFunctionResult(functionFragment: "approveInf", data: BytesLike): Result;
396
+ decodeFunctionResult(functionFragment: "buyBins", data: BytesLike): Result;
341
397
  decodeFunctionResult(
342
398
  functionFragment: "claimAndCompound",
343
399
  data: BytesLike
@@ -378,17 +434,21 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
378
434
  functionFragment: "readMarketExtState",
379
435
  data: BytesLike
380
436
  ): Result;
437
+ decodeFunctionResult(
438
+ functionFragment: "readStrategyData",
439
+ data: BytesLike
440
+ ): Result;
381
441
  decodeFunctionResult(
382
442
  functionFragment: "removeLiqToYt",
383
443
  data: BytesLike
384
444
  ): Result;
445
+ decodeFunctionResult(functionFragment: "router", data: BytesLike): Result;
385
446
  decodeFunctionResult(functionFragment: "setSpecs", data: BytesLike): Result;
386
447
  decodeFunctionResult(functionFragment: "specs", data: BytesLike): Result;
387
448
  decodeFunctionResult(
388
449
  functionFragment: "swapCallback",
389
450
  data: BytesLike
390
451
  ): Result;
391
- decodeFunctionResult(functionFragment: "swapSyToYt", data: BytesLike): Result;
392
452
  decodeFunctionResult(
393
453
  functionFragment: "transferOwnership",
394
454
  data: BytesLike
@@ -405,8 +465,8 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
405
465
 
406
466
  events: {
407
467
  "AddLiqFromSy(tuple,uint256,uint256,uint256)": EventFragment;
408
- "AddLiqFromYt(tuple,uint256,uint256,uint256)": EventFragment;
409
- "AddLiqKeepYt(tuple,uint256,uint256,uint256,uint256)": EventFragment;
468
+ "AddLiqFromYt(tuple,uint256,uint256)": EventFragment;
469
+ "AddLiqKeepYt(uint256,uint256,uint256)": EventFragment;
410
470
  "AdminChanged(address,address)": EventFragment;
411
471
  "BeaconUpgraded(address)": EventFragment;
412
472
  "ClaimAndCompound(uint256,uint256)": EventFragment;
@@ -414,7 +474,7 @@ export interface LongYieldTradingBotInterface extends utils.Interface {
414
474
  "DepositToken(address,uint256)": EventFragment;
415
475
  "Initialized(uint8)": EventFragment;
416
476
  "OwnershipTransferred(address,address)": EventFragment;
417
- "RemoveLiqToYt(tuple,uint256,uint256,uint256)": EventFragment;
477
+ "RemoveLiqToYt(tuple,uint256,uint256)": EventFragment;
418
478
  "SwapSyToYt(tuple,uint256,uint256,uint256)": EventFragment;
419
479
  "Upgraded(address)": EventFragment;
420
480
  "WithdrawFunds(address,uint256)": EventFragment;
@@ -449,10 +509,9 @@ export type AddLiqFromSyEvent = TypedEvent<
449
509
  export type AddLiqFromSyEventFilter = TypedEventFilter<AddLiqFromSyEvent>;
450
510
 
451
511
  export type AddLiqFromYtEvent = TypedEvent<
452
- [ApproxParamsStructOutput, BigNumber, BigNumber, BigNumber],
512
+ [ApproxParamsStructOutput, BigNumber, BigNumber],
453
513
  {
454
514
  botParams: ApproxParamsStructOutput;
455
- maxYtIn: BigNumber;
456
515
  netYtIn: BigNumber;
457
516
  netLpOut: BigNumber;
458
517
  }
@@ -461,14 +520,8 @@ export type AddLiqFromYtEvent = TypedEvent<
461
520
  export type AddLiqFromYtEventFilter = TypedEventFilter<AddLiqFromYtEvent>;
462
521
 
463
522
  export type AddLiqKeepYtEvent = TypedEvent<
464
- [ApproxParamsStructOutput, BigNumber, BigNumber, BigNumber, BigNumber],
465
- {
466
- botParams: ApproxParamsStructOutput;
467
- maxSyIn: BigNumber;
468
- netSyIn: BigNumber;
469
- netLpOut: BigNumber;
470
- netYtOut: BigNumber;
471
- }
523
+ [BigNumber, BigNumber, BigNumber],
524
+ { netSyIn: BigNumber; netLpOut: BigNumber; netYtOut: BigNumber }
472
525
  >;
473
526
 
474
527
  export type AddLiqKeepYtEventFilter = TypedEventFilter<AddLiqKeepYtEvent>;
@@ -516,10 +569,9 @@ export type OwnershipTransferredEventFilter =
516
569
  TypedEventFilter<OwnershipTransferredEvent>;
517
570
 
518
571
  export type RemoveLiqToYtEvent = TypedEvent<
519
- [ApproxParamsStructOutput, BigNumber, BigNumber, BigNumber],
572
+ [ApproxParamsStructOutput, BigNumber, BigNumber],
520
573
  {
521
574
  botParams: ApproxParamsStructOutput;
522
- maxLpRemoved: BigNumber;
523
575
  netLpIn: BigNumber;
524
576
  netYtOut: BigNumber;
525
577
  }
@@ -586,24 +638,13 @@ export interface LongYieldTradingBot extends BaseContract {
586
638
 
587
639
  YT(overrides?: CallOverrides): Promise<[string]>;
588
640
 
589
- addLiqFromSy(
590
- botParams: ApproxParamsStruct,
591
- minLpOut: BigNumberish,
592
- maxSyIn: BigNumberish,
593
- overrides?: Overrides & { from?: string | Promise<string> }
594
- ): Promise<ContractTransaction>;
595
-
596
641
  addLiqFromYt(
597
- botParams: ApproxParamsStruct,
598
- minLpOut: BigNumberish,
599
- maxYtIn: BigNumberish,
642
+ inputParams: ILongYieldTradingBot.AddLiqFromYtInputStruct,
600
643
  overrides?: Overrides & { from?: string | Promise<string> }
601
644
  ): Promise<ContractTransaction>;
602
645
 
603
646
  addLiqKeepYt(
604
- router: string,
605
- botParams: ApproxParamsStruct,
606
- maxSyIn: BigNumberish,
647
+ netSyIn: BigNumberish,
607
648
  minLpOut: BigNumberish,
608
649
  minYtOut: BigNumberish,
609
650
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -614,8 +655,9 @@ export interface LongYieldTradingBot extends BaseContract {
614
655
  overrides?: Overrides & { from?: string | Promise<string> }
615
656
  ): Promise<ContractTransaction>;
616
657
 
658
+ buyBins(overrides?: CallOverrides): Promise<[BigNumber]>;
659
+
617
660
  claimAndCompound(
618
- router: string,
619
661
  inps: TokenInputStruct[],
620
662
  minSyOut: BigNumberish,
621
663
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -637,7 +679,6 @@ export interface LongYieldTradingBot extends BaseContract {
637
679
  ): Promise<ContractTransaction>;
638
680
 
639
681
  depositToken(
640
- router: string,
641
682
  inp: TokenInputStruct,
642
683
  minSyOut: BigNumberish,
643
684
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -661,18 +702,20 @@ export interface LongYieldTradingBot extends BaseContract {
661
702
  ): Promise<[BotStateStructOutput] & { botState: BotStateStructOutput }>;
662
703
 
663
704
  readMarketExtState(
664
- router: string,
705
+ overrides?: Overrides & { from?: string | Promise<string> }
706
+ ): Promise<ContractTransaction>;
707
+
708
+ readStrategyData(
665
709
  overrides?: Overrides & { from?: string | Promise<string> }
666
710
  ): Promise<ContractTransaction>;
667
711
 
668
712
  removeLiqToYt(
669
- botParams: ApproxParamsStruct,
670
- guessTotalPtToSwap: ApproxParamsStruct,
671
- maxLpRemoved: BigNumberish,
672
- minYtOut: BigNumberish,
713
+ inputParams: ILongYieldTradingBot.RemoveLiqToYtInputStruct,
673
714
  overrides?: Overrides & { from?: string | Promise<string> }
674
715
  ): Promise<ContractTransaction>;
675
716
 
717
+ router(overrides?: CallOverrides): Promise<[string]>;
718
+
676
719
  setSpecs(
677
720
  _specs: LongTradingSpecsStruct,
678
721
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -682,12 +725,12 @@ export interface LongYieldTradingBot extends BaseContract {
682
725
  overrides?: CallOverrides
683
726
  ): Promise<
684
727
  [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & {
685
- lowerIyLimit: BigNumber;
686
- upperIyLimit: BigNumber;
687
- floatingSyRatioLimit: BigNumber;
688
- floatingSyRatioTarget: BigNumber;
689
- ytPtRatioLimit: BigNumber;
690
- ytPtRatioTarget: BigNumber;
728
+ buyYtIy: BigNumber;
729
+ sellYtIy: BigNumber;
730
+ targetSyRatio: BigNumber;
731
+ maxSyRatio: BigNumber;
732
+ minYtPtRatio: BigNumber;
733
+ numOfBins: BigNumber;
691
734
  }
692
735
  >;
693
736
 
@@ -698,14 +741,6 @@ export interface LongYieldTradingBot extends BaseContract {
698
741
  overrides?: Overrides & { from?: string | Promise<string> }
699
742
  ): Promise<ContractTransaction>;
700
743
 
701
- swapSyToYt(
702
- router: string,
703
- botParams: ApproxParamsStruct,
704
- minYtOut: BigNumberish,
705
- maxSyIn: BigNumberish,
706
- overrides?: Overrides & { from?: string | Promise<string> }
707
- ): Promise<ContractTransaction>;
708
-
709
744
  transferOwnership(
710
745
  newOwner: string,
711
746
  direct: boolean,
@@ -739,24 +774,13 @@ export interface LongYieldTradingBot extends BaseContract {
739
774
 
740
775
  YT(overrides?: CallOverrides): Promise<string>;
741
776
 
742
- addLiqFromSy(
743
- botParams: ApproxParamsStruct,
744
- minLpOut: BigNumberish,
745
- maxSyIn: BigNumberish,
746
- overrides?: Overrides & { from?: string | Promise<string> }
747
- ): Promise<ContractTransaction>;
748
-
749
777
  addLiqFromYt(
750
- botParams: ApproxParamsStruct,
751
- minLpOut: BigNumberish,
752
- maxYtIn: BigNumberish,
778
+ inputParams: ILongYieldTradingBot.AddLiqFromYtInputStruct,
753
779
  overrides?: Overrides & { from?: string | Promise<string> }
754
780
  ): Promise<ContractTransaction>;
755
781
 
756
782
  addLiqKeepYt(
757
- router: string,
758
- botParams: ApproxParamsStruct,
759
- maxSyIn: BigNumberish,
783
+ netSyIn: BigNumberish,
760
784
  minLpOut: BigNumberish,
761
785
  minYtOut: BigNumberish,
762
786
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -767,8 +791,9 @@ export interface LongYieldTradingBot extends BaseContract {
767
791
  overrides?: Overrides & { from?: string | Promise<string> }
768
792
  ): Promise<ContractTransaction>;
769
793
 
794
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
795
+
770
796
  claimAndCompound(
771
- router: string,
772
797
  inps: TokenInputStruct[],
773
798
  minSyOut: BigNumberish,
774
799
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -790,7 +815,6 @@ export interface LongYieldTradingBot extends BaseContract {
790
815
  ): Promise<ContractTransaction>;
791
816
 
792
817
  depositToken(
793
- router: string,
794
818
  inp: TokenInputStruct,
795
819
  minSyOut: BigNumberish,
796
820
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -812,18 +836,20 @@ export interface LongYieldTradingBot extends BaseContract {
812
836
  readBotState(overrides?: CallOverrides): Promise<BotStateStructOutput>;
813
837
 
814
838
  readMarketExtState(
815
- router: string,
839
+ overrides?: Overrides & { from?: string | Promise<string> }
840
+ ): Promise<ContractTransaction>;
841
+
842
+ readStrategyData(
816
843
  overrides?: Overrides & { from?: string | Promise<string> }
817
844
  ): Promise<ContractTransaction>;
818
845
 
819
846
  removeLiqToYt(
820
- botParams: ApproxParamsStruct,
821
- guessTotalPtToSwap: ApproxParamsStruct,
822
- maxLpRemoved: BigNumberish,
823
- minYtOut: BigNumberish,
847
+ inputParams: ILongYieldTradingBot.RemoveLiqToYtInputStruct,
824
848
  overrides?: Overrides & { from?: string | Promise<string> }
825
849
  ): Promise<ContractTransaction>;
826
850
 
851
+ router(overrides?: CallOverrides): Promise<string>;
852
+
827
853
  setSpecs(
828
854
  _specs: LongTradingSpecsStruct,
829
855
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -833,12 +859,12 @@ export interface LongYieldTradingBot extends BaseContract {
833
859
  overrides?: CallOverrides
834
860
  ): Promise<
835
861
  [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & {
836
- lowerIyLimit: BigNumber;
837
- upperIyLimit: BigNumber;
838
- floatingSyRatioLimit: BigNumber;
839
- floatingSyRatioTarget: BigNumber;
840
- ytPtRatioLimit: BigNumber;
841
- ytPtRatioTarget: BigNumber;
862
+ buyYtIy: BigNumber;
863
+ sellYtIy: BigNumber;
864
+ targetSyRatio: BigNumber;
865
+ maxSyRatio: BigNumber;
866
+ minYtPtRatio: BigNumber;
867
+ numOfBins: BigNumber;
842
868
  }
843
869
  >;
844
870
 
@@ -849,14 +875,6 @@ export interface LongYieldTradingBot extends BaseContract {
849
875
  overrides?: Overrides & { from?: string | Promise<string> }
850
876
  ): Promise<ContractTransaction>;
851
877
 
852
- swapSyToYt(
853
- router: string,
854
- botParams: ApproxParamsStruct,
855
- minYtOut: BigNumberish,
856
- maxSyIn: BigNumberish,
857
- overrides?: Overrides & { from?: string | Promise<string> }
858
- ): Promise<ContractTransaction>;
859
-
860
878
  transferOwnership(
861
879
  newOwner: string,
862
880
  direct: boolean,
@@ -890,23 +908,8 @@ export interface LongYieldTradingBot extends BaseContract {
890
908
 
891
909
  YT(overrides?: CallOverrides): Promise<string>;
892
910
 
893
- addLiqFromSy(
894
- botParams: ApproxParamsStruct,
895
- minLpOut: BigNumberish,
896
- maxSyIn: BigNumberish,
897
- overrides?: CallOverrides
898
- ): Promise<
899
- [BigNumber, BigNumber, BigNumber] & {
900
- netPtFromSwap: BigNumber;
901
- netLpOut: BigNumber;
902
- netSyIn: BigNumber;
903
- }
904
- >;
905
-
906
911
  addLiqFromYt(
907
- botParams: ApproxParamsStruct,
908
- minLpOut: BigNumberish,
909
- maxYtIn: BigNumberish,
912
+ inputParams: ILongYieldTradingBot.AddLiqFromYtInputStruct,
910
913
  overrides?: CallOverrides
911
914
  ): Promise<
912
915
  [BigNumber, BigNumber, BigNumber] & {
@@ -917,18 +920,12 @@ export interface LongYieldTradingBot extends BaseContract {
917
920
  >;
918
921
 
919
922
  addLiqKeepYt(
920
- router: string,
921
- botParams: ApproxParamsStruct,
922
- maxSyIn: BigNumberish,
923
+ netSyIn: BigNumberish,
923
924
  minLpOut: BigNumberish,
924
925
  minYtOut: BigNumberish,
925
926
  overrides?: CallOverrides
926
927
  ): Promise<
927
- [BigNumber, BigNumber, BigNumber] & {
928
- netSyIn: BigNumber;
929
- netLpOut: BigNumber;
930
- netYtOut: BigNumber;
931
- }
928
+ [BigNumber, BigNumber] & { netLpOut: BigNumber; netYtOut: BigNumber }
932
929
  >;
933
930
 
934
931
  approveInf(
@@ -936,8 +933,9 @@ export interface LongYieldTradingBot extends BaseContract {
936
933
  overrides?: CallOverrides
937
934
  ): Promise<void>;
938
935
 
936
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
937
+
939
938
  claimAndCompound(
940
- router: string,
941
939
  inps: TokenInputStruct[],
942
940
  minSyOut: BigNumberish,
943
941
  overrides?: CallOverrides
@@ -956,7 +954,6 @@ export interface LongYieldTradingBot extends BaseContract {
956
954
  depositSy(netSyIn: BigNumberish, overrides?: CallOverrides): Promise<void>;
957
955
 
958
956
  depositToken(
959
- router: string,
960
957
  inp: TokenInputStruct,
961
958
  minSyOut: BigNumberish,
962
959
  overrides?: CallOverrides
@@ -978,24 +975,22 @@ export interface LongYieldTradingBot extends BaseContract {
978
975
  readBotState(overrides?: CallOverrides): Promise<BotStateStructOutput>;
979
976
 
980
977
  readMarketExtState(
981
- router: string,
982
978
  overrides?: CallOverrides
983
979
  ): Promise<MarketExtStateStructOutput>;
984
980
 
981
+ readStrategyData(
982
+ overrides?: CallOverrides
983
+ ): Promise<StrategyDataStructOutput>;
984
+
985
985
  removeLiqToYt(
986
- botParams: ApproxParamsStruct,
987
- guessTotalPtToSwap: ApproxParamsStruct,
988
- maxLpRemoved: BigNumberish,
989
- minYtOut: BigNumberish,
986
+ inputParams: ILongYieldTradingBot.RemoveLiqToYtInputStruct,
990
987
  overrides?: CallOverrides
991
988
  ): Promise<
992
- [BigNumber, BigNumber, BigNumber] & {
993
- netLpRemoved: BigNumber;
994
- netYtOut: BigNumber;
995
- totalPtToSwap: BigNumber;
996
- }
989
+ [BigNumber, BigNumber] & { netLpRemoved: BigNumber; netYtOut: BigNumber }
997
990
  >;
998
991
 
992
+ router(overrides?: CallOverrides): Promise<string>;
993
+
999
994
  setSpecs(
1000
995
  _specs: LongTradingSpecsStruct,
1001
996
  overrides?: CallOverrides
@@ -1005,12 +1000,12 @@ export interface LongYieldTradingBot extends BaseContract {
1005
1000
  overrides?: CallOverrides
1006
1001
  ): Promise<
1007
1002
  [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & {
1008
- lowerIyLimit: BigNumber;
1009
- upperIyLimit: BigNumber;
1010
- floatingSyRatioLimit: BigNumber;
1011
- floatingSyRatioTarget: BigNumber;
1012
- ytPtRatioLimit: BigNumber;
1013
- ytPtRatioTarget: BigNumber;
1003
+ buyYtIy: BigNumber;
1004
+ sellYtIy: BigNumber;
1005
+ targetSyRatio: BigNumber;
1006
+ maxSyRatio: BigNumber;
1007
+ minYtPtRatio: BigNumber;
1008
+ numOfBins: BigNumber;
1014
1009
  }
1015
1010
  >;
1016
1011
 
@@ -1021,16 +1016,6 @@ export interface LongYieldTradingBot extends BaseContract {
1021
1016
  overrides?: CallOverrides
1022
1017
  ): Promise<void>;
1023
1018
 
1024
- swapSyToYt(
1025
- router: string,
1026
- botParams: ApproxParamsStruct,
1027
- minYtOut: BigNumberish,
1028
- maxSyIn: BigNumberish,
1029
- overrides?: CallOverrides
1030
- ): Promise<
1031
- [BigNumber, BigNumber] & { exactYtOut: BigNumber; netSyIn: BigNumber }
1032
- >;
1033
-
1034
1019
  transferOwnership(
1035
1020
  newOwner: string,
1036
1021
  direct: boolean,
@@ -1070,29 +1055,23 @@ export interface LongYieldTradingBot extends BaseContract {
1070
1055
  netLpOut?: null
1071
1056
  ): AddLiqFromSyEventFilter;
1072
1057
 
1073
- "AddLiqFromYt(tuple,uint256,uint256,uint256)"(
1058
+ "AddLiqFromYt(tuple,uint256,uint256)"(
1074
1059
  botParams?: null,
1075
- maxYtIn?: null,
1076
1060
  netYtIn?: null,
1077
1061
  netLpOut?: null
1078
1062
  ): AddLiqFromYtEventFilter;
1079
1063
  AddLiqFromYt(
1080
1064
  botParams?: null,
1081
- maxYtIn?: null,
1082
1065
  netYtIn?: null,
1083
1066
  netLpOut?: null
1084
1067
  ): AddLiqFromYtEventFilter;
1085
1068
 
1086
- "AddLiqKeepYt(tuple,uint256,uint256,uint256,uint256)"(
1087
- botParams?: null,
1088
- maxSyIn?: null,
1069
+ "AddLiqKeepYt(uint256,uint256,uint256)"(
1089
1070
  netSyIn?: null,
1090
1071
  netLpOut?: null,
1091
1072
  netYtOut?: null
1092
1073
  ): AddLiqKeepYtEventFilter;
1093
1074
  AddLiqKeepYt(
1094
- botParams?: null,
1095
- maxSyIn?: null,
1096
1075
  netSyIn?: null,
1097
1076
  netLpOut?: null,
1098
1077
  netYtOut?: null
@@ -1145,15 +1124,13 @@ export interface LongYieldTradingBot extends BaseContract {
1145
1124
  newOwner?: string | null
1146
1125
  ): OwnershipTransferredEventFilter;
1147
1126
 
1148
- "RemoveLiqToYt(tuple,uint256,uint256,uint256)"(
1127
+ "RemoveLiqToYt(tuple,uint256,uint256)"(
1149
1128
  botParams?: null,
1150
- maxLpRemoved?: null,
1151
1129
  netLpIn?: null,
1152
1130
  netYtOut?: null
1153
1131
  ): RemoveLiqToYtEventFilter;
1154
1132
  RemoveLiqToYt(
1155
1133
  botParams?: null,
1156
- maxLpRemoved?: null,
1157
1134
  netLpIn?: null,
1158
1135
  netYtOut?: null
1159
1136
  ): RemoveLiqToYtEventFilter;
@@ -1193,24 +1170,13 @@ export interface LongYieldTradingBot extends BaseContract {
1193
1170
 
1194
1171
  YT(overrides?: CallOverrides): Promise<BigNumber>;
1195
1172
 
1196
- addLiqFromSy(
1197
- botParams: ApproxParamsStruct,
1198
- minLpOut: BigNumberish,
1199
- maxSyIn: BigNumberish,
1200
- overrides?: Overrides & { from?: string | Promise<string> }
1201
- ): Promise<BigNumber>;
1202
-
1203
1173
  addLiqFromYt(
1204
- botParams: ApproxParamsStruct,
1205
- minLpOut: BigNumberish,
1206
- maxYtIn: BigNumberish,
1174
+ inputParams: ILongYieldTradingBot.AddLiqFromYtInputStruct,
1207
1175
  overrides?: Overrides & { from?: string | Promise<string> }
1208
1176
  ): Promise<BigNumber>;
1209
1177
 
1210
1178
  addLiqKeepYt(
1211
- router: string,
1212
- botParams: ApproxParamsStruct,
1213
- maxSyIn: BigNumberish,
1179
+ netSyIn: BigNumberish,
1214
1180
  minLpOut: BigNumberish,
1215
1181
  minYtOut: BigNumberish,
1216
1182
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1221,8 +1187,9 @@ export interface LongYieldTradingBot extends BaseContract {
1221
1187
  overrides?: Overrides & { from?: string | Promise<string> }
1222
1188
  ): Promise<BigNumber>;
1223
1189
 
1190
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
1191
+
1224
1192
  claimAndCompound(
1225
- router: string,
1226
1193
  inps: TokenInputStruct[],
1227
1194
  minSyOut: BigNumberish,
1228
1195
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1244,7 +1211,6 @@ export interface LongYieldTradingBot extends BaseContract {
1244
1211
  ): Promise<BigNumber>;
1245
1212
 
1246
1213
  depositToken(
1247
- router: string,
1248
1214
  inp: TokenInputStruct,
1249
1215
  minSyOut: BigNumberish,
1250
1216
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -1266,18 +1232,20 @@ export interface LongYieldTradingBot extends BaseContract {
1266
1232
  readBotState(overrides?: CallOverrides): Promise<BigNumber>;
1267
1233
 
1268
1234
  readMarketExtState(
1269
- router: string,
1235
+ overrides?: Overrides & { from?: string | Promise<string> }
1236
+ ): Promise<BigNumber>;
1237
+
1238
+ readStrategyData(
1270
1239
  overrides?: Overrides & { from?: string | Promise<string> }
1271
1240
  ): Promise<BigNumber>;
1272
1241
 
1273
1242
  removeLiqToYt(
1274
- botParams: ApproxParamsStruct,
1275
- guessTotalPtToSwap: ApproxParamsStruct,
1276
- maxLpRemoved: BigNumberish,
1277
- minYtOut: BigNumberish,
1243
+ inputParams: ILongYieldTradingBot.RemoveLiqToYtInputStruct,
1278
1244
  overrides?: Overrides & { from?: string | Promise<string> }
1279
1245
  ): Promise<BigNumber>;
1280
1246
 
1247
+ router(overrides?: CallOverrides): Promise<BigNumber>;
1248
+
1281
1249
  setSpecs(
1282
1250
  _specs: LongTradingSpecsStruct,
1283
1251
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1292,14 +1260,6 @@ export interface LongYieldTradingBot extends BaseContract {
1292
1260
  overrides?: Overrides & { from?: string | Promise<string> }
1293
1261
  ): Promise<BigNumber>;
1294
1262
 
1295
- swapSyToYt(
1296
- router: string,
1297
- botParams: ApproxParamsStruct,
1298
- minYtOut: BigNumberish,
1299
- maxSyIn: BigNumberish,
1300
- overrides?: Overrides & { from?: string | Promise<string> }
1301
- ): Promise<BigNumber>;
1302
-
1303
1263
  transferOwnership(
1304
1264
  newOwner: string,
1305
1265
  direct: boolean,
@@ -1334,24 +1294,13 @@ export interface LongYieldTradingBot extends BaseContract {
1334
1294
 
1335
1295
  YT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1336
1296
 
1337
- addLiqFromSy(
1338
- botParams: ApproxParamsStruct,
1339
- minLpOut: BigNumberish,
1340
- maxSyIn: BigNumberish,
1341
- overrides?: Overrides & { from?: string | Promise<string> }
1342
- ): Promise<PopulatedTransaction>;
1343
-
1344
1297
  addLiqFromYt(
1345
- botParams: ApproxParamsStruct,
1346
- minLpOut: BigNumberish,
1347
- maxYtIn: BigNumberish,
1298
+ inputParams: ILongYieldTradingBot.AddLiqFromYtInputStruct,
1348
1299
  overrides?: Overrides & { from?: string | Promise<string> }
1349
1300
  ): Promise<PopulatedTransaction>;
1350
1301
 
1351
1302
  addLiqKeepYt(
1352
- router: string,
1353
- botParams: ApproxParamsStruct,
1354
- maxSyIn: BigNumberish,
1303
+ netSyIn: BigNumberish,
1355
1304
  minLpOut: BigNumberish,
1356
1305
  minYtOut: BigNumberish,
1357
1306
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1362,8 +1311,9 @@ export interface LongYieldTradingBot extends BaseContract {
1362
1311
  overrides?: Overrides & { from?: string | Promise<string> }
1363
1312
  ): Promise<PopulatedTransaction>;
1364
1313
 
1314
+ buyBins(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1315
+
1365
1316
  claimAndCompound(
1366
- router: string,
1367
1317
  inps: TokenInputStruct[],
1368
1318
  minSyOut: BigNumberish,
1369
1319
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1385,7 +1335,6 @@ export interface LongYieldTradingBot extends BaseContract {
1385
1335
  ): Promise<PopulatedTransaction>;
1386
1336
 
1387
1337
  depositToken(
1388
- router: string,
1389
1338
  inp: TokenInputStruct,
1390
1339
  minSyOut: BigNumberish,
1391
1340
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -1407,18 +1356,20 @@ export interface LongYieldTradingBot extends BaseContract {
1407
1356
  readBotState(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1408
1357
 
1409
1358
  readMarketExtState(
1410
- router: string,
1359
+ overrides?: Overrides & { from?: string | Promise<string> }
1360
+ ): Promise<PopulatedTransaction>;
1361
+
1362
+ readStrategyData(
1411
1363
  overrides?: Overrides & { from?: string | Promise<string> }
1412
1364
  ): Promise<PopulatedTransaction>;
1413
1365
 
1414
1366
  removeLiqToYt(
1415
- botParams: ApproxParamsStruct,
1416
- guessTotalPtToSwap: ApproxParamsStruct,
1417
- maxLpRemoved: BigNumberish,
1418
- minYtOut: BigNumberish,
1367
+ inputParams: ILongYieldTradingBot.RemoveLiqToYtInputStruct,
1419
1368
  overrides?: Overrides & { from?: string | Promise<string> }
1420
1369
  ): Promise<PopulatedTransaction>;
1421
1370
 
1371
+ router(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1372
+
1422
1373
  setSpecs(
1423
1374
  _specs: LongTradingSpecsStruct,
1424
1375
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1433,14 +1384,6 @@ export interface LongYieldTradingBot extends BaseContract {
1433
1384
  overrides?: Overrides & { from?: string | Promise<string> }
1434
1385
  ): Promise<PopulatedTransaction>;
1435
1386
 
1436
- swapSyToYt(
1437
- router: string,
1438
- botParams: ApproxParamsStruct,
1439
- minYtOut: BigNumberish,
1440
- maxSyIn: BigNumberish,
1441
- overrides?: Overrides & { from?: string | Promise<string> }
1442
- ): Promise<PopulatedTransaction>;
1443
-
1444
1387
  transferOwnership(
1445
1388
  newOwner: string,
1446
1389
  direct: boolean,