2.4 KiB
Bot Builder
class Bot()
The bot class. Create a bot instance to run your strategies.
Attributes
| Name | Type | Description | Default |
|---|---|---|---|
| account | Account | Account Object. | None |
| executor | ThreadPoolExecutor | The default thread executor. | None |
| symbols | set[Symbols] | A set of symbols for the trading session | set() |
initialize
async def initialize()
Prepares the bot by signing in to the trading account and initializing the symbols for the trading session.
Raises
| Exception | Description |
|---|---|
| SystemExit | If sign in was not successful |
SystemExit if sign in was not successful
execute
def execute()
Execute the bot.
start
async def start()
Starts the bot by calling the initialize method and running the strategies in the executor.
add_strategy
def add_strategy(strategy: Strategy)
Add a strategy to the executor. An added strategy will only run if it's symbol was successfully initialized.
Parameters
| Name | Type | Description |
|---|---|---|
| strategy | Strategy | A Strategy instance to run on bot |
add_strategies
def add_strategies(strategies: Iterable[Strategy])
Add multiple strategies at the same time
Parameters
| Name | Type | Description |
|---|---|---|
| strategies | Iterable[Strategy] | An iterable of Strategy instances |
add_strategy_all
def add_strategy_all(*, strategy: Type[Strategy], params: dict | None = None)
Use this to run a single strategy on all available instruments in the market using the default parameters i.e one set of parameters for all trading symbols
Parameters
| Name | Type | Description |
|---|---|---|
| strategy | Type[Strategy] | A Strategy class |
| params | dict or None | A dictionary of parameters for the strategy |
init_symbols
async def init_symbols()
Initialize the symbols for the current trading session. This method is called internally by the bot.
init_symbol
async def init_symbol(symbol: Symbol) -> Symbol
Initialize a symbol before the beginning of a trading session. Removes it from the list of symbols if it was not successfully initialized or not available for the account.
Parameters
| Name | Type | Description |
|---|---|---|
| symbol | Symbol | A Symbol instance |
returns
| Type | Description |
|---|---|
| Symbol | A Symbol instance |