以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  如何设定镍的操作时间  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=163294)

--  作者:c100010231
--  发布时间:2018/5/8 9:47:51
--  如何设定镍的操作时间
如标题。因为镍要一直到凌晨1:00才停盘。我的操作周期为一分钟,想这样设定操作时间:分别是每天早9:00以后一直到14:58分、晚21:00以后一直到0:58分,请问这个语句应如何写?
[此贴子已经被作者于2018/5/8 9:48:15编辑过]

--  作者:c100010231
--  发布时间:2018/5/8 9:50:27
--  
我是这样设定的:
CZT:=(TIME>09000 AND TIME<145800)OR TIME>210000 or time<005800;
但是,昨天在测试的时候,发现有一次时间刚好在1:00,程序却操作了。请问是何原因?

--  作者:FireScript
--  发布时间:2018/5/8 10:05:18
--  
 time返回值是金字塔时间,但是你做判断用的是北京时间。你直接输出time看下就知道区别了。金字塔时间和北京时间相差4小时

a:(time>=130000 and time<182800) or (time>=10100 and time<=50000)
[此贴子已经被作者于2018/5/8 10:05:36编辑过]

--  作者:c100010231
--  发布时间:2018/5/8 11:05:04
--  
晕,一直都用的是北京时间。这个时间设定方法用在其它品种上都很正常的。比如:对于23:00闭市的品种,我这样设定:CZT:=(TIME>09000 AND TIME<145500)OR(TIME>21000 AND TIME<225300);
用起来很正常的,为什么在镍上会有问题呢?

--  作者:FireScript
--  发布时间:2018/5/8 11:19:45
--  
 如果是在北京时区下面那么返回的是北京时间,这个没错的。



图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

应该是这个判断触发导致的错误。我看下如何处理。

--  作者:c100010231
--  发布时间:2018/5/8 19:19:17
--  
请问,这个问题解决了么?


--  作者:FireScript
--  发布时间:2018/5/9 9:01:10
--  
 改下:
time<90000


图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

--  作者:FireScript
--  发布时间:2018/5/9 9:03:20
--  
下次写这种时间判断条件的时候,最好按照time在指定时间的K上的输出为准。比如9点整time的返回值是90000