[PEL] 复制代码 MA3:=EMA(CLOSE,3);
MA10:=EMA(CLOSE,10);
开多平空条件:cross(MA3,ma10);
开空平多条件:cross(MA10,ma3);
//固定2%止损部分
IF (AVGENTERPRICE-c)/AVGENTERPRICE>=0.02 THEN BEGIN
SELL(1,HOLDING,MARKET);
END
IF (c-AVGENTERPRICE)/AVGENTERPRICE>=0.02 THEN BEGIN
SELLSHORT(1,HOLDING,MARKET);
END
maxprofit1:=(hhv(h,ENTERBARS+1)-AVGENTERPRICE)/AVGENTERPRICE;//多头最大盈利,按照最高价和持仓均价计算的.
maxprofit2:=(AVGENTERPRICE-llv(l,ENTERBARS+1))/AVGENTERPRICE;
currentprofit1:=(c-AVGENTERPRICE)/AVGENTERPRICE;
currentprofit2:=(AVGENTERPRICE-c)/AVGENTERPRICE;
//持仓大于10个周期,最高盈利小于5% 平仓。这里需要注意下面这2句平仓 未必是止盈的。仅仅是没触发2%止损也没有达到过5%的盈利。
IF ENTERBARS+1>=10 AND maxprofit1<0.05 and holding>0 then 多止盈:sell(1,holding,market);
IF ENTERBARS+1>=10 AND maxprofit2<0.05 and holding<0 then 空止盈:sellshort(1,holding,market);
if maxprofit1>=0.05 and currentprofit1<=maxprofit1*0.8 then 多移动止盈:sell(1,holding,market);
if maxprofit2>=0.05 and currentprofit2<=maxprofit2*0.8 then 空移动止盈:sellshort(1,holding,market);
平空:SELLSHORT(开多平空条件 ,0,MARKET);
开多:BUY(开多平空条件 and holding=0,1,MARKET);
平多:SELL(开空平多条件,0,MARKET);
开空:BUYSHORT(开空平多条件 and holding=0,1,MARKET);
适用的运行模式:固定时间间隔。
|