def run_tick(self, event):#???????
tick = event.dict['data']
if self.live_trading:
now_ticknum = get_tick_num(datetime.datetime.now())
cur_ticknum = get_tick_num(tick.timestamp)
if abs(cur_ticknum - now_ticknum)> self.realtime_tick_diff:
self.logger.warning('the tick timestamp has more than 10sec diff from the system time, inst=%s, ticknum= %s, now_ticknum=%s' % (tick.instID, cur_ticknum, now_ticknum))
if not self.update_instrument(tick):
return
inst = tick.instID
if inst in self.inst2spread:
for key in self.inst2spread[inst]:
self.trade_manager.check_pending_trades(key)
self.trade_manager.check_pending_trades(inst)
self.update_min_bar(tick)
if inst in self.inst2spread:
for key in self.inst2spread[inst]:
self.trade_manager.process_trades(key)
self.trade_manager.process_trades(inst)
gway = self.inst2gateway[inst]
if gway.process_flag:
gway.send_queued_orders()
评论列表
文章目录