以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  昨日收盘价读取错误  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=92033)

--  作者:xiebooo
--  发布时间:2016/2/25 7:27:43
--  昨日收盘价读取错误
我在1分钟周期上需要读取期货品种的昨日收盘价,使用的代码是:
closeyd:= callstock(stklabel, vtclose, 6, -1)

但是我发现对夜盘品种这个代码会出现一个问题,就是晚上24点以前的夜盘时间里,上述代码会认为自己仍然在本自然日时间内,就会读取昨个自然日下午3:00的收盘价,但是此时的昨日收盘价其实是本个自然日下午3:00的收盘价。

比如在2月24日晚上23:00,昨日收盘价应该是指2月24日下午3:00的收盘价,但是上述代码会读取2月23日下午3:00的收盘价。

我用的是北京自然时间,没有用金字塔时区。

请问怎样写代码才能在白天也夜盘都正确读取昨日收盘价?如果可以用代码解决,我还是不想改到金字塔时区。

--  作者:yukizzc
--  发布时间:2016/2/25 9:04:12
--  

最简单的方法就是用金字塔时区

如果硬要北京时区会很麻烦,你自己代码里控制if time>210000 then clseyd:=closeyd:= callstock(stklabel, vtclose, 6, 0);

if time>000001 then closeyd:=callstock(stklabel, vtclose, 6, -1);