以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [求助]实战中,信号延迟出现,并没有执行操作 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=167321) |
-- 作者:topfun -- 发布时间:2018/12/25 10:24:22 -- [求助]实战中,信号延迟出现,并没有执行操作 背景: 0.使用及购买的是标准版; 1.写程序的时候,选了序列不行,必须选逐K线模式; 2.信号执行选择的是固定间隔15秒。 3.下单品种另制定。 4.相关程序: INPUT:tq(75); K终:=(time0-timetot0(dynainfo(207))<=tq) or not(ISLASTBAR); //tq自己指定一个秒数 if K终=1 then begin sellshort(conbpk,0,thisclose),orderqueue,ignorecheckprice; buy(conbpk and holding=0,ss,thisclose),orderqueue,ignorecheckprice; sell(conspk,0,thisclose),orderqueue,ignorecheckprice; buyshort(conspk and holding=0,ss,thisclose),orderqueue,ignorecheckprice; end 问题: 理应在10:00前75秒信号出现并执行,但没发生,于是我在9:59:09秒手动操作。 后来k线上也出信号了。 为什么,应该怎么解决?
|
-- 作者:FireScript -- 发布时间:2018/12/25 10:38:37 -- 你这是信号闪烁了吧。 你的开平仓的条件conbpk conspk
如何定义的呢?如果代码里面有闪烁和变动的情况,那就会出现你说的情况。时间条件是其一,你这个开仓条件本身也是影响因素啊。
|
-- 作者:topfun -- 发布时间:2018/12/25 10:43:01 -- 我正想补充一点,当时信号并不闪烁,至少在9:55分之后,价格比信号临界点少3点以上。 如果写得没问题,那为安全起见,固定间隔调到1秒,tick级别刷新比较好咯?
|
-- 作者:wenarm -- 发布时间:2018/12/25 10:53:30 -- 1.信号是否闪烁,你可以直接使用debugfile输出条件定位当时的成立状态。 2.语法逻辑上没问题,至于间隔时间是你根据自己实际需求使用的,时间间隔越短对计算机的资源消耗也会不断增加。 |
-- 作者:topfun -- 发布时间:2018/12/25 11:09:03 -- 请问怎么使用debugfile输出条件定位当时的成立状态? |
-- 作者:wenarm -- 发布时间:2018/12/25 11:16:44 -- 在条件处不断输出其结果,在出现疑问的条件问题时,直接查信息 使用调试函数方法 http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=49428
|
-- 作者:topfun -- 发布时间:2018/12/25 14:30:03 -- 我加了这一行 Sign:=conbpk or conspk; if islastbar then DEBUGFILE(\'D:\\00投资投机\\Weisoft Stock(x64)\\Setting\\TEST.TXT\' ,‘信号\',sign);//输出开仓条件 @@@@注意:如果是序列工作模式,请使用 CONST 函数将buycond等序列变量转化为单值数据以提高字符串操作的工作效率。@@@@@@ 那以后就能在日志里看到了吧。如果有信号的话。 |
-- 作者:wenarm -- 发布时间:2018/12/26 7:16:16 -- DEBUGFILE(\'D:\\00投资投机\\Weisoft Stock(x64)\\Setting\\TEST.TXT\' ,\'信号%.2f\',sign); |