[PEL] 复制代码 MA1:=MA(CLOSE,a),COLORWHITE;
MA2:=MA(CLOSE,b),COLORRED;
MA3:=MA(CLOSE,cc),COLORCYAN;
PARTLINE(MA1>=MA2,MA2,COLORMAGENTA),LINETHICK2;
PARTLINE(MA1<MA2,MA2,COLORYELLOW),LINETHICK2;
//交易条件
开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件
VARIABLE:kdPrice:=0,kkPrice:=0;
HX:=HHV(C,ENTERBARS+1),NODRAW;//不包含开仓K
LX:=LLV(L,ENTERBARS+1),NODRAW;
if hx-c>=20*MINDIFF and holding>0 then
begin
sell(1,holding,market);
回撤开空:buyshort(1,2,market);
kkPrice:=ENTERPRICE-30*MINDIFF;//首次开仓生成下一次加仓时候的价格基准
end
if c-LX>=20*MINDIFF and holding<0 then
begin
sellshort(1,holding,market);
回撤开多:buy(1,2,market);
kdPrice:=ENTERPRICE+30*MINDIFF;
end
if c>kdPrice and holding<6 then
begin
多加仓:buy(1,2,market);
kdPrice:=kdPrice+30*MINDIFF;
end
if kkPrice>c and abs(holding)<6 then
begin
空加仓:buy(1,2,market);
kkPrice:=kkPrice-30*MINDIFF;//加仓时候生成下一次加仓时候的价格基准
end
if 开多平空条件 then
begin
sellshort(1,holding,market);
buy(holding=0,2,market);
kdPrice:=ENTERPRICE+30*MINDIFF;//首次开仓生成下一次加仓时候的价格基准
END
if 开空平多条件 then
begin
sell(1,holding,market);
buyshort(holding=0,2,market);
kkPrice:=ENTERPRICE-30*MINDIFF;//首次开仓生成下一次加仓时候的价格基准
END
持仓:holding; |