通达信MACD多周期确认副图指标 源码 附图

{MACD时间}
{3,7,3}{7,21,2}{12,52,9}
N:=3;
M:=9;
M1:=3;

DIF:EMA(CLOSE,N)-EMA(CLOSE,M),NODRAW;
DEA:EMA(DIF,M1),NODRAW;
MACD:(DIF-DEA)*2,COLORSTICK;
{多周期统计}
当红:IF(BARSLAST(MACD<0),BARSLAST(MACD<0),0),NODRAW,COLORRED;
当绿:IF(BARSLAST(MACD>0),BARSLAST(MACD>0),0),NODRAW,COLORGREEN;
{MACD周值}
周DIF:="MACD.DIF#WEEK";
周DEA:="MACD.DEA#WEEK";
周MACD:=(周DIF-周DEA)*2;
周红:IF(周MACD>0,BARSLAST(CROSS(周MACD,0)),DRAWNULL)+1,COLORYELLOW,NODRAW;
周绿:IF(周MACD<0,BARSLAST(CROSS(0,周MACD)),DRAWNULL)+1,COLORCYAN,NODRAW;
{MACD月值}
月DIF:="MACD.DIF#MONTH";
月DEA:="MACD.DEA#MONTH";
月MACD:=(月DIF-月DEA)*2;
月红:IF(月MACD>0,BARSLAST(CROSS(月MACD,0)),DRAWNULL)+1,COLORRED,NODRAW;
月绿:IF(月MACD<0,BARSLAST(CROSS(0,月MACD)),DRAWNULL)+1,COLORGREEN,NODRAW;
STICKLINE(MACD>REF(MACD,1) AND MACD>0,0,MACD,1,0),COLORRED;
STICKLINE(MACD<REF(MACD,1) AND MACD>0,0,MACD,1,-1),COLORRED;
STICKLINE(MACD>REF(MACD,1) AND MACD<0,0,MACD,1,0),COLORGREEN;
STICKLINE(MACD<REF(MACD,1) AND MACD<0,0,MACD,1,-1),COLORGREEN;
ZM:=REF(MACD,BARSLAST(周红=1));
STICKLINE(MACD>ZM AND ZM>0,ZM,ZM,1,0),COLORWHITE;
DRAWBAND(DEA,RGB(250,250,0),DEA,RGB(0,0,0));
DRAWBAND(IF(DIF>DEA,DIF,DRAWNULL),RGB(250,0,0),DIF,RGB(0,0,0));
DRAWBAND(IF(周红<1,DEA,DRAWNULL),RGB(0,250,0),DEA,RGB(0,0,0));
DRAWTEXT(周红=1,0,'周'),COLORYELLOW,DRAWABOVE;
低位金叉:=CROSS(DIF,DEA) AND DIF<-0.1;
JCCOUNT:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));
二次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=2,21)=1;
DRAWTEXT(二次金叉,DEA*0.2,'二金'),COLORWHITE;
三次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=3,60)=1;
DRAWTEXT(三次金叉,DEA*0.2,'三金'),COLORLIMAGENTA;
四次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=4,90)=1;
DRAWTEXT(四次金叉,DEA*0.2,'四金'),COLORYELLOW;
五次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=5,120)=1;
DRAWTEXT(五次金叉,DEA*0.2,'五金'),COLORBROWN;
六次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=6,150)=1;
DRAWTEXT(六次金叉,DEA*0.2,'六金'),COLORBLUE;
{MACD日线底背离}
A1:=BARSLAST(REF(CROSS(DIF,DEA),1));
底背离:=REF(CLOSE,A1+1)>CLOSE AND DIF>REF(DIF,A1+1) AND CROSS(DIF,DEA);
DRAWTEXT(底背离,DIF*0.5,'底背'),COLORRED;
{日底背画线:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORRED,DOTLINE;}
{MACD日线顶背离}
A2:=BARSLAST(REF(CROSS(DEA,DIF),1));
顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(DIF,A2+1)>DIF AND CROSS(DEA,DIF);
DRAWTEXT(顶背离,DIF*1.12,'顶背'),COLORGREEN;
{日顶背画线:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,DOTLINE;}
{MACD积背离}
JC:= DEA-DIF;
绿柱面积:=IF(MACD<0,SUM(MACD,BARSLAST(JC<0)),0);
红柱面积:=IF(MACD>0,SUM(MACD,BARSLAST(JC>0)),0);
本次最低价:=LLV(L,BARSLAST(JC<0));
本次最高价:=HHV(H,BARSLAST(JC>0));
X1:=IF (MACD<0,BARSLAST(CROSS(DIF,DEA)),0);
前次绿柱面积:=REF(绿柱面积,X1+1);
前次最低价:=REF(本次最低价,X1+1);
Y1:=IF((绿柱面积<0 AND ABS(绿柱面积)<ABS(前次绿柱面积) AND 本次最低价<前次最低价 ),1,0);
RS1:= MACD<0 AND REF(MACD,1)<0 AND C<前次最低价
AND ABS(绿柱面积)<ABS(前次绿柱面积) AND ABS(MACD)<ABS(REF(MACD,1));
底背驰:= IF (CROSS(DIF,DEA),REF(Y1,1),0);
DRAWTEXT(底背驰,DEA*0.8,'积底背'),COLORFF80FF;
X2:=IF (MACD>0,BARSLAST(CROSS(DEA,DIF)),0);
前次红柱面积:=REF(红柱面积,X2+1);
前次最高价:=REF(本次最高价,X2+1);
Y2:=IF((红柱面积>0 AND 红柱面积<前次红柱面积 AND 本次最高价>前次最高价 ),1,0);
RS2:= MACD>0 AND REF(MACD,1)>0 AND C>前次最高价 AND ABS(红柱面积)<ABS(前次红柱面积) AND ABS(MACD)<ABS(REF(MACD,1));
顶背驰:= IF (CROSS(DEA,DIF),REF(Y2,1),0);
DRAWTEXT(顶背驰,DEA*0.8,'积顶背'),COLORCYAN;
周K:="KDJ.K#WEEK";周D:="KDJ.D#WEEK";
DRAWTEXT(CROSS(周K,周D),0,'KDJ周'),COLORYELLOW;
DRAWTEXT_FIX(1,0.02,0.06,0,'周线金叉出现在周一,周五收盘后才能确定信号是否成立'),COLORLIGRAY;



