def update_order(self, order: Order): for existing_order in self.account.open_orders: if existing_order.id == order.id: self.account.open_orders.remove(existing_order) self.account.open_orders.append(order) self.logger.debug("updated order %s" % (order.print_info())) break
def update_order(self, order: Order): if self.telegram_bot is not None: self.telegram_bot.send_log( "updating (" + self.id + "): " + order.print_info(), order.id) self.exchange.update_order(order) self.exchange.on_tick_callback( True ) ##simulate tick to prevent early updates (need to wait for exchange to update order
def update_order(self, order: Order): for existing_order in self.account.open_orders: if existing_order.id == order.id: self.account.open_orders.remove(existing_order) self.account.open_orders.append(order) order.tstamp = self.current_bars[0].last_tick_tstamp self.logger.debug("updated order %s" % (order.print_info())) break
def send_order(self, order: Order): # check if order is val if order.amount == 0: self.logger.error("trying to send order without amount") return self.logger.debug("added order %s" % (order.print_info())) order.tstamp = self.current_bars[0].tstamp if order not in self.account.open_orders: # bot might add it himself temporarily. self.account.open_orders.append(order)
def send_order(self, order: Order): if order.amount == 0: self.logger.error("trying to send order without amount") return if self.telegram_bot is not None: self.telegram_bot.send_log( "Sending (" + self.id + "): " + order.print_info(), order.id) order.tstamp = self.bars[0].tstamp if order not in self.account.open_orders: # bot might add it himself temporarily. self.account.open_orders.append(order) self.exchange.send_order(order)
def send_order(self, order: Order): # check if order is val if order.amount == 0: self.logger.error("trying to send order without amount") return [posId, order_type] = TradingBot.position_id_and_type_from_order_id(order.id) if order_type == OrderType.ENTRY: [unused, direction] = TradingBot.split_pos_Id(posId) if direction == PositionDirection.LONG and order.amount < 0: self.logger.error("sending long entry with negative amount") if direction == PositionDirection.SHORT and order.amount > 0: self.logger.error("sending short entry with positive amount") self.logger.debug("added order %s" % (order.print_info())) order.tstamp = self.current_bars[0].tstamp if order not in self.account.open_orders: # bot might add it himself temporarily. self.account.open_orders.append(order)
def cancel_order(self, order: Order): if self.telegram_bot is not None: self.telegram_bot.send_log( "canceling (" + self.id + "): " + order.print_info(), order.id) order.active = False # already mark it as cancelled, so not to mess up next loop self.exchange.cancel_order(order)
def update_order(self, order: Order): if self.telegram_bot is not None and TradingBot.order_type_from_order_id( order.id) == OrderType.SL: self.telegram_bot.send_log( "updating (" + self.id + "): " + order.print_info(), order.id) self.exchange.update_order(order)