以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 走完1根K线提前3秒下单 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=57427) |
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:00:14 -- 走完1根K线提前3秒下单 老师你好!如下代码增加了走完1根K线提前3秒下单.我试了无作用.无提前下单.不知什么原因.错在哪里.请老师帮忙检查谢谢! zq:=1;//周期类型,2分钟就填2,3分钟就填3 ,5分钟就填5,10分钟就填10 tq:=3;//提前的秒数,最多提前60秒 lastopentm:=if(date<>ref(date,1),0,ref(openminutes(time),1));//上一根K线的开盘分钟数 ticktm:=dynainfo(207); abb:=(mod(ticktm,100)>=60-tq and (openminutes(ticktm)-lastopentm=zq-1 or (ticktm>=112900 and ticktm<=113000) or (ticktm>=151400 and ticktm<=151500))) or not(islastbar); ifabb then begin 平空:SELLSHORT(PK OR EXITTIME,lots,limitr,OPEN+2*mindiff); //平空信号 开多:BUY(KD AND HOLDING=0 and aXITTIME,lots,limitr,OPEN+6*mindiff); //开多信号 平多:SELL(PD OR EXITTIME,lots,limitr,OPEN-2*mindiff); //平多信号 开空:BUYSHORT(KK AND HOLDING=0 and aXITTIME,lots,limitr,OPEN-6*mindiff); end |
|
-- 作者:lichenghu -- 发布时间:2013/10/11 13:02:30 -- http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=9439&replyID=&skin=1
看下这个帖子把,另外提前下单需在固定轮询模式下 |
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:05:17 -- 1楼是用固定时间模式运行 |
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:07:48 -- 是用 固定轮询模式下运行.我不会改请老师帮忙改正好吗! |
|
-- 作者:lichenghu -- 发布时间:2013/10/11 13:15:16 -- 您好,您上面的方法是老版本的 ,新版很直接
ma5:=ma(c,5);
把您上面的abb换成这个就可以了
|
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:31:22 --
|
|
-- 作者:lichenghu -- 发布时间:2013/10/11 13:34:57 -- abb:=(time0-timetot0(dynainfo(207))<=3) or not(islastbar); if abb then
begin
平空:SELLSHORT(PK OR EXITTIME,lots,limitr,OPEN+2*mindiff); //平空信号
开多:BUY(KD AND HOLDING=0 and aXITTIME,lots,limitr,OPEN+6*mindiff); //开多信号
平多:SELL(PD OR EXITTIME,lots,limitr,OPEN-2*mindiff); //平多信号
开空:BUYSHORT(KK AND HOLDING=0 and aXITTIME,lots,limitr,OPEN-6*mindiff);
end
改成这样就是提前3s下单 [此贴子已经被作者于2013/10/11 13:36:12编辑过]
|
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:38:38 -- 改了也不起作用也不会提前下单.请老师帮改正谢谢! input:tq(5,3,60,1);//TQ即为您要提前的秒数 abb:=(time0-timetot0(dynainfo(207))<=tq) or not(islastbar); ifabb then begin 平空:SELLSHORT(PK OR EXITTIME,lots,limitr,OPEN+2*mindiff); //平空信号 开多:BUY(KD AND HOLDING=0 and aXITTIME,lots,limitr,OPEN+6*mindiff); //开多信号 平多:SELL(PD OR EXITTIME,lots,limitr,OPEN-2*mindiff); //平多信号 开空:BUYSHORT(KK AND HOLDING=0 and aXITTIME,lots,limitr,OPEN-6*mindiff); end
|
|
-- 作者:lichenghu -- 发布时间:2013/10/11 13:45:22 -- 固定轮询模式,适应于日线以下级别
您这里tq默认值为5,即为提前5s
ifabb then//if和abb之间有空格,您这样编译都不通过,您怎么确定提前秒数的?
IF ABB THEN
|
|
-- 作者:qaz88 -- 发布时间:2013/10/11 13:57:14 -- 老师请完整给序编写好谢谢! |