ma1:ma(c,3);
ma2:ma(c,8);
ma3:ma(c,20);
TR1 : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR : MA(TR1,30);
做多:
开仓加仓:3日均线金叉20均线开多,3日均线金叉8日均线且3日均线大于20日均线且价格在大于上次开仓价加1/2ATR时加一手,3日均线金叉8日均线且3日均线大于20日均线且价格大于上次开仓价加1/2ATR时再加一手,,,连加十手
平仓:价格破N日低点时平仓(N=60)
都是等信号发出的那根K线走完,下一根开盘开平仓
做空:
与上面相反
VARIABLE:flag=0;
ma1:ma(c,3);
ma2:ma(c,8);
ma3:ma(c,20);
TR1 : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR : MA(TR1,30);
//做多:
if CROSS(ma1,ma3) and flag=0 then begin
buy(1,1,MARKET);
flag:=1;
end
if cross(ma1,ma2) and ma1>ma3 and close-ENTERPRICE>0,5*ATR then BEGIN
flag:=flag+1;
buy(1,flag,MARKET);
end
if cross(llv(low,60),close) then begin
sell(1,holding,MARKET);
flag:=0;
end
空头部分自行尝试实现。