MACD柱子背离指标公式:源码解析与趋势识别
本期指标说明:
价格快慢线交叉与柱状体峰值对比的趋势强弱观察工具。它通过对比相邻两段上升或下降期间的价格高低点与柱状体高低点之间的关系,来辅助识别动能减弱的现象。当价格创新高但对应柱状体峰值降低,或价格创新低但柱状体谷值抬升时,该工具会给出“顶背离”、”底背离”提示,帮助使用者留意可能的方向变化,并用红绿柱状体直观展示当前动能方向。未检测到未来函数!
幅图区域使用,新建幅图类型指标,分为文华和通达信两个版本源码。
完整版指标文件,记得点赞+转发+爱心,评论“macd背离”,记得斯❤我!发您可导入的指标文件!
一、指标源码:主图是精品指标

文华版源码如下:
快线:EMA(CLOSE,12) – EMA(CLOSE,26),COLORGREEN,LINETHICK2;
慢线:EMA(快线,9),COLORRED,LINETHICK2;
柱子:2*(快线-慢线),COLORSTICK;
金叉:=CROSS(快线,慢线);
死叉:=CROSSDOWN(快线,慢线);
周期1:=BARSLAST(金叉)+1;
周期2:=BARSLAST(死叉)+1;
高点:=VALUEWHEN(CROSSDOWN(快线,慢线),HHV(MAX(C,O),周期1));
高点2:=VALUEWHEN(CROSSDOWN(快线,慢线),REF(高点,1));
峰值:=VALUEWHEN(CROSSDOWN(快线,慢线),HHV(柱子,周期1));
峰值2:=VALUEWHEN(CROSSDOWN(快线,慢线),REF(峰值,1));
低点:=VALUEWHEN(CROSS(快线,慢线),LLV(MIN(C,O),周期2));
低点2:=VALUEWHEN(CROSS(快线,慢线),REF(低点,1));
谷值:=VALUEWHEN(CROSS(快线,慢线),LLV(柱子,周期2));
谷值2:=VALUEWHEN(CROSS(快线,慢线),REF(谷值,1));
条件A:=CROSSDOWN(快线,慢线)&&高点>高点2&&峰值<峰值2;
条件B:=CROSS(快线,慢线)&&低点<低点2&&谷值>谷值2;
DRAWTEXT(条件A,快线,’信号1′),COLORGREEN;
DRAWTEXT(条件B,慢线,’信号2′),VALIGN0;
STICKLINE(柱子>0,0,柱子,1,0),COLORRED;
STICKLINE(柱子<0,0,柱子,1,0),COLORCYAN;
通达源码如下:幅图2是精品指标

DIFF:EMA(CLOSE,12) – EMA(CLOSE,26),COLORGREEN,LINETHICK2;
{快线:收盘价的12日平滑值 – 收盘价的26日平滑值,绿色,线粗2}
DEA:EMA(DIFF,9),COLORRED,LINETHICK2;
{慢线:快线的9日平滑值,红色,线粗2}
MACD:2*(DIFF-DEA),COLORSTICK;
{柱子:2倍的快线与慢线差值,彩色柱}
IF(DIFF>DEA,DIFF,DRAWNULL),COLORRED,LINETHICK2;
JC:=CROSS(DIFF,DEA);
{上穿条件:=快线上穿慢线}
SC:=CROSS(DEA,DIFF);
{下穿条件:=慢线上穿快线}
N1:=BARSLAST(JC)+1;
{周期1:=上次上穿条件成立到现在的周期数+1}
N2:=BARSLAST(SC)+1;
{周期2:=上次下穿条件成立到现在的周期数+1}
HH:=VALUEWHEN(CROSS(DEA,DIFF),HHV(MAX(C,O),N1));
{高点:=当慢线上穿快线时,取最近周期1内最高价与开盘价较大值的最高值}
HH2:=VALUEWHEN(CROSS(DEA,DIFF),REF(HH,1));
{高点前:=当慢线上穿快线时,取前一次的高点值}
MHD:=VALUEWHEN(CROSS(DEA,DIFF),HHV(MACD,N1));
{峰值:=当慢线上穿快线时,取最近周期1内柱子的最大值}
MHD2:=VALUEWHEN(CROSS(DEA,DIFF),REF(MHD,1));
{峰值前:=当慢线上穿快线时,取前一次的峰值}
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MIN(C,O),N2));
{低点:=当快线上穿慢线时,取最近周期2内收盘价与开盘价较小值的最低值}
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));
{低点前:=当快线上穿慢线时,取前一次的低点值}
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));
{谷值:=当快线上穿慢线时,取最近周期2内柱子的最小值}
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));
{谷值前:=当快线上穿慢线时,取前一次的谷值}
A:=CROSS(DIFF,DEA)&&HH>HH2&&MHD<MHD2;
{信号A:=快线上穿慢线 并且 高点大于高点前 并且 峰值小于峰值前}
B:=CROSS(DIFF,DEA)&&LL<LL2&&MLD>MLD2;
{信号B:=快线上穿慢线 并且 低点小于低点前 并且 谷值大于谷值前}
DRAWTEXT(A,DIFF,’顶背离’),COLORGREEN;
{文字提示A:在信号A成立时,快线位置显示”信号一”,绿色}
DRAWTEXT(B,DEA,’底背离’),COLORYELLOW;
{文字提示B:在信号B成立时,慢线位置显示”信号二”,黄色}
STICKLINE(MACD>0,0,MACD,1,0),COLORRED;
{柱线1:当柱子大于0时,从0画到柱子值,红色}
STICKLINE(MACD<0,0,MACD,1,0),COLORCYAN;
{柱线2:当柱子小于0时,从0画到柱子值,青色}
1、指标公式源码供大家学习研究,不具备操作指导等作用。
2、技术指标是分析辅助工具,大家自行学习灵活运用,盈亏自负。
1、打开软件–进入指标管理器
2、选择指标类型的分组名称,输入指标名称,描述可以不写,选择指标属性,切记属性选择要对哦。
3、复制源码,粘贴源码
4、语法测试,通过,点击确定保存,或者直接加载到图形上。
5、键盘直接输入新建指标名称,软件右下角即可调出指标,选择即可显示出来。
END
立即加星标
每天看好文
点点赞
点转发
点❤️
夜雨聆风