开仓条件里不要用holding=0的限制后边满足开空条件都会开空
收盘平仓,用time>=(收盘前倒数第二根k线的时间) then 平仓
收盘平仓,用time<=(收盘前倒数第二根k线的时间) then 平仓吧。
不用holding=0的限制,和原先一样。
交易时间:=TIME>091500 AND TIME<=151400;
//开多
IF 开多 THEN BEGIN
BUY(1,1,LIMITR,上轨),ALLOWREPEAT;
END
//平多
IF holding>0 and 平多 and 交易时间 THEN BEGIN
SELL(1,1,THISCLOSE);
END
//开空
if 开空 then begin
BUYSHORT(1,1,LIMITR,下轨),ALLOWREPEAT;
end
//平空
if holding<0 and 平空 and time<=151400 then BEGIN
sellshort(1,1,THISCLOSE),ALLOWREPEAT;
end
//time>=(收盘前倒数第二根k线的时间) then 平仓
胜率%: PERCENTWIN, PRECISION2, LineThick0;
净利: NetProfit, PRECISION2,LineThick0;
交易次数:TOTALTRADE,PRECISION2,LineThick0;
交易时间:=TIME>091500 AND TIME<=151400;
//平空
if holding<0 and 平空 and time<=151400 then BEGIN
sellshort(1,1,THISCLOSE),ALLOWREPEAT;
end
//开多
IF 开多 THEN BEGIN
BUY(1,1,LIMITR,上轨),ALLOWREPEAT;
END
//平多
IF holding>0 and 平多 and 交易时间 THEN BEGIN
SELL(1,1,THISCLOSE);
END
//开空
if 开空 then begin
BUYSHORT(1,1,LIMITR,下轨),ALLOWREPEAT;
end
//time>=(收盘前倒数第二根k线的时间) then 平仓
胜率%: PERCENTWIN, PRECISION2, LineThick0;
净利: NetProfit, PRECISION2,LineThick0;
交易次数:TOTALTRADE,PRECISION2,LineThick0;
是第2根K线平仓,不是当根K线平仓。
1,你是要强制第二根平仓还是说不要开仓当根k线平仓?这是两种情况,
2,收盘前2根k线平仓是要time>=151400, 15点14那根满足条件平仓,
1分钟周期才可以这样写,其他周期可能没有151400这根k线,所以要根据你交易周期看下倒数第二根k线的时间来写。
那就不用特意写收盘平仓语句
直接写交易语句就行了,图表一个下单语句只能交易一次,不要写allowrepeat.
你的意思是开仓后下跟k线必须平仓?
那么平仓条件就写
if enterbrs=1 then begin
sell();
sellshort();
end