:param event_engine: :param event_engine: tzinfo :return:
(self, event_engine, tzinfo=None)
| 110 | EventType = 'clock_tick' |
| 111 | |
| 112 | def __init__(self, event_engine, tzinfo=None): |
| 113 | """ |
| 114 | :param event_engine: |
| 115 | :param event_engine: tzinfo |
| 116 | :return: |
| 117 | """ |
| 118 | # 默认使用当地时间的时区 |
| 119 | self.tzinfo = tzinfo or tz.tzlocal() |
| 120 | |
| 121 | self.event_engine = event_engine |
| 122 | self.is_active = True |
| 123 | self.clock_engine_thread = Thread(target=self.clocktick, name="ClockEngine.clocktick") |
| 124 | self.sleep_time = 1 |
| 125 | self.trading_state = True if (etime.is_tradetime(datetime.datetime.now()) and etime.is_trade_date(datetime.datetime.now())) else False |
| 126 | self.clock_moment_handlers = deque() |
| 127 | self.clock_interval_handlers = set() |
| 128 | |
| 129 | self._init_clock_handler() |
| 130 | |
| 131 | def _init_clock_handler(self): |
| 132 | """ |
nothing calls this directly
no test coverage detected