[PEL] 复制代码 RUNMODE:0;
//中间变量
INPUT:AVGLENGTH(40),ATRLENGTH(40),SS(1,1,10000,1);//定义参数值
MA1:=REF(MA((HIGH+LOW+CLOSE)/3,AVGLENGTH),1);//定义MA1
手数:=ss;
//交易条件
UPPERBAND:=MA1+REF(MA(TR,ATRLENGTH),1);//上轨
LOWERBAND:=MA1-REF(MA(TR,ATRLENGTH),1);//下轨
ENTRYLONGCOND:=MA1>REF(MA1,1) AND HIGH>=UPPERBAND;//开多条件
EXITLONGCOND:=LOW<=MA1;//平多条件
ENTRYSHORTCOND:=MA1<REF(MA1,1) AND LOW<=LOWERBAND;//开空条件
EXITSHORTCOND:=HIGH>=MA1;//平空条件
//交易系统
VARIABLE:lk:=0;
IF HOLDING=0 THEN BEGIN //若持仓为0
IF ENTRYLONGCOND THEN //且满足开多条件
BUY(1,手数,LIMITR,MAX(OPEN,UPPERBAND));//开多单
END
IF HOLDING=0 THEN BEGIN//若持仓为0
IF ENTRYSHORTCOND THEN//且满足开空条件
BUYSHORT(1,手数,LIMITR,MIN(OPEN,LOWERBAND));//开空单
END
IF HOLDING>0 THEN BEGIN//若持有多单
IF EXITLONGCOND THEN//且满足平多条件
SELL(1,HOLDING,LIMITR,MIN(OPEN,MA1));//平多单
if NUMPROFIT(1)<0 then lk:=lk+1;
if NUMPROFIT(1)>0 then lk:=0;
DRAWNUMBER(1,h,lk,7);
END
IF HOLDING<0 THEN BEGIN//若持有空单
IF EXITSHORTCOND THEN//且满足平空条件
SELLSHORT(1,HOLDING,LIMITR,MAX(OPEN,MA1));//平空单
if NUMPROFIT(1)<0 then lk:=lk+1;
if NUMPROFIT(1)>0 then lk:=0;
DRAWNUMBER(1,h,lk,7);
END
//其他
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY; |