未来函数检测结果如下:
该公式包含未来函数:#MONTH
该公式包含未来函数:#WEEK
解密、定制、编写股票指标请联系QQ或微信同号:88652583
相关股票指标公式

{MACD时间} {3,7,3}{7,21,2}{12,52,9} N赋值:3
M赋值:9
M1:=3
输出DIF:收盘价的N日指数移动平均-收盘价的M日指数移动平均,NODRAW
输出DEA:DIF的M1日指数移动平均,NODRAW
MACD:(DIF-DEA)*2,COLORSTICK
如果上次MACD<0距今天数返回上次MACD<0距今天数否则返回0
如果上次MACD>0距今天数返回上次MACD>0距今天数否则返回0
{MACD周值} 周DIF赋值:"MACD.DIF#WEEK"
周DEA赋值:"MACD.DEA#WEEK"
周MACD:=(周DIF-周DEA)*2
如果周MACD>0返回上次周MACD上穿0距今天数否则返回DRAWNULL
如果周MACD<0返回上次0上穿周MACD距今天数否则返回DRAWNULL
{MACD月值} 月DIF赋值:"MACD.DIF#MONTH"
月DEA赋值:"MACD.DEA#MONTH"
月MACD:=(月DIF-月DEA)*2
如果月MACD>0返回上次月MACD上穿0距今天数否则返回DRAWNULL
如果月MACD<0返回上次0上穿月MACD距今天数否则返回DRAWNULL
当满足条件MACD>1日前的MACD AND MACD>0时,在0和MACD之间画柱状线
当满足条件MACD<1日前的MACD AND MACD>0时,在0和MACD之间画柱状线
当满足条件MACD>1日前的MACD AND MACD<0时,在0和MACD之间画柱状线
当满足条件MACD<1日前的MACD AND MACD<0时,在0和MACD之间画柱状线
ZM赋值:上次周红=1距今天数日前的MACD
当满足条件MACD>ZM AND ZM>0时,在ZM和ZM之间画柱状线
DRAWBAND(DEA,RGB(250,250,0),DEA,RGB(0,0,0))
如果D>DEA返回DIF否则返回DRAWNULL
如果周红<1返回DEA否则返回DRAWNULL
当满足条件周红=1时,在0和'周'位置书写文字
低位金叉赋值:DIF上穿DEA AND DIF<-0.1
JCCOUNT赋值:统计上次DEA>=0距今天数日满足DIF上穿DEA的天数
二次金叉赋值:DIF上穿DEA AND DEA<0 AND 统计21日满足JC=2的天数=1
当满足条件二次金叉时,在DEA*0.2和'二金'位置书写文字
三次金叉赋值:DIF上穿DEA AND DEA<0 AND 统计60日满足JC=3的天数=1
当满足条件三次金叉时,在DEA*0.2和'三金'位置书写文字
四次金叉赋值:DIF上穿DEA AND DEA<0 AND 统计90日满足JC=4的天数=1
当满足条件四次金叉时,在DEA*0.2和'四金'位置书写文字
五次金叉赋值:DIF上穿DEA AND DEA<0 AND 统计120日满足JC=5的天数=1
当满足条件五次金叉时,在DEA*0.2和'五金'位置书写文字
六次金叉赋值:DIF上穿DEA AND DEA<0 AND 统计150日满足JC=6的天数=1
当满足条件六次金叉时,在DEA*0.2和'六金'位置书写文字
{MACD日线底背离} A1:=上次1日前的DIF上穿DEA距今天数
底背离赋值:A1+1日前的收盘价>收盘价 AND DIF>A1+1日前的DIF AND DIF上穿DEA
当满足条件底背离时,在DIF*0.5和'底背'位置书写文字
输出{日底背画线:DRAWLINE(A1=0,DEA,底背离,DEA,0),画红色,DOTLINE
} {MACD日线顶背离} A2:=上次1日前的DEA上穿DIF距今天数
顶背离赋值:A2+1日前的收盘价<收盘价 AND A2+1日前的DIF>DIF AND DEA上穿DIF
当满足条件顶背离时,在DIF*1.12和'顶背'位置书写文字
输出{日顶背画线:DRAWLINE(A2=0,DEA,顶背离,DEA,0),画绿色,DOTLINE
} {MACD积背离} JC:= DEA-DIF
绿柱面积赋值:IF(MACD<0,上次JC<0距今天数的MACD日累和,0)
红柱面积赋值:IF(MACD>0,上次JC>0距今天数的MACD日累和,0)
本次最低价赋值:上次JC<0距今天数日内L最低值
本次最高价赋值:上次JC>0距今天数日内H最高值
X1赋值:IF (MACD<0,上次DIF上穿DEA距今天数,0)
前次绿柱面积赋值:X1+1日前的绿柱面积
前次最低价赋值:X1+1日前的本次最低价
Y1赋值:IF((绿柱面积<0 AND 绿柱面积的绝对值<前次绿柱面积的绝对值 AND 本次最低价<前次最低价 ),1,0)
RS1赋值: MACD<0 AND 1日前的MACD<0 AND C<前次最低价 AND 绿柱面积的绝对值<前次绿柱面积的绝对值 AND ABS(MACD) 底背驰赋值: IF (DIF上穿DEA,1日前的Y1,0)
当满足条件底背驰时,在DEA*0.8和'积底背'位置书写文字
X2赋值:IF (MACD>0,上次DEA上穿DIF距今天数,0)
前次红柱面积赋值:X2+1日前的红柱面积
前次最高价赋值:X2+1日前的本次最高价
Y2赋值:IF((红柱面积>0 AND 红柱面积<前次红柱面积 AND 本次最高价>前次最高价 ),1,0)
RS2赋值: MACD>0 AND 1日前的MACD>0 AND C>前次最高价 AND 红柱面积的绝对值<前次红柱面积的绝对值 AND ABS(MACD) 顶背驰赋值: IF (DEA上穿DIF,1日前的Y2,0)
当满足条件顶背驰时,在DEA*0.8和'积顶背'位置书写文字
周K赋值:"KDJ.K#WEEK"
周D赋值:"KDJ.D#WEEK"
当满足条件周K上穿周D时,在0和'KDJ周'位置书写文字
DRAWTEXT_FIX(1,0.02,0.06,0,'周线金叉出现在周一,周五收盘后才能确定信号是否成立'),画淡灰色

指标安装下载帮助  |   联系我们  |  股朋指标网  |  指标网   |  指标公式  |   加入收藏   |  设为主页

@2005-2023 粤ICP备2023063687号-2 股朋指标网别名指标网均来源互联网收集整理,如不慎侵犯了你的权益,请联系我们告知,我们将做删除处理
免责声明:股朋指标网所有指标公式及文章由网络收集,不保障实时性和真实性, 仅供学习研究并不构成投资建议,请勿以此为依据进行股票交易,由此引起的投资亏损与本站无关。
QQ:88652583 微信 88652583
sitemap站点地图