【编写技巧】:MACD常见用法的编写介绍 (文华财经)

投资者咨询:【编写技巧】:MACD常见用法的编写介绍 (文华财经)
来源:文华财经  日期:2018-4-23 14:28



   在技术面指标中,
由于MACD指标的使用相对简单且出错几率较小被广大投资者所运用。

MACD指标是由2条曲线和红绿柱构成,进而产生了多种MACD指标进行分析的深化指标和思路。



—————————————————————————————————————————————————

为了方便大家分析MACD,本帖主要从以下几个方面介绍MACD的指标编写方法:


1.MACD  黄白线编写——主要是针对MACD中红黄线的定义编写,比如填充颜色,取值和判断


(1)MACD 黄白线定义


(2)MACD 黄白线比较


(3)MACD 黄白线交叉


(4)MACD 黄白线变色


(5)MACD 黄白线区域填充


(6)MACD 黄白线交叉距离



2.MACD  红绿柱编写——主要针对MACD红绿柱的定义编写,比如更改显示


(1)MACD 柱体定义


(2)MACD 柱体比较


(3)MACD 柱体判断


(4)MACD 柱体更改


(5)MACD 柱体面积


(6)MACD 柱体标注


3.MACD  预警——主要是自设页面预警编写,便于客户寻找交易机会


(1)MACD交叉预警


(2)MACD和均线共振预警


 

4.MACD 背离示例——背离是MACD指标中较为复杂的思路,这里分享给大家一个具体编写,便于大家学习,仅供参考,不做实盘推荐


(1)以MACD数值变化和合约价格变化的背离介绍

     
                                     
技术人员回复
日期:2018-4-23 14:30

1.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);//上上上上次金叉距离

               
技术人员回复
日期:2018-4-23 14:31

2.MACD的柱体编写


——————————————————————————————————————————————


 

(1)柱体定义


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

 


(2)柱体比较


 MACD>REF(MACD,1));



(3)柱体的判断


 MACD>0;//小于0是绿柱

 


(4)柱体更改

 

因为MACD红绿柱是细线,所以更改时用DRAWLINE

DRAWLINE(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死叉处标注绿色向下箭头                     
   
技术人员回复
日期:2018-4-23 14:34
 3.MACD预警

——————————————————————————————————————————————

预警主要指WH6自设页面预警,设置方法参考 菜单 软件说明书》价格预警》公式预警


公式上就是条件,SPARK;

 



示例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;

 




如图还想预警时伴随着声音,个性化设置中设置即可,如图



按此在新窗口浏览图片
文件名:1.png

 
 
技术人员回复
日期:2018-4-23 14:38
 4.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);

 
           
技术人员回复
日期:2018-4-23 15:00
 请不要在此跟帖
技术人员回复
日期:2019-8-22 21:09
  请不要在此跟帖
投资者咨询:【编写技巧】:MACD常见用法的编写介绍 (文华财经)
来源:文华财经  日期:2018-4-23 14:28
 LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));//上上次MACD绿柱期间合约最小值
这句话中“REF(LL,1))”LL是不是多写了一个L?
技术人员回复
日期:2020-6-11 17:46
 没有多写,这是固定写法
投资者咨询:【编写技巧】:MACD常见用法的编写介绍 (文华财经)
来源:文华财经  日期:2018-4-23 14:28


图片点击可在新窗口打开查看
图片点击可在新窗口打开查看 文件名:微信截图_20200728164327.png