通达信MACD金叉费数标注副图指标源码
这是一个增强型MACD指标,功能如下:
- 基础MACD:计算DIF、DEA和柱状线,红绿柱显示趋势强弱变化。
- DIF升:红色线表示DIF上升阶段。
- 零下/零上金叉:标记DIF上穿DEA的位置,并区分零轴上下,显示第几次金叉(一至五次)。
- 顶底背离:自动识别价格与DIF的背离,绘制连线并标注文字。
- 斐波那契数:在金叉和死叉位置标注1、3、5、8、13、21、34、55等数字,提示关键周期。
- 三全项:当零下金叉、零下二次金叉和底背离同时出现时,标注“三全项”。
使用方法:直接加载到副图,观察金叉死叉、背离信号及斐波那契数字,辅助判断买卖点。
DIF:EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:EMA(DIF,9);
MACD:(DIF-DEA)*2,COLORSTICK;
STICKLINE(MACD<REF(MACD,1) AND MACD>0,0,MACD,0,0),COLORBROWN;
STICKLINE(MACD>REF(MACD,1) AND MACD<0,0,MACD,0,0),COLORLIRED;
DIF升:IF(DIF>REF(DIF,1),DIF,DRAWNULL),COLORRED,LINETHICK1;
JCCOUNT1:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));
零下金叉:CROSS(DIF,DEA) AND DIF<0.0 AND COUNT(JCCOUNT1=1,21)=1,NODRAW,COLORGREEN;
STICKLINE(零下金叉,0,DEA,0.0,0),COLORGREEN;
DRAWTEXT(零下金叉,DEA/2,' 零下一'),COLORGREEN;
零下二次:CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT1=2,21)=1,NODRAW,COLORGREEN;
STICKLINE(零下二次,0,DEA,0.0,0),,COLORGREEN;
DRAWTEXT(零下二次,DEA/2,' 零下二'),COLORGREEN;
零下三次:CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT1=3,21)=1,NODRAW,COLORGREEN;
STICKLINE(零下三次,0,DEA,0.0,0),COLORGREEN;
DRAWTEXT(零下三次,DEA/2,' 零下三'),COLORGREEN;
零下四次:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT1=4,21)=1,NODRAW,COLORGREEN;
STICKLINE(零下四次,0,DEA,0.0,0),,COLORGREEN;
DRAWTEXT(零下四次,DEA/2,' 零下四'),COLORGREEN;
零下五次:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT1=5,21)=1,NODRAW,COLORGREEN;
STICKLINE(零下五次,0,DEA,0.0,0),COLORGREEN;
DRAWTEXT(零下五次,DEA/2,' 零下五'),COLORGREEN;
JCCOUNT2:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA<=0));
零上金叉:CROSS(DIF,DEA) AND DIF>0.0 AND COUNT(JCCOUNT2=1,21)=1,NODRAW,COLORMAGENTA;
STICKLINE(零上金叉,0,DEA,0.0,0),COLORMAGENTA;
DRAWTEXT(零上金叉,DEA/2,'零上一 '),COLORMAGENTA;
零上二次:CROSS(DIF,DEA) AND DEA>0 AND COUNT(JCCOUNT2=2,21)=1,NODRAW,,COLORMAGENTA;
STICKLINE(零上二次,0,DEA,0.0,0),COLORMAGENTA;
DRAWTEXT(零上二次,DEA/2,' 零上二'),COLORMAGENTA;
零上三次:CROSS(DIF,DEA) AND DEA>0 AND COUNT(JCCOUNT2=3,21)=1,NODRAW,COLORMAGENTA;
STICKLINE(零上三次,0,DEA,0.0,0),COLORMAGENTA;
DRAWTEXT(零上三次,DEA/2,' 零上三'),COLORMAGENTA;
零上四次:=CROSS(DIF,DEA) AND DEA>0 AND COUNT(JCCOUNT2=4,21)=1,NODRAW,COLORMAGENTA;
STICKLINE(零上四次,0,DEA,0.0,0),COLORMAGENTA;
DRAWTEXT(零上四次,DEA/2,' 零上四'),COLORMAGENTA;
零上五次:=CROSS(DIF,DEA) AND DEA>0 AND COUNT(JCCOUNT2=5,21)=1,NODRAW,COLORMAGENTA;
STICKLINE(零上五次,0,DEA,0.0,0),COLORMAGENTA;
DRAWTEXT(零上五次,DEA/2,' 零上五'),COLORMAGENTA;
A1:=BARSLAST(REF(CROSS(DIF,DEA),1));
底背离:=REF(CLOSE,A1+1)>CLOSE AND DIF>REF(DIF,A1+1) AND CROSS(DIF,DEA) AND DEA<0;
STICKLINE(底背离,0,0.03,3,0),COLOR00FF00;
底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORRED,LINETHICK4;
DRAWTEXT(底背离,DEA,' 底背离'),COLORFF00FF;
A2:=BARSLAST(REF(CROSS(DEA,DIF),1));
顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(DIF,A2+1)>DIF AND CROSS(DEA,DIF);
顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,LINETHICK2;
DRAWTEXT(顶背离,DEA,' 顶背离'),COLORGREEN;
DRAWTEXT(零下金叉 AND 零下二次 AND 底背离,0.25,'三全项'),COLOR0000FF,LINETHICK2;
{费数}
JC:=CROSS(DIF,DEA),NODRAW;
TJ:=SUMBARS(JC,1),NODRAW;
SC:=CROSS(DEA,DIF),NODRAW;
TS:=SUMBARS(SC,1),NODRAW;
F:=0.1;
DRAWTEXT(JC,-F,'1'),COLORMAGENTA;
DRAWTEXT(TJ=3 AND MACD>0,-F,'3'),COLORMAGENTA;
DRAWTEXT(TJ=5 AND MACD>0,-F,'5'),COLORMAGENTA;
DRAWTEXT(TJ=8 AND MACD>0,-F,'8'),COLORMAGENTA;
DRAWTEXT(TJ=13 AND MACD>0,-F,'13'),COLORMAGENTA;
DRAWTEXT(TJ=21 AND MACD>0,-F,'21'),COLORMAGENTA;
DRAWTEXT(TJ=34 AND MACD>0,-F,'34'),COLORMAGENTA;
DRAWTEXT(TJ=55 AND MACD>0,-F,'55'),COLORMAGENTA;
DRAWTEXT(SC,F,'1'),COLORGREEN;
DRAWTEXT(TS=3 AND MACD<0,F,'3'),COLORGREEN;
DRAWTEXT(TS=5 AND MACD<0,F,'5'),COLORGREEN;
DRAWTEXT(TS=8 AND MACD<0,F,'8'),COLORGREEN;
DRAWTEXT(TS=13 AND MACD<0,F,'13'),COLORGREEN;
DRAWTEXT(TS=21 AND MACD<0,F,'21'),COLORGREEN;
DRAWTEXT(TS=34 AND MACD<0,F,'34'),COLORGREEN;
DRAWTEXT(TS=55 AND MACD<0,F,'55'),COLORGREEN;

