http://help.wenhua.com.cn/dispbbs.asp?BoardID=14&ID=629700
我也有这个帖子的类似需求 请老师编写和集成 非常感谢
1.1 这个是macd定义
DIFF :EMA(CLOSE,12) - EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA :EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;
STICKLINE(MACD>0&&MACD>REF(MACD,1),MACD,0,COLORRED,0);
STICKLINE(MACD>0&&MACD<REF(MACD,1),MACD,0,COLORYELLOW,0);
STICKLINE(MACD<0&&MACD>REF(MACD,1),MACD,0,COLORMAGENTA,0);
STICKLINE(MACD<0&&MACD<REF(MACD,1),MACD,0,COLORCYAN,0);
1.2 具体的面积背离思路:
“第3.5种解决方案:
用MACD红柱区间最高价判断价格趋势,用红柱区间的面积判断MACD的趋势。
(内容来源)
DIFF:=EMA(C,12) - EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
UPCOND:=CROSS(DIFF,DEA);
DOWNCOND:=CROSSDOWN(DIFF,DEA);
END_N1:=SUMBARS(DOWNCOND,1);
RANGE_N1:=REF(SUMBARS(UPCOND,1),END_N1);
END_N2:=SUMBARS(DOWNCOND,2);
RANGE_N2:=REF(SUMBARS(UPCOND,1),END_N2);
HH1:=REF(HHV(H,RANGE_N1),END_N1);
HH2:=REF(HHV(H,RANGE_N2),END_N2);
MACD1:=REF(SUM(MACD,RANGE_N1),END_N1);
MACD2:=REF(SUM(MACD,RANGE_N2),END_N2);
顶背离:=CROSS(0,MACD) && HH1>HH2 && MACD1<MACD2;
DRAWICON(顶背离,H,'ICO5');”
1.3 面积背离发生2次和 发生3次 可以编写吗
非常感谢


文件名:20178121230611068.png
连续背离以笑脸标注参考,不过连续背离比较苛刻满足条件的位置会比较少:
DIFF:=EMA(C,12) - EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
UPCOND:=CROSS(DIFF,DEA);
DOWNCOND:=CROSSDOWN(DIFF,DEA);
END_N1:=SUMBARS(DOWNCOND,1);
RANGE_N1:=REF(SUMBARS(UPCOND,1),END_N1);
END_N2:=SUMBARS(DOWNCOND,2);
RANGE_N2:=REF(SUMBARS(UPCOND,1),END_N2);
HH1:=REF(HHV(H,RANGE_N1),END_N1);
HH2:=REF(HHV(H,RANGE_N2),END_N2);
MACD1:=REF(SUM(MACD,RANGE_N1),END_N1);
MACD2:=REF(SUM(MACD,RANGE_N2),END_N2);
顶背离:=CROSS(0,MACD) && HH1>HH2 && MACD1<MACD2;
DRAWICON(顶背离,H,'ICO5');
DRAWICON(顶背离 &&REF(顶背离,SUMBARS(CROSS(0,MACD),2)-1),H,1); //连续两次
DRAWICON(顶背离 &&REF(顶背离,SUMBARS(CROSS(0,MACD),2)-1)&&REF(顶背离,SUMBARS(CROSS(0,MACD),3)-1),H,2); //连续三次