RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
J:=3*K-2*D;
MA5:=MA(C,5);
MA10:=MA(C,10);
MA20:=MA(C,20);
MA40:=MA(C,40);
MA60:=MA(C,60);
MID:=MA(CLOSE,32);
TMP2:=STD(CLOSE,32);
TOP:=MID+2*TMP2;
BOTTOM:=MID-2*TMP2;
DIFF : =EMA(CLOSE,12) - EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA : =EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
L1:=6;
L2:=12;
L3:=24;
BIAS1:=(CLOSE-MA(CLOSE,L1))/MA(CLOSE,L1)*100;//收盘价减去收盘价在L1周期内的简单移动平均,除以收盘价在L1周期内的简单移动平均乘以100;
BIAS2:=(CLOSE-MA(CLOSE,L2))/MA(CLOSE,L2)*100;//同上
BIAS3:=(CLOSE-MA(CLOSE,L3))/MA(CLOSE,L3)*100;//同上
#IMPORT [MIN ,15 , AA] AS VAR1
KDJ15:=VAR1.KDJ;
KDS15:=VAR1.KDS;
JIN15:=VAR1.JIN;
SI15:=VAR1.SI;
#IMPORT [HOUR,1,AA ] AS VAR3
ND:=VAR3.ND;
NK:=VAR3.NK;
JH:=VAR3.J;
KH:=VAR3.K;
DH:=VAR3.D;
KDJH:=VAR3.KDJ;
KDSH:=VAR3.KDS;
JINH:=VAR3.JIN;
SIH:=VAR3.SI;
#IMPORT [MIN,5,AA ] AS VAR6
KDJ5:=VAR6.KDJ;
KDS5:=VAR6.KDS;
BB:=VAR6.BB;
BB1:=VAR6.BB1;
MJ5:=VAR6.MJ;
MS5:=VAR6.MS;
TR := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);//最高价与最低价做差,最高价与前一周期收盘价做差,最低价与前一周期收盘价作差,在上述三个数据中取绝对值最大者,对该最大值做N周期累加求和。。
HD := HIGH-REF(HIGH,1);//最高价与前一周期最高价做差
LD := REF(LOW,1)-LOW;//前一周期最低价与最低价做差
DMP:= SUM(IFELSE(HD>0 && HD>LD,HD,0),14);//如果HD>0并且HD>LD,取HD否则取0,对取值做N周期累加求和。
DMM:= SUM(IFELSE(LD>0 && LD>HD,LD,0),14);//如果LD>0并且LD>HD,取LD否则取0,对取值做N周期累加求和。
PDI:= DMP*100/TR;
MDI:= DMM*100/TR;
ADX:= MA(ABS(MDI-PDI)/(MDI+PDI)*100,6);//MDI与PDI差的绝对值与(MDI+PDI)*100做比值,取该比值的M个周期均值。
ADXR:=(ADX+REF(ADX,6))/2;
ND1:=NOT(VALUEWHEN(CROSS(K,D),J)>90&&VALUEWHEN(CROSS(K,D),K)>90&&VALUEWHEN(CROSS(K,D),D)>90);
NK1:=NOT(VALUEWHEN(CROSSDOWN(K,D),J)<20&&VALUEWHEN(CROSSDOWN(K,D),K)<20&&VALUEWHEN(CROSSDOWN(K,D),D)<20);
PANZHENG,NODRAW;
BKVOL=0&&BB&&MA5>MA10&&JINH&&ND&&K>D&&MA5>MA40&&MDI<20&&ADX>MDI&&NOT(ADXR>ADX)&&PANZHENG=0&&NOT(J>95)&&NOT(H-MAX(O,C)>ABS(O-C))&&ND1&&BIAS1>0.05&&BIAS2>0.05&&BIAS3>0.05,BK(1);
DRAWTEXT(NOT(ISLASTSK)&&BKVOL=0&&BB&&MA5>MA10&&JINH&&ND&&K>D&&MA5>MA40&&MDI<20&&ADX>MDI&&NOT(ADXR>ADX)&&PANZHENG=0&&NOT(J>95)&&NOT(H-MAX(O,C)>ABS(O-C))&&ND1&&BIAS1>0.05&&BIAS2>0.05&&BIAS3>0.05,H,'多开'),COLORRED;
SKVOL=0&&BB1&&MA5<MA10&&SIH&&NK&&K<D&&MA5<MA40&&PDI<20&&ADX>PDI&&NOT(ADXR>ADX)&&PANZHENG=0&&NOT(J<10)&&NOT(MIN(O,C)-L>ABS(O-C))&&NK1&&BIAS1<-0.05&&BIAS2<-0.05&&BIAS3<-0.05,SK(1);
DRAWTEXT(NOT(ISLASTBK)&&SKVOL=0&&BB1&&MA5<MA10&&SIH&&NK&&K<D&&MA5<MA40&&PDI<20&&ADX>PDI&&NOT(ADXR>ADX)&&PANZHENG=0&&NOT(J<10)&&NOT(MIN(O,C)-L>ABS(O-C))&&NK1&&BIAS1<-0.05&&BIAS2<-0.05&&BIAS3<-0.05,H,'空开'),COLORGREEN;
K>D&&C<MA5&&MDI>20||C<MA20,SP(1);
DRAWTEXT(BKVOL=1&&(K>D&&C<MA5&&MDI>20||C<MA20),H,'平仓');
K<D&&C>MA5&&PDI>20||C>MA20,BP(1);
DRAWTEXT(SKVOL=1&&(K<D&&C>MA5&&PDI>20||C>MA20),H,'平仓');
C<BKPRICE-10*MINPRICE,SP(BKVOL);
DRAWTEXT(BKVOL>0&&C<BKPRICE-10*MINPRICE,H,'止损');
C>SKPRICE+10*MINPRICE,BP(SKVOL);
DRAWTEXT(SKVOL>0&&C>SKPRICE+10*MINPRICE,H,'止损');