以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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);
ma10:=ma(c,10);
input:tq(5,3,60,1);//TQ即为您要提前的秒数
abb:=(time0-timetot0(dynainfo(207))<=tq) or not(islastbar);

 

 

把您上面的abb换成这个就可以了

 

 


--  作者:qaz88
--  发布时间:2013/10/11 13:31:22
--  

哪个改时间哪个改周期请注明谢谢



input:tq(5,3,60,1);//TQ即为您要提前的秒数
abb:=(time0-timetot0(dynainfo(207))<=tq) or not(islastbar);

 


--  作者: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
--  
老师请完整给序编写好谢谢!