CreateTradingUniverseInput#

API documentation for tradeexecutor.strategy.pandas_trader.trading_universe_input.CreateTradingUniverseInput Python class in Trading Strategy framework.

class CreateTradingUniverseInput[source]#

Bases: object

Input for creating a trading universe using create_trading_universe() callback.

Example:

def create_trading_universe(
    input: CreateTradingUniverseInput,
) -> TradingStrategyUniverse:

    execution_context = input.execution_context
    client = input.client
    timestamp = input.timestamp
    parameters = input.parameters
    universe_options = input.universe_options

    if execution_context.live_trading:
        # Live trading, send strategy universe formation details
        # to logs
        debug_printer = logger.info
    else:
        # Notebook node
        debug_printer = print

    chain_id = parameters.chain_id

    debug_printer(f"Preparing trading universe on chain {chain_id.get_name()}")

    exchange_universe = client.fetch_exchange_universe()
    targeted_exchanges = [exchange_universe.get_by_chain_and_slug(chain_id, slug) for slug in parameters.exchanges]

    ...
__init__(client, timestamp, parameters, execution_context, execution_model, universe_options)#
Parameters:
Return type:

None

Methods

__init__(client, timestamp, parameters, ...)

Attributes

client

Our main download client

timestamp

When this universe is being created.

parameters

Strategy parameters

execution_context

Current execution context

execution_model

Execution model with web3 connection.

universe_options

Universe options

client: Client#

Our main download client

timestamp: datetime.datetime | None#

When this universe is being created.

  • Wall clock time (live execution)

  • Backtest start time (backtesting)

parameters: tradeexecutor.strategy.parameters.StrategyParameters | None#

Strategy parameters

Maybe None if strategy parameters are not used or passed.

execution_context: tradeexecutor.strategy.execution_context.ExecutionContext#

Current execution context

execution_model: tradeexecutor.strategy.execution_model.ExecutionModel | None#

Execution model with web3 connection.

Maybe None if called directly or not passed.

universe_options: tradeexecutor.strategy.universe_model.UniverseOptions#

Universe options

__init__(client, timestamp, parameters, execution_context, execution_model, universe_options)#
Parameters:
Return type:

None