DIF:=EMA(CLOSE,12)-EMA(CLOSE,26); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2; {顶部结构预警} 金叉:=CROSS(DIF,DEA); 死叉:=CROSS(DEA,DIF); M1:=BARSLAST(金叉);{最近一次金叉的位置} M2:=REF(BARSLAST(金叉),M1+1);{倒数第二次金叉与倒数第一次金叉的区间} M3:=BARSLAST(死叉);{最近一次死叉的位置} M4:=REF(BARSLAST(死叉),M3+1);{倒数第二次死叉与倒数第一次死叉的区间} M5:=M1-M3;{最近一次金叉与最近一次死叉的区间} M6:=M2+M5-M4;{倒数第二次金叉与倒数第二次死叉的区间} M7:=M4+M3-M1;{倒数第二次死叉与倒数第一次金叉的区间} A:=MAX(ABS(MACD),M3);{最近一次死叉以来的MACD最大值} M8:=BARSLAST(A);{最近一次死叉以来出现MACD最大值的天数} B:=REFX(MACD,M8);{M8以来MACD的取值} CH1:=HHV(C,M1+1);{最近一次金叉后,最高收盘价} DIFL1:=LLV(DIF,M4+M3);{倒数第二次死叉以来的DIF最小值} CH2:=REF(CH1,M1+1);{倒数第二次金叉与倒数第一次金叉之间的最高收盘价} DIFH1:=HHV(DIF,M1);{最近一次金叉以来的DIF最大值} M9:=BARSLAST(DIFL1);{倒数第二次死叉以来出现最小DIF的位置} M10:=BARSLAST(DIFH1);{最近一次金叉以来出现最大DIF的位置} M11:=M9-M10; {最小DIF以来至最大DIF天数} YN:=COUNT(REF(C,1)>REF(O,1),M11);{最小DIF以来至最大DIF阳线天数} YM:=COUNT(REF(C,1)<REF(O,1),M10);{最大DIF以来至现在阴线天数} 上涨:=COUNT(REF(C,1)>REF(C,2),M11); 下跌:=COUNT(REF(C,1)<REF(C,2),M10); 阳量平均值:=SUM(IF(REF(C,1)>REF(O,1),REF(V,1),0),M11)/YN; 阴量平均值:=SUM(IF(REF(C,1)<REF(O,1),REF(V,1),0),M10)/YM; EXIST(3*阴量平均值<阳量平均值 AND DIF<DEA,N) AND M1>M3;
|
|