INPUT:P(1,0,200,1),P1(5,0,50,1),N(6,5,30,1);
VARIABLE:MAXPROFIT=0,VMIN = 090000;
WIN1:=0;
WIN2:=0;//止盈、止损、回撤控制
EMA1:=EMA(CLOSE,20);
DIFF:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
EMA2:=barslast(cross(macd,0));
EMA3:=barslast(cross(0,macd));
开多:=EMA2<=5 and HIGH>=EMA1+4;
平多:=EMA3<=5 and LOW<=EMA1-4;
开空:=EMA3<=5 and LOW<=EMA1-4;
平空:=EMA2<=5 and HIGH>=EMA1+4;
交易时间:=TIME>VMIN AND TIME<151500;
IF HOLDING=0 THEN BEGIN
IF 交易时间 AND 开多 THEN BEGIN
BUY(1,LIMITR,CLOSE);
MAXPROFIT:=0;
END
IF 交易时间 AND 开空 THEN BEGIN
BUYSHORT(1,LIMITR,CLOSE);
MAXPROFIT:=0;
END
END
IF HOLDING>0 THEN BEGIN
IF 平多 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF NOT(交易时间) THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF ENTERBARS>0 THEN BEGIN
WIN1:=(CLOSE-ENTERPRICE)/ENTERPRICE*100;
IF WIN1>MAXPROFIT THEN
MAXPROFIT:=WIN1;
WIN2:=(MAXPROFIT-WIN1)/MAXPROFIT*100;
END
IF CLOSE-ENTERPRICE<-P1 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF 6<MAXPROFIT <= 15 and MAXPROFIT - WIN1 = 1 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF 15<=MAXPROFIT<=20 and WIN2>40 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF 20<=MAXPROFIT<=30 and WIN2>35 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF 30<=MAXPROFIT<=50 and WIN2>30 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF 50<=MAXPROFIT<=100 and WIN2>25 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
IF MAXPROFIT>=100 and WIN2>20 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
END
IF HOLDING<0 THEN BEGIN
IF 平空 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF NOT(交易时间) THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF ENTERBARS>0 THEN BEGIN
WIN1:=(ENTERPRICE-CLOSE)/ENTERPRICE*100;
IF WIN1>MAXPROFIT THEN
MAXPROFIT:=WIN1;
WIN2:=(MAXPROFIT-WIN1)/MAXPROFIT*100;
END
IF ENTERPRICE-CLOSE <-P1 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF 6<MAXPROFIT <= 15 and MAXPROFIT - WIN1 = 1 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF 15<=MAXPROFIT<=20 and WIN2>40 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF 20<=MAXPROFIT<=30 and WIN2>35 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF 30<=MAXPROFIT<=50 and WIN2>30 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF 50<=MAXPROFIT<=100 and WIN2>25 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
IF MAXPROFIT>=100 and WIN2>20 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
END
把EMA2 换个名字就可以了
EMA2 是金字塔关键字 。。