A1:=TIME>=090500&&TIME<101000;
A2:=TIME>=103500&&TIME<112500;
B1:=TIME>=133500&&TIME<145500;
B2:=TIME>=210500&&TIME<232500;
TT:=A1 OR A2 OR B1 OR B2;
//中间条件
DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:EMA(DIFF,9);
C1:=BARSLAST(CROSS(DIFF,DEA))>=3;//BARSLAST函数过滤,避免短时间段内频繁交易
C2:=BARSLAST(CROSS(DEA,DIFF))>=3;
//交易条件
开多:=TT AND CROSS(DIFF,DEA) AND ref(C1,1);
开空:=TT AND CROSS(DEA,DIFF) AND ref(C2,1);
//交易系统
BUY(开多 and HOLDING=0,1,market);//交易系统之开多操作
BUYSHORT(开空 and HOLDING=0,1,market); //交易系统之开空操作
//固定止损部分************************
//多头止盈
IF C-AVGENTERPRICE>8*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END
//多头止损
IF AVGENTERPRICE-C>4*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END
//空头止盈
IF AVGENTERPRICE-C>8*MINDIFF THEN BEGIN
SELLSHORT(1,HOLDING,MARKET);
END
//空头止损
IF C-AVGENTERPRICE>4*MINDIFF THEN BEGIN
SELLSHORT(1,HOLDING,MARKET);
END
//收盘前清仓**********************
p2:=if(islastbar,dynainfo(207),time);
if p2>=145800 then
begin
sellshort(holding<0,0,limitr,CLOSE);
sell(holding>0,0,limitr,CLOSE);
end
//其他
r1:=barslast(date<>ref(date,1));
日