文华指标进化MACD源码背离改编

在技术分析指标中, 由于MACD指标的使用相对简单且出错几率较小而被广大投资者所运用。
MACD指标是由2条曲线和红绿柱构成,进而产生了多种MACD指标进行分析的深化指标和思路。
关注公众号”智能云策略“获取更多资讯

MACD指标

MACD指标的原理及运用,朋友们可以看前期的文章。前不久,有位朋友托艾云策略跟大家分享他之前收藏的 《文华指标进化MACD源码背离改编》 文档笔记,关于采用常见的方式改写MACD指标的源码。
仅作为策略思路拓展,不建议直接用于期货等投资实盘中(投资有风险,入市须谨慎)。

MACD曲线

MACD构成中是有2条曲线的,首先是快的指数移动平均线(EMA12)减去慢的指数移动平均线(EMA26)得到快线DIF,还有就是DIF的9日加权移动均线DEA

1、黄白线定义
DIFF : EMA(CLOSE,12) – EMA(CLOSE,26);// 快的指数移动平均线(EMA12)减去慢的指数移动平均线(EMA26)
DEA  : EMA(DIFF,9);// DIF的9日加权移动均线

2、黄白线比较
DIFF>REF(DIFF,1);//上涨
DIFF<REF(DIFF,1);//下跌

3、黄白线交叉(穿越)
CROSS(DIFF,DEA);//金叉
CROSSDOWN(DIFF,DEA);//死叉

4、黄白线变色DRAWCOLORLINE(DIFF>REF(DIFF,1),COLORRED,COLORCYAN);//DIFF上涨红色,下跌青色

5、黄白线区域填充
 FILLRGN(DIFF>DEA&&DIFF<0,DIFF,DEA,COLORRED);//0轴之下红柱区间填充为红色

6、黄白线交叉到当前距离
N:=SUMBARS(CROSS(DIFF,DEA),1);//上次金叉距离
M:= SUMBARS(CROSSDOWN(DIFF,DEA),1)//上次死叉距离;
NN:=SUMBARS(CROSS(DIFF,DEA),2);//上上次金叉距离
NN:=SUMBARS(CROSS(DIFF,DEA),3);//上上上次金叉距离
NN:=SUMBARS(CROSS(DIFF,DEA),4);//上上上上次金叉距离

MACD柱体

1、柱体定义
MACD:2*(DIFF-DEA),COLORSTICK;//2×(快线DIF-DIF的9日加权移动均线DEA)得到MACD柱

2、柱体比较 MACD>REF(MACD,1));

3、柱体的判断 MACD>0;//小于0是绿柱

4、柱体更改
因为MACD红绿柱是细线,所以更改时用DRAWLINEDRAWLINE(MACD>0,0,1,MACD,COLORYELLOW);//MACD>0 柱体是黄色

5、柱体面积
面积其实就是求红绿柱对应所有柱体的和

JC:=CROSS(DIFF,DEA); 
//金叉SC:=CROSSDOWN(DIFF,DEA);//死叉
N1:=BARSLAST(JC)+1;//金叉到当前距离
N2:=BARSLAST(SC)+1;//死叉到当前距离
MJ:VALUEWHEN(DIFF>DEA,SUM(MACD,N1));//红柱期间MACD面积
MS:VALUEWHEN(DIFF<DEA,-1*SUM(MACD,N2));//绿柱期间MACD面积

6、柱体标注
DIFF :EMA(CLOSE,12) – EMA(CLOSE,26);
DEA  :EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
DRAWICON(CROSS(DIFF,DEA),MACD,’ICO4′);//MACD金叉处标注红色向上箭头
DRAWICON(CROSSDOWN(DIFF,DEA),MACD,’ICO5′); //MACD死叉处标注绿色向下箭头  

MACD预警

1、如金死叉预警:
JC:=CROSS(DIFF,DEA); //金叉
SC:=CROSSDOWN(DIFF,DEA);//死叉
JC||SC,SPARK;

2:复杂点如K线价格上穿或下穿30日线时,并且同时MACD金叉或死叉时弹窗预警:
DIFF : EMA(CLOSE,12) – EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  : EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
2*(DIFF-DEA),COLORSTICK;
MA30:MA(C,30);//30日均线
CROSS(C,MA30)&&CROSS(DIFF,DEA)||DIFF>DEA&&CROSS(C,MA30),SPARK;
CROSSDOWN(C,MA30)&&CROSSDOWN(DIFF,DEA)||DIFF<DEA&&CROSSDOWN(C,MA30),SPARK;

MACD背离

MACD指标背离,通常分为顶背离和底背离,是预示市场走势即将见顶或者见底。

1、底背离:当股价的低点比前一次的低点低、而MACD指标的低点比指标的前一次低点高,这叫底背离现象
2、顶背离:即当股价的高点比前一次的高点高、而MACD指标的高点比指标的前一次高点低,这叫顶背离现象。

编写源码:
DIFF:EMA(CLOSE,12) – EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(MACD,N1));//上次MACD红柱期间MACD最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间MACD最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));//上次MACD绿柱期间合约最小值
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));//上上次MACD绿柱期间合约最小值
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));//上次MACD绿柱期间MACD最小值
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));//上上次MACD绿柱期间MACD最小值
A:=CROSSDOWN(DIFF,DEA)&&HH>HH2&&MHD<MHD2;//顶背离
B:=CROSS(DIFF,DEA)&&LL<LL2&&MLD>MLD2;//底背离
DRAWICON(A,MACD,5);
DRAWICON(B,MACD,4);

MACD作为金融投资市场中的常用指标,具有非常重要的实际应用价值,交易员可以根据艾云策略所提供的指标源码,结合平时的交易经验进行改编,形成自己的交易策略。

发表评论

邮箱地址不会被公开。 必填项已用*标注