等级: 免费版
- 注册:
- 2023-11-16
- 曾用名:
|
/趋势指标组合
//中间变量
INPUT : HLD(10,1,1000,1);//获利
INPUT : ZSD(30,1,1000,1);//止损
INPUT : QDYD(7,1,1000,1);//移动保护启动点
INPUT : YD(15,1,1000,1);//移动保护
//布林通道
INPUT:M(26,1,100,1),P(20,1,100,1),N(10,1,100,1),SS(1,1,100,1);
MID:=MA(CLOSE,M);
UPPER:MID + 2*STD(CLOSE,M);
LOWER:MID - 2*STD(CLOSE,M);
//MA均线
MA1:=MA(C,N);
MA2:=MA(C,P);
//交易条件
开多平空:=CROSS(C,UPPER) AND VOL>REF(VOL,1) AND C>MA1 ;;//开多平空条件
开空平多:=CROSS(LOWER,C) AND VOL>REF(VOL,1) AND C<MA2 ;//开空平多条件
//交易执行
TT:=IF(HOLDING<>0,OPENBAR,3);
HHH:=REF(HHV(H,TT+1),1);
LLL:=REF(LLV(L,TT+1),1);
平空:SELLSHORT(开多平空 AND HOLDING>0,HOLDING,MARKET);
平多:SELL(开空平多 AND HOLDING<0,HOLDING,MARKET);
开多:BUY(开多平空 AND HOLDING=0,SS,MARKET);
开空:BUYSHORT(开空平多 AND HOLDING=0,SS,MARKET);
IF HOLDING >0 THEN BEGIN//多单止盈
BCCJ:=MAX(AVGENTERPRICE+HLD*MINDIFF,OPEN);
SELL(H>=AVGENTERPRICE+HLD*MINDIFF,HOLDING,LIMITR, BCCJ);
END
IF HOLDING >0 THEN BEGIN//多单止损
BCCJ1:=MIN(AVGENTERPRICE-ZSD*MINDIFF,OPEN);
SELL(L<=AVGENTERPRICE-ZSD*MINDIFF,HOLDING,LIMITR, BCCJ1);
END
IF HOLDING >0 AND HHH>=AVGENTERPRICE+MINDIFF*QDYD AND ENTERBARS>0 THEN BEGIN//多单止损
BCCJ2:=MIN(AVGENTERPRICE+YD*MINDIFF,OPEN);
SELL(L<=AVGENTERPRICE+YD*MINDIFF,HOLDING,LIMITR, BCCJ2);
END |
|