report = None
trades = None
balances = None
+ options = None
def __init__(self, ccxt_instance, args, **kwargs):
self.args = args
self.balances = BalanceStore(self)
self.processor = Processor(self)
+ self.options = kwargs.get("options", {})
for key in ["user_id", "market_id"]:
setattr(self, key, kwargs.get(key, None))
message="{} disappeared, recreating it".format(order))
new_order = order.trade.prepare_order(
compute_value=order.trade.tick_actions_recreate(tick))
- new_order.run()
- self.report.log_order(order, tick, new_order=new_order)
+ if new_order is not None:
+ new_order.run()
+ self.report.log_order(order, tick, new_order=new_order)
self.report.log_stage("follow_orders_end")
def parse_args(self, action, default_args, kwargs):
method, allowed_arguments = self.method_arguments(action)
- args = {k: v for k, v in {**default_args, **kwargs}.items() if k in allowed_arguments }
+ args = {k: v for k, v in {**default_args, **kwargs, **self.market.options}.items() if k in allowed_arguments }
if "repartition" in args and "base_currency" in args["repartition"]:
r = args["repartition"]