三均线指路交易系统源码: runmode:0;input:period1(4,1,100,1);input:period2(9,1,100,1);input:period3(18,1,100,1);variable:myasset=30000;entertime:=time>=092500 and time<=145500;exittime:=time>=150000;ma1:=ma(close,period1);ma2:=ma(close,period2);ma3:=ma(close,period3);buycond:=entertime and ref(close>ma1 and ma1>ma2 and ma2>ma3,1);buyprice:=open;buyshortcond:=entertime and ref(close<ma1 and ma1<ma2 and ma2<ma3,1);buyshortprice:=open;if holding=0 and buycond then begin buy(1,1,limitr,buyprice);endif holding=0 and buyshortcond then begin buyshort(1,1,limitr,buyshortprice);endif holding>0 and exittime then begin sell(1,holding,limitr,close);endif holding<0 and exittime then begin sellshort(1,holding,limitr,close);endif exittime then myasset:=asset; 资产:myasset,noaxis,colormagenta;次数:totaltrade,linethick0;收益:(myasset-30000)/30000,linethick0;胜率:percentwin,linethick0;出击:totaltrade/(count(date<>ref(date,1),0)+1),linethick0;连亏:maxseqloss,linethick0;连赢:maxseqwin,linethick0;源码解析:输出 RUNMODE:0输出 INPUT:PERIOD1(4,1,100,1)输出 INPUT:PERIOD2(9,1,100,1)输出 INPUT:PERIOD3(18,1,100,1)输出 VARIABLE:MYASSET=30000ENTERTIME赋值:TIME>=092500 AND TIME<=145500EXITTIME赋值:TIME>=150000MA1赋值:收盘价的PERIOD1日简单移动平均MA2赋值:收盘价的PERIOD2日简单移动平均MA3赋值:收盘价的PERIOD3日简单移动平均BUYCOND赋值:ENTERTIME AND 昨日CLOSE>MA1ANDMA1>MA2ANDMA2>MA3BUYPRICE赋值:开盘价BUYSHORTCOND赋值:ENTERTIME AND 昨日CLOSE<MA1ANDMA1<MA2ANDMA2<MA3BUYSHORTPRICE赋值:开盘价 逻辑判断 HOLDING=0 AND BUYCOND THEN BEGIN BUY(1,1,LIMITR,BUYPRICE) END 逻辑判断 HOLDING=0 AND BUYSHORTCOND THEN BEGIN BUYSHORT(1,1,LIMITR,BUYSHORTPRICE) END 逻辑判断 HOLDING>0 AND EXITTIME THEN BEGIN SELL(1,HOLDING,LIMITR,收盘价) END 逻辑判断 HOLDING<0 AND EXITTIME THEN BEGIN SELLSHORT(1,HOLDING,LIMITR,收盘价)MYASSET赋值:ASSET输出 资产:MYASSET,NOAXIS,画洋红色输出 次数:TOTALTRADE,线宽为0输出 收益:(MYASSET-30000)/30000,线宽为0输出 胜率:PERCENTWIN,线宽为0输出 出击:TOTALTRADE/(统计0日中满足DATE<>REF(日期,1)的天数+1),线宽为0输出 连亏:MAXSEQLOSS,线宽为0输出 连赢:MAXSEQWIN,线宽为0 |