UniswapV3LivePricing#
API documentation for tradeexecutor.ethereum.uniswap_v3.uniswap_v3_live_pricing.UniswapV3LivePricing Python class in Trading Strategy framework.
- class UniswapV3LivePricing[source]#
- Bases: - EthereumPricingModel- Always pull the latest dollar price for an asset from Uniswap v3 deployment. - Supports - Two-way BUSD -> Cake 
- Three-way trades BUSD -> BNB -> Cake 
 - … within a single, uniswap v3 like exchange. - Note - If a trade quantity/currency amount is not given uses a “default small value” that is 0.1. Depending on the token, this value might be too much/too little, as Uniswap fixed point math starts to break for very small amounts. For example, for USDC trade 10 cents is already quite low. - More information - __init__(web3, pair_universe, routing_model, very_small_amount=Decimal('0.10'), epsilon=0.001)[source]#
- Parameters:
- web3 (Web3) – 
- pair_universe (PandasPairUniverse) – 
- routing_model (UniswapV3Routing) – 
 
 
 - Methods - __init__(web3, pair_universe, routing_model)- calculate_trade_adjusted_slippage_tolerance(...)- Get slippage for a given trading pair, for a given trade. - check_supported_quote_token(pair)- get_buy_price(ts, pair, reserve)- Get live price on Uniswap. - get_mid_price(ts, pair)- Get the mid price from Uniswap pool. - get_pair_fee(ts, pair)- Estimate the trading/LP fees for a trading pair. - get_pair_fee_multiplier(ts, pair)- Outdated: Uniswap V3 pairs get fees in raw format e.g. - get_pair_for_id(internal_id)- Look up a trading pair. - get_price_helper(target_pair)- get_quote_token_tvl(timestamp, pair)- Get TVL in a pool. - get_sell_price(ts, pair, quantity)- Get live price on Uniswap. - get_uniswap(target_pair)- Helper function to speed up Uniswap v3 deployment resolution. - get_usd_tvl(timestamp, pair)- Get TVL in a pool. - quantize_base_quantity(pair, quantity[, ...])- Convert any base token quantity to the native token units by its ERC-20 decimals. - set_trading_fee_override(trading_fee_override)- Set the trading fee override. - validate_mid_price_for_buy(lp_fee, price, ...)- Validate the mid price calculation for a buy trade. - validate_mid_price_for_sell(lp_fee, ...)- Validate the mid price calculation for a sell trade. - __init__(web3, pair_universe, routing_model, very_small_amount=Decimal('0.10'), epsilon=0.001)[source]#
- Parameters:
- web3 (Web3) – 
- pair_universe (PandasPairUniverse) – 
- routing_model (UniswapV3Routing) – 
 
 
 - get_pair_fee_multiplier(ts, pair)[source]#
- Outdated: Uniswap V3 pairs get fees in raw format e.g. 3000 instead of 0.3% - Now, all pairs are already in multiplier format, so no changes necessary. 
 - get_uniswap(target_pair)[source]#
- Helper function to speed up Uniswap v3 deployment resolution. - Parameters:
- target_pair (TradingPairIdentifier) – 
- Return type:
 
 - get_sell_price(ts, pair, quantity)[source]#
- Get live price on Uniswap. - Parameters:
- ts (datetime) – 
- pair (TradingPairIdentifier) – 
 
- Return type: