新版本有问题,我以前反映的报单延迟一直存在,刚看下了论坛,有其他用户也反应了报单延迟的问题!
我刚才仔细观察了一下,实际上报单延迟的原因是软件卡顿,有时候1秒钟,有时候几秒钟,然后恢复正常,无规律、不间断出现,从资源管理器上看就是短暂的出现“无响应”状态,卡顿的时候恰巧遇到报单就延迟发单了!我试了一下更换服务器,情况好像好一点,不知道到底是软件问题还是服务器问题,请你们仔细排查!麻烦了!
上次反应问题的链接 http://www.weistock.com/bbs/dispbbs.asp?BoardID=2&ID=167866&replyID=&skin=1
图表1分钟,策略代码:
(半自动突破策略,用了一两年了,V5.0版本以前一直没有问题!)
input:ss(2,1,999,1),p(0,0,400000,1),wt(0,-20,20,1),zs(3,0,20,1);
VARIABLE:dzsATR=drawnull,doubleATR=drawnull,threeATR=drawnull,times=0;
ATR:=(zs-1)*mindiff;
abb:=(time0-timetot0(dynainfo(207))<=10) or not(islastbar);
3D:=llv(ref(l,1),2);
hh:if(date[DATACOUNT]=date and p>0 and times=0,p,drawnull),LINETHICK2,COLORRED;
if wt<>0 and times=1 then hh:=p+wt*mindiff;
//收盘和夜盘平仓
IFclose:=time=closetime(0) or (time=closetime(1) and closetime(1)<>141500);
if holding>0 and IFclose and abb and dynainfo(54)<>c then begin
sell(1,holding,marketr);
end
//开多
if holding=0 and h>=hh and o<=hh and not(IFclose) then BEGIN
buy(1,ss,limitr,hh+mindiff*4);
dzsATR:=hh-ATR;
doubleATR:=hh+ATR*2;
threeATR:=hh+ATR*3;
end
//破3根K线最低价平仓
if holding>0 and l<3D then BEGIN
sell(1,holding,marketr);
dzsATR:=drawnull;
doubleATR:=drawnull;
threeATR:=drawnull;
times:=times+1;
end
//ATR止损
if holding>0 then begin
if h>doubleATR then dzsATR:=max(dzsATR,ENTERPRICE-mindiff*4);//突破2倍ATR后上移止损
if h>threeATR then dzsATR:=max(dzsATR,ENTERPRICE-mindiff*2);//突破3倍ATR后上移止损
end
CorL:=if(enterbars=0 or dzsATR>ref(dzsATR,1),c,l);
if CorL<dzsATR and holding>0 then BEGIN
sell(1,holding,marketr);
dzsATR:=drawnull;
doubleATR:=drawnull;
threeATR:=drawnull;
times:=times+1;
end
//脉冲大K线平仓
mck:=(h-l)/ma(tr,20);
sj:=(time>=010100 and time<=011000) or (time>=130100 and time<=131000);
refm:=ref(mck,1);
if holding>0 and c<>h then begin
if (mck>5 and sj) or mck>7 or refm>7 or (refm>5 and sj) then begin
sell(1,holding,marketr);
dzsATR:=drawnull;
doubleATR:=drawnull;
threeATR:=drawnull;
end
end
止损线:if(holding>0,max(dzsatr,3d),drawnull),COLORGREEN;
我刚把策略都关闭,图表上只留下K线,再启动图表交易,但仍然出现短暂卡顿现象,不知道这是为什么?