Contents Menu Expand Light mode Dark mode Auto light/dark mode
Web3 Ethereum Defi documentation
Web3 Ethereum Defi documentation
  • API documentation
    • Core API
      • chain
        • POA_MIDDLEWARE_NEEDED_CHAIN_IDS
        • CHAIN_NAMES
        • EVM_BLOCK_TIMES
        • fetch_block_timestamp
        • get_chain_name
        • get_graphql_url
        • has_graphql_support
        • install_api_call_counter_middleware
        • install_api_call_counter_middleware_on_provider
        • install_chain_middleware
        • install_retry_middleware
      • token
        • WRAPPED_NATIVE_TOKEN
        • USDC_NATIVE_TOKEN
        • USDT_NATIVE_TOKEN
        • SUSDS_NATIVE_TOKEN
        • HONEY_NATIVE_TOKEN
        • STABLECOIN_LIKE
        • WRAPPED_STABLECOIN_LIKE
        • ALL_STABLECOIN_LIKE
        • create_token
        • fetch_erc20_details
        • get_chain_known_quote_tokens
        • get_chain_stablecoins
        • get_erc20_contract
        • get_wrapped_native_token_address
        • is_stablecoin_like
        • reset_default_token_cache
        • TokenCacheWarmupResult
        • TokenDetails
        • TokenDiskCache
        • TokenDetailError
      • balances
        • convert_balances_to_decimal
        • fetch_erc20_balances_by_token_list
        • fetch_erc20_balances_by_transfer_event
        • fetch_erc20_balances_fallback
        • fetch_erc20_balances_multicall
        • DecimalisedHolding
        • BalanceFetchFailed
      • abi
        • ZERO_ADDRESS_STR
        • ZERO_ADDRESS
        • decode_function_args
        • decode_function_output
        • encode_function_args
        • encode_function_call
        • encode_with_signature
        • format_debug_instructions
        • get_abi_by_filename
        • get_contract
        • get_deployed_contract
        • get_function_selector
        • get_linked_contract
        • get_topic_signature_from_event
        • get_transaction_data_field
        • humanise_decoded_arg_data
        • link_libraries_hardhat
        • present_solidity_args
      • deploy
        • deploy_contract
        • get_or_create_contract_registry
        • get_registered_contract
        • register_contract
        • ContractDeploymentFailed
      • event
        • fetch_all_events
      • gas
        • apply_gas
        • estimate_gas_fees
        • estimate_gas_price
        • node_default_gas_price_strategy
        • GasPriceMethod
        • GasPriceSuggestion
      • confirmation
        • broadcast_and_wait_transactions_to_complete
        • broadcast_transactions
        • check_nonce_mismatch
        • is_invalid_sender
        • is_out_of_gas
        • wait_and_broadcast_multiple_nodes
        • wait_and_broadcast_multiple_nodes_mev_blocker
        • wait_transactions_to_complete
        • BadChainId
        • BroadcastFailure
        • ConfirmationTimedOut
        • NonRetryableBroadcastException
        • NonceMismatch
        • NonceTooLow
        • OutOfGasFunds
      • revert_reason
        • fetch_transaction_revert_reason
        • TransactionReverted
      • hotwallet
        • HotWallet
        • SignedTransactionWithNonce
      • gcloud_hsm_wallet
        • GCloudHSMWallet
      • middleware
        • DEFAULT_RETRYABLE_EXCEPTIONS
        • DEFAULT_RETRYABLE_HTTP_STATUS_CODES
        • DEFAULT_RETRYABLE_RPC_ERROR_CODES
        • DEFAULT_RETRYABLE_RPC_ERROR_MESSAGES
        • STATIC_CALL_LIST
        • construct_sign_and_send_raw_middleware_anvil
        • exception_retry_middleware
        • http_retry_request_with_sleep_middleware
        • is_retryable_http_exception
        • raise_on_revert_middleware
        • static_call_cache_middleware
        • ProbablyNodeHasNoBlock
      • tx
        • decode_signed_transaction
        • AssetDelta
        • DecodeFailure
      • trace
        • assert_call_success_with_explanation
        • assert_transaction_success_with_explanation
        • print_symbolic_trace
        • trace_evm_call
        • trace_evm_transaction
        • SymbolicTreeRepresentation
        • TraceMethod
        • TraceNotEnabled
        • TransactionAssertionError
      • eip_712
        • eip712_encode
        • eip712_encode_hash
        • eip712_signature
        • encode_data
        • encode_type
        • fast_keccak
        • find_type_dependencies
        • hash_struct
        • hash_type
      • timestamp
        • get_block_timestamp
        • get_latest_block_timestamp
      • trade
        • TradeFail
        • TradeResult
        • TradeSuccess
      • utils
        • chunked
        • find_free_port
        • get_url_domain
        • is_localhost_port_listening
        • sanitise_string
        • setup_console_logging
        • shutdown_hard
        • to_unix_timestamp
    • JSON-RPC provider API
      • provider.multi_provider
        • create_multi_provider_web3
        • MultiProviderWeb3
        • MultiProviderWeb3Factory
        • MultiProviderConfigurationError
      • provider.mev_blocker
        • TRANSACT_METHODS
        • get_mev_blocker_provider
        • MEVBlockerProvider
      • provider.fallback
        • get_fallback_provider
        • FallbackProvider
        • FallbackStrategy
      • provider.broken_provider
        • get_almost_latest_block_number
        • get_block_tip_latency
        • get_default_block_tip_latency
        • set_block_tip_latency
      • provider.ankr
        • is_ankr
      • provider.llamanodes
        • is_llama_bad_grapql_reply
      • provider.anvil
        • CLI_FLAGS
        • dump_state
        • fork_network_anvil
        • is_anvil
        • is_mainnet_fork
        • launch_anvil
        • load_state
        • make_anvil_custom_rpc_request
        • mine
        • revert
        • sleep
        • snapshot
        • unlock_account
        • AnvilLaunch
        • InvalidArgumentWarning
        • RPCRequestError
      • provider.ganache
        • EVM_DEFAULT
        • fork_network
        • GanacheLaunch
        • InvalidArgumentWarning
        • NoGanacheInstalled
      • provider.named
        • get_provider_name
        • BaseNamedProvider
    • USDC API
      • usdc.deployment
        • deploy_fiat_token
      • usdc.eip_3009
        • construct_eip_3009_authorization_message
        • make_eip_3009_transfer
        • EIP3009AuthorizationType
    • Uniswap v2 DEX API
      • uniswap_v2.deployment
        • INIT_CODE_HASH_MISSING
        • deploy_factory_sushi
        • deploy_trading_pair
        • deploy_uniswap_v2_like
        • fetch_deployment
        • mock_partial_deployment_for_analysis
        • UniswapV2Deployment
      • uniswap_v2.pair
        • fetch_pair_details
        • PairDetails
      • uniswap_v2.fees
        • estimate_buy_price
        • estimate_buy_price_decimals
        • estimate_buy_quantity
        • estimate_buy_received_amount_raw
        • estimate_sell_price
        • estimate_sell_price_decimals
        • estimate_sell_received_amount_raw
        • UniswapV2FeeCalculator
        • BadReserves
      • uniswap_v2.analysis
        • analyse_trade_by_hash
        • analyse_trade_by_receipt
      • uniswap_v2.utils
        • pair_for
        • sort_tokens
      • uniswap_v2.swap
        • swap_with_slippage_protection
      • uniswap_v2.liquidity
        • get_liquidity
        • LiquidityResult
        • UnmatchedToken
      • uniswap_v2.oracle
        • convert_sync_log_result_to_price_entry
        • update_live_price_feed
        • update_price_oracle_with_sync_events_single_thread
        • UniswapV2PriceOracleContext
      • uniswap_v2.token_tax
        • estimate_token_taxes
        • TokenTaxInfo
        • ApprovalFailure
        • OutOfGasDuringSell
        • OutOfGasDuringTransfer
        • SellFailed
        • SwapError
        • TransferFailure
        • TransferFromError
    • Uniswap v3 DEX API
      • uniswap_v3.deployment
        • add_liquidity
        • decrease_liquidity
        • deploy_pool
        • deploy_uniswap_v3
        • deploy_uniswap_v3_factory
        • fetch_deployment
        • increase_liquidity
        • mock_partial_deployment_for_analysis
        • UniswapV3Deployment
      • uniswap_v3.constants
      • uniswap_v3.utils
        • decode_path
        • encode_path
        • encode_sqrt_ratio_x96
        • get_default_tick_range
        • get_max_tick
        • get_min_tick
        • get_nearest_usable_tick
        • get_token0_amount_in_range
        • get_token1_amount_in_range
        • run_graphql_query
        • tick_to_price
        • tick_to_sqrt_price
      • uniswap_v3.liquidity
        • create_tick_csv
        • create_tick_delta_csv
        • estimate_liquidity_depth_at_block
        • get_pool_state_at_block
        • handle_burn_event
        • handle_mint_event
        • TickDelta
      • uniswap_v3.analysis
        • analyse_trade_by_receipt
        • get_input_args
      • uniswap_v3.events
        • decode_burn
        • decode_mint
        • decode_pool_created
        • decode_swap
        • fetch_events_to_csv
        • get_event_mapping
        • TokenCache
      • uniswap_v3.price
        • estimate_buy_received_amount
        • estimate_sell_received_amount
        • get_onchain_price
        • UniswapV3PriceHelper
        • QuotingFailed
      • uniswap_v3.pool
        • fetch_pool_details
        • get_raw_fee_from_pool_address
        • PoolDetails
      • uniswap_v3.swap
        • swap_with_slippage_protection
      • uniswap_v2.oracle
        • convert_sync_log_result_to_price_entry
        • update_live_price_feed
        • update_price_oracle_with_sync_events_single_thread
        • UniswapV2PriceOracleContext
    • Aave v2 API
      • aave_v2.constants
        • get_aave_v2_network_by_chain_id
        • AaveV2Network
      • aave_v2.events
        • aave_v2_fetch_events_to_csv
    • Aave v3 API
      • aave_v3.balances
        • aave_v3_get_deposit_balance
        • aave_v3_get_stable_borrow_balance
        • aave_v3_get_variable_borrow_balance
      • aave_v3.constants
        • aave_v3_get_account_address
        • aave_v3_get_json_rpc_url
        • aave_v3_get_network_by_chain_id
        • aave_v3_get_token_name_by_deposit_address
        • AaveNetwork
        • AaveToken
        • AaveV3InterestRateMode
        • AaveVersion
      • aave_v3.deployer
        • AAVE_DEPLOYER_REPO
        • HARDHAT_CONTRACTS
        • get_aave_hardhard_export
        • install_aave_for_testing
        • AaveDeployer
      • aave_v3.deployment
        • fetch_deployment
        • AaveV3Deployment
        • AaveV3ReserveConfiguration
        • AaveV3UserData
      • aave_v3.events
        • aave_v3_fetch_events_to_csv
        • decode_reserve_data_updated
        • get_event_mapping
        • TokenCache
      • aave_v3.loan
        • borrow
        • repay
        • supply
        • withdraw
      • aave_v3.rates
        • aave_v3_calculate_accrued_deposit_interest
        • aave_v3_calculate_accrued_interests
        • aave_v3_calculate_accrued_stable_borrow_interest
        • aave_v3_calculate_accrued_variable_borrow_interest
        • aave_v3_calculate_apr_apy_rates
        • aave_v3_calculate_mean
        • aave_v3_calculate_ohlc
        • aave_v3_filter_by_date_range
        • aave_v3_filter_by_token
        • AaveAccruedInterest
        • AaveAccruedInterests
      • aave_v3.reserve
        • fetch_aave_reserves_snapshot
        • fetch_reserve_data
        • fetch_reserves
        • get_helper_contracts
        • AggregatedReserveData
        • BaseCurrencyInfo
        • HelperContracts
        • JSONSerialisableReserveData
        • AaveContractsNotConfigured
    • 1delta API
      • one_delta.constants
        • Exchange
        • TradeOperation
        • TradeType
      • one_delta.deployment
        • fetch_deployment
        • OneDeltaDeployment
      • one_delta.position
        • approve
        • close_short_position
        • open_short_position
        • reduce_short_position
      • one_delta.price
        • estimate_buy_received_amount
        • estimate_sell_received_amount
        • OneDeltaPriceHelper
      • one_delta.lending
        • supply
        • withdraw
      • one_delta.utils
        • encode_path
        • encode_quoter_path
    • Gnosis Safe API
      • safe.deployment
        • add_new_safe_owners
        • deploy_safe
      • safe.trace
        • assert_execute_module_success
      • safe.safe_compat
        • create_safe_ethereum_client
    • Vault framework
      • vault.base
        • TradingUniverse
        • VaultBase
        • VaultFlowManager
        • VaultHistoricalRead
        • VaultHistoricalReader
        • VaultInfo
        • VaultPortfolio
        • VaultReadCondition
        • VaultSpec
      • vault.valuation
        • NetAssetValueCalculator
        • PortfolioValuation
        • Route
        • SwapMatrix
        • UniswapV2Router02Quoter
        • UniswapV3Quoter
        • ValuationMulticallWrapper
        • ValuationQuoter
        • NoRouteFound
      • vault.historical
        • DEFAULT_BLACK_LIST
        • scan_historical_prices_to_parquet
        • ParquetScanResult
        • VaultHistoricalReadMulticaller
        • VaultReadNotSupported
      • vault.lower_case_dict
        • LowercaseDict
      • vault.mass_buyer
        • buy_tokens
        • create_buy_portfolio
        • BuyResult
    • ERC-4626 API
      • erc_4626.vault
        • ERC4626HistoricalReader
        • ERC4626Vault
        • ERC4626VaultInfo
      • erc_4626.hypersync_discovery
        • HypersyncVaultDiscover
        • PotentialVaultMatch
      • erc_4626.core
        • get_deployed_erc_4626_contract
        • get_erc_4626_contract
        • get_vault_protocol_name
        • ERC4262VaultDetection
        • ERC4626Feature
      • erc_4626.classification
        • create_probe_calls
        • create_vault_instance
        • identify_vault_features
        • probe_vaults
        • VaultFeatureProbe
      • erc_4626.scan
        • create_vault_scan_record
        • create_vault_scan_record_subprocess
    • Enzyme protocol API
      • enzyme.deployment
        • POLYGON_DEPLOYMENT
        • ARBITRUM_DEPLOYMENT
        • ETHEREUM_DEPLOYMENT
        • EnzymeContracts
        • EnzymeDeployment
        • RateAsset
        • VaultPolicyConfiguration
        • EnzymeDeploymentError
      • enzyme.vault
        • Vault
      • enzyme.integration_manager
        • IntegrationManagerActionId
      • enzyme.events
        • fetch_vault_balance_events
        • fetch_vault_balances
        • Deposit
        • EnzymeBalanceEvent
        • LiveBalance
        • Redemption
      • enzyme.price_feed
        • fetch_price_feeds
        • fetch_updated_price_feed
        • EnzymePriceFeed
        • UnsupportedBaseAsset
      • enzyme.generic_adapter
        • encode_call_on_integration_args
        • encode_generic_adapter_execute_calls_args
        • execute_calls_for_generic_adapter
      • enzyme.generic_adapter_vault
        • bind_vault
        • deploy_generic_adapter_with_guard
        • deploy_guard
        • deploy_vault_with_generic_adapter
        • whitelist_sender_receiver
      • enzyme.utils
        • convert_rate_to_scaled_per_second_rate
      • enzyme.erc20
        • prepare_approve
        • prepare_transfer
        • prepare_transfer_sneaky
      • enzyme.uniswap_v2
        • prepare_swap
      • enzyme.policy
        • create_safe_default_policy_configuration_for_generic_adapter
        • encode_single_address_list_policy_args
        • get_vault_policies
        • update_adapter_policy
        • AddressListUpdateType
      • enzyme.vault_controlled_wallet
        • EnzymeVaultTransaction
        • VaultControlledWallet
    • Lagoon Finance API
      • lagoon.vault
        • DEFAULT_LAGOON_POST_VALUATION_GAS
        • DEFAULT_LAGOON_SETTLE_GAS
        • LagoonFlowManager
        • LagoonVault
        • LagoonVaultInfo
      • lagoon.deployment
        • deploy_automated_lagoon_vault
        • deploy_lagoon
        • deploy_safe_trading_strategy_module
        • setup_guard
        • LagoonAutomatedDeployment
        • LagoonDeploymentParameters
      • lagoon.analysis
        • analyse_vault_flow_in_settlement
        • LagoonSettlementEvent
      • lagoon.beacon_proxy
        • deploy_beacon_proxy
    • Velvet Capital API
      • velvet.vault
        • VelvetVault
        • VelvetVaultInfo
        • VelvetBadConfig
      • velvet.config
        • VELVET_GAS_EXTRA_SAFETY_MARGIN
      • velvet.deposit
        • deposit_to_velvet
        • VelvetDepositError
      • velvet.redeem
        • redeem_from_velvet_velvet
        • VelvetRedemptionError
      • velvet.enso
        • swap_with_velvet_and_enso
        • swap_with_velvet_intent
        • VelvetSwapError
      • velvet.analysis
        • analyse_trade_by_receipt_generic
      • velvet.logging_retry
        • LoggingRetry
    • IPOR protocol API
      • ipor.vault
        • IPORVault
        • IPORVaultHistoricalReader
    • Morpho API
      • morpho.vault
        • MorphoVault
        • MorphoVaultHistoricalReader
    • Chainlink API
      • chainlink.round_data
        • fetch_chainlink_round_data
        • ChainLinkLatestRoundData
      • chainlink.token_price
        • get_native_token_price_with_chainlink
        • get_token_price_with_chainlink
    • Foundry API
      • foundry.forge
        • DEFAULT_TIMEOUT
        • deploy_contract_with_forge
        • ForgeFailed
    • Etherscan API
      • etherscan.verify
    • HyperSync protocol API
      • hypersync.server
        • HYPERSYNC_SERVES
        • get_hypersync_server
    • Token analysis API
      • token_analysis.tokensniffer
        • KNOWN_GOOD_TOKENS
        • is_tradeable_token
        • CachedTokenSniffer
        • TokenSniffer
        • TokenSnifferReply
        • TokenSnifferError
    • Solidity event reader
      • event_reader.multithread
        • MultithreadEventReader
      • event_reader.multicall_batcher
        • MULTICALL_DEPLOY_ADDRESS
        • MULTICALL_CHAIN_ADDRESSES
        • call_multicall
        • call_multicall_batched_single_thread
        • call_multicall_debug_single_thread
        • call_multicall_encoded
        • get_multicall_block_number
        • get_multicall_contract
        • read_multicall_chunked
        • read_multicall_historical
        • CombinedEncodedCallResult
        • EncodedCall
        • EncodedCallResult
        • MulticallHistoricalTask
        • MulticallWrapper
        • MultiprocessMulticallReader
        • MulticallNonRetryable
        • MulticallRetryable
        • MulticallStateProblem
      • event_reader.reader
        • extract_events
        • extract_events_concurrent
        • extract_timestamps_json_rpc
        • prepare_filter
        • read_events
        • read_events_concurrent
        • ProgressUpdate
        • Web3EventReader
        • BadTimestampValueReturned
        • ReadingLogsFailed
        • TimestampNotFound
      • event_reader.logresult
        • decode_log
        • LogContext
        • LogResult
      • event_reader.filter
        • Filter
      • event_reader.progress_update
        • PrintProgressUpdate
        • TQDMProgressUpdate
      • event_reader.conversion
        • convert_int256_bytes_to_int
        • convert_jsonrpc_value_to_int
        • convert_solidity_bytes_to_string
        • convert_uint256_bytes_to_address
        • convert_uint256_hex_string_to_address
        • convert_uint256_string_to_address
        • convert_uint256_string_to_int
        • decode_data
      • event_reader.fast_json_rpc
        • get_last_headers
        • patch_provider
        • patch_web3
        • PartialHttpResponseException
      • event_reader.block_header
        • BlockHeader
      • event_reader.block_time
        • measure_block_time
      • event_reader.block_data_store
        • BlockDataStore
      • event_reader.reorganisation_monitor
        • create_reorganisation_monitor
        • ChainReorganisationResolution
        • GraphQLReorganisationMonitor
        • JSONRPCReorganisationMonitor
        • MockChainAndReorganisationMonitor
        • ReorganisationMonitor
        • BlockNotAvailable
        • ChainReorganisationDetected
        • ReorganisationResolutionFailure
        • TooLongRange
      • event_reader.parquet_block_data_store
        • ParquetDatasetBlockDataStore
        • NoGapsWritten
      • event_reader.csv_block_data_store
        • CSVDatasetBlockDataStore
        • NoGapsWritten
      • event_reader.web3factory
        • SimpleWeb3Factory
        • TunedWeb3Factory
        • Web3Factory
      • event_reader.web3worker
        • create_thread_pool_executor
        • get_worker_web3
      • event_reader.state
        • ScanState
      • event_reader.json_state
        • JSONFileScanState
    • Price oracle
      • price_oracle.oracle
        • time_weighted_average_price
        • BasePriceOracle
        • FixedPriceOracle
        • PriceEntry
        • PriceFunction
        • PriceOracle
        • PriceSource
        • TrustedStablecoinOracle
        • DataPeriodTooShort
        • DataTooOld
        • NotEnoughData
        • PriceCalculationError
    • Data research
      • research.candle
        • convert_to_ohlcv_candles
  • Tutorials
    • ERC-20 token transfer with web3.py
    • Swap tokens on Uniswap v3
    • Swap tokens on Uniswap v2 compatible DEXes
    • Chainlink price feed reading
    • Chainlink reading blockchain native token price
    • Uniswap v3 price (minimal)
    • Uniswap v3 price impact estimation
    • Uniswap v2 live price with web3.py
    • Uniswap v3 liquidity analysis
    • Uniswap v3 OHCLV candle price analysis
    • Uniswap v3 historical price estimation
    • Uniswap v2 historical swaps and pairs event reading
    • Uniswap v2 reading swaps real-time (minimal)
    • Uniswap v2 reading real-time swaps and new pairs
    • PancakeSwap follow live trades programmatically
    • Aave V3 Interest Analysis
    • ERC-4626: scanning all vaults onchain
    • ERC-4626: scanning historical price and performance of vaults
    • ERC-4626: list all vaults
    • ERC-4626: examine vault historical performance
    • ERC-4626: best performing stablecoin vaults
    • ERC-4626: analyse single vault
    • Enzyme reading all vaults on a blockchain
    • Enzyme vault deployment
    • JSON-RPC node integrity verifier for EVM blockchains
    • Multicall3: Doing fast chain data reading with Web3.py
    • Solidity event high-speed multithread reading
    • MEV protection and multiple JSON-RPCs configuration
  • Developer guide
  • Troubleshooting
  • Related projects
Back to top

create_buy_portfolio

Documentation for eth_defi.vault.mass_buyer.create_buy_portfolio function.

create_buy_portfolio(tokens, amount_denomination_token)[source]

Create a portfolio of tokens to buy based on given Python.

Parameters
  • tokens (list[tuple[str, str, str]]) –

  • amount_denomination_token (decimal.Decimal) –

Return type

eth_defi.vault.base.VaultPortfolio

Next
BuyResult
Previous
buy_tokens

Created and maintained by Trading Strategy