Skip to content

trading_agent.tools.place_order_tool

The place_order tool: one order in one instrument, checked by the risk engine first.

Typical usage example:

tool = PlaceOrderTool(services, 'main', 'dry_run')

PlaceOrderTool

PlaceOrderTool(services, desk, mode)

Bases: OrderTool

Places one plain order.

Source code in src/trading_agent/tools/order_tool.py
def __init__(self, services: OrderServices, desk: str, mode: str):
    """Creates the tool.

    Args:
        services (OrderServices): What the tool uses.
        desk (str): The desk the tool works for.
        mode (str): "dry_run" to send everything to UBI as a dry run, "live" to trade.
    """
    self._services = services
    self._desk = desk
    self._dry_run = mode != 'live'
    tag_characters = []
    for character in desk:
        if character.isalnum():
            tag_characters.append(character)
    self._tag = ''.join(tag_characters)[:_TAG_LENGTH]