未来函数检测结果如下:
该公式没有未来函数
定制指标公式、软件请联系QQ或微信同号:88652583
输出DIF:收盘价的12日指数移动平均-收盘价的26日指数移动平均
输出DEA:DIF的9日指数移动平均
输出平滑异同平均线:(DIF-DEA)*2,COLORSTICK
当满足条件MACD<1日前的MACDANDMACD>0时,在0和MACD位置之间画柱状线,宽度为0,0不为0则画空心柱.,画棕色
当满足条件MACD>1日前的MACDANDMACD<0时,在0和MACD位置之间画柱状线,宽度为0,0不为0则画空心柱.,画淡红色
输出DIF升:如果DIF>1日前的DIF,返回DIF,否则返回无效数,画红色,线宽为1
JCCOUNT1赋值:统计上次DEA>=0距今天数日中满足DIF上穿DEA的天数
输出零下金叉:DIF上穿DEA AND DIF<0.0 AND 统计21日中满足JCCOUNT1=1的天数=1,NODRAW,画绿色
当满足条件零下金叉时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画绿色
当满足条件零下金叉时,在DEA/2位置书写文字,画绿色
输出零下二次:DIF上穿DEA AND DEA<0 AND 统计21日中满足JCCOUNT1=2的天数=1,NODRAW,画绿色
当满足条件零下二次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,,画绿色
当满足条件零下二次时,在DEA/2位置书写文字,画绿色
输出零下三次:DIF上穿DEA AND DEA<0 AND 统计21日中满足JCCOUNT1=3的天数=1,NODRAW,画绿色
当满足条件零下三次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画绿色
当满足条件零下三次时,在DEA/2位置书写文字,画绿色
零下四次赋值:DIF上穿DEA AND DEA<0 AND 统计21日中满足JCCOUNT1=4的天数=1,NODRAW,画绿色
当满足条件零下四次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,,画绿色
当满足条件零下四次时,在DEA/2位置书写文字,画绿色
零下五次赋值:DIF上穿DEA AND DEA<0 AND 统计21日中满足JCCOUNT1=5的天数=1,NODRAW,画绿色
当满足条件零下五次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画绿色
当满足条件零下五次时,在DEA/2位置书写文字,画绿色
JCCOUNT2赋值:统计上次DEA<=0距今天数日中满足DIF上穿DEA的天数
输出零上金叉:DIF上穿DEA AND DIF>0.0 AND 统计21日中满足JCCOUNT2=1的天数=1,NODRAW,画洋红色
当满足条件零上金叉时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画洋红色
当满足条件零上金叉时,在DEA/2位置书写文字,画洋红色
输出零上二次:DIF上穿DEA AND DEA>0 AND 统计21日中满足JCCOUNT2=2的天数=1,NODRAW,,画洋红色
当满足条件零上二次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画洋红色
当满足条件零上二次时,在DEA/2位置书写文字,画洋红色
输出零上三次:DIF上穿DEA AND DEA>0 AND 统计21日中满足JCCOUNT2=3的天数=1,NODRAW,画洋红色
当满足条件零上三次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画洋红色
当满足条件零上三次时,在DEA/2位置书写文字,画洋红色
零上四次赋值:DIF上穿DEA AND DEA>0 AND 统计21日中满足JCCOUNT2=4的天数=1,NODRAW,画洋红色
当满足条件零上四次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画洋红色
当满足条件零上四次时,在DEA/2位置书写文字,画洋红色
零上五次赋值:DIF上穿DEA AND DEA>0 AND 统计21日中满足JCCOUNT2=5的天数=1,NODRAW,画洋红色
当满足条件零上五次时,在0和DEA位置之间画柱状线,宽度为0.0,0不为0则画空心柱.,画洋红色
当满足条件零上五次时,在DEA/2位置书写文字,画洋红色
A1赋值:上次1日前的DIF上穿DEA距今天数
底背离赋值:A1+1日前的收盘价>收盘价 AND DIF>A1+1日前的DIF AND DIF上穿DEA AND DEA<0
当满足条件底背离时,在0和0.03位置之间画柱状线,宽度为3,0不为0则画空心柱.,COLOR00FF00
输出底背:当满足条件A1=0时,在DEA位置画直线起点,当满足条件底背离时,在DEA位置画直线终点,0表示是否延长.,画红色,线宽为4
当满足条件底背离时,在DEA位置书写文字,COLORFF00FF
A2赋值:上次1日前的DEA上穿DIF距今天数
顶背离赋值:A2+1日前的收盘价<收盘价 AND A2+1日前的DIF>DIF AND DEA上穿DIF
输出顶背:当满足条件A2=0时,在DEA位置画直线起点,当满足条件顶背离时,在DEA位置画直线终点,0表示是否延长.,画绿色,线宽为2
当满足条件顶背离时,在DEA位置书写文字,画绿色
当满足条件零下金叉AND零下二次AND底背离时,在0.25位置书写文字,COLOR0000FF,线宽为2
JC赋值:DIF上穿DEA,NODRAW
TJ赋值:JC累加至1的天数,NODRAW
SC赋值:DEA上穿DIF,NODRAW
TS赋值:SC累加至1的天数,NODRAW
F赋值:0.1
当满足条件JC时,在-F位置书写文字,画洋红色
当满足条件TJ=3ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=5ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=8ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=13ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=21ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=34ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件TJ=55ANDMACD>0时,在-F位置书写文字,画洋红色
当满足条件SC时,在F位置书写文字,画绿色
当满足条件TS=3ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=5ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=8ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=13ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=21ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=34ANDMACD<0时,在F位置书写文字,画绿色
当满足条件TS=55ANDMACD<0时,在F位置书写文字,画绿色