simulate_ostium_v15_cycle

Documentation for eth_defi.erc_4626.vault_protocol.gains.testing.simulate_ostium_v15_cycle function.

simulate_ostium_v15_cycle(web3, hot_wallet, vault, deposit_amount=Decimal('50'))

Simulate a full Ostium V1.5 deposit/settlement/claim/withdraw cycle on Anvil.

Runs the complete async lifecycle:

  1. Approve USDC to vault

  2. Call requestDeposit(amount)

  3. Force settlement via tryNewSettlement()

  4. Claim deposit via claimDeposit(settlementId)

  5. Verify OLP shares received

  6. Call requestWithdraw(shares)

  7. Force settlement(s) for withdrawal

  8. Claim withdrawal via claimWithdraw(settlementId)

  9. Verify USDC returned

Parameters
  • web3 (web3.main.Web3) – Web3 connected to an Anvil fork.

  • hot_wallet (HotWallet) – Funded test wallet.

  • vault (OstiumVault) – Ostium V1.5 vault instance.

  • deposit_amount (decimal.Decimal) – USDC amount to deposit.

Returns

Simulation result with amounts and prices.

Return type

eth_defi.erc_4626.vault_protocol.gains.testing.OstiumSimulationResult