最近在看vnpy的源码,自己在pycharm上也调试了一段时间,不得不说多线程程序调试好难。。
有几个问题:
1,ctp推送的行情是带有时间戳的,但是这个时间戳究竟是电脑上的实际时间,还是交易所推送过来的时间,因为通达信看盘软件里夜盘的时间其实是第二个交易日的日期
2,写了一段代码从通达信的lday文件中读取一分钟数据到csv文件,里面夜盘的时间也是第二个交易日的日期,文件截图如下。我在VNstation--数据管理--导入数据是可以正常导入的,但是我看了下策略初始化的时候load(10)里面的逻辑是获取当下时间减去10天作为起始日期导入10天的交易数据,以日期为索引顺序排序的,这样的话时间序列就会混乱,有没有办法能解决这个问题
3,TickData类是怎么样初始化的?我在ctp_gateway.py文件里找到一个函数(def onRtnDepthMarketData(self, data: dict):)是用于初始化TickData类的,但是没找到他是在什么时候被调用的
4,每一秒钟实例化的计时器对象Event(EVENT_TIMER),put到事件引擎的queue队列里的目的是干嘛用的,因为这个事件没有注册相关的方法,按照交易逻辑它只是不断的put到队列里面,好像并不会对交易产生什么影响