MarketData_ReportNotify事件只负责提供最新的价格数据,而价格对应的时间如果使用本机时间的话,就会导致自编代码维护的K线收盘价不准确。那么如何得到交易所时间呢?
还是只能用一个变通的办法:每天开盘前用代码调校本机时间,与网络授时同步?
这个之前记得我们讨论过的吧,交易所时间是获取不到的,并且每个交易所的时间也都不是标准的北京时间,都会有些误差的。
我们金字塔使用的是行情报价时间来生成K线,也不会使用本地计算机时间来生成的
谢谢回复,是的讨论过,但没有具体说清啊。
您说的“金字塔使用行情报价时间来生成K线”,那么我们的VBA如何获得这个“行情报价时间”?这正是我想知道的。
这个要看你用什么方式来做收盘作业了,你只要仔细注意下,我们的有关行情的所有数据结构上都有时间日期这个字段的,这个都是交易所时间
对的
这个没有稳定的东西,金字塔在生成K线时也不能解决你所说的问题,也只能是在下一个5秒后出现新的数据后再来判断是否K线已经走完。
另外你的交易思路逻辑思维有些问题,如果一个交易不活跃的品种,你多去判断这5秒有何意义
谢谢您的指点,不活跃的我其实也不去交易,可能更偏向理论式的问问。
我先在在Sub MarketData_ReportNotify(ReportData)事件中,用上了“Application.Msgout ReportData.date & ",Code:" & stkLable & ",NewPrice:" & NewPrice”,其中的ReportData.date 果然输出了全部的日期和时间,太感谢了!
可是,为甚么时间是错的?是下午的时间?请看:
2016/8/12 14:14:22,Code:RB10,NewPrice:2566
2016/8/12 14:14:23,Code:RB10,NewPrice:2566
2016/8/12 14:14:23,Code:RB10,NewPrice:2566
2016/8/12 14:14:24,Code:RB10,NewPrice:2566
2016/8/12 14:14:24,Code:RB10,NewPrice:2565
2016/8/12 14:14:25,Code:RB10,NewPrice:2566
2016/8/12 14:14:25,Code:RB10,NewPrice:2566
2016/8/12 14:14:26,Code:RB10,NewPrice:2565