我在1分钟周期上需要读取期货品种的昨日收盘价,使用的代码是:
closeyd:= callstock(stklabel, vtclose, 6, -1)
但是我发现对夜盘品种这个代码会出现一个问题,就是晚上24点以前的夜盘时间里,上述代码会认为自己仍然在本自然日时间内,就会读取昨个自然日下午3:00的收盘价,但是此时的昨日收盘价其实是本个自然日下午3:00的收盘价。
比如在2月24日晚上23:00,昨日收盘价应该是指2月24日下午3:00的收盘价,但是上述代码会读取2月23日下午3:00的收盘价。
我用的是北京自然时间,没有用金字塔时区。
请问怎样写代码才能在白天也夜盘都正确读取昨日收盘价?如果可以用代码解决,我还是不想改到金字塔时区。
最简单的方法就是用金字塔时区
如果硬要北京时区会很麻烦,你自己代码里控制if time>210000 then clseyd:=closeyd:= callstock(stklabel, vtclose, 6, 0);
if time>000001 then closeyd:=callstock(stklabel, vtclose, 6, -1);