通达信〖多周期MACD实战算法〗月周日信号嵌套策略指标源码


〖多周期MACD实战算法〗副图,月周日信号嵌套策略指标
今天分享一个16年前的技术分析,多周期MACD指标在技术分析中占据重要地位,能从月周日期等多个时间维度捕捉市场趋势。本文将详解如何通过自定义公式实现多周期MACD计算与展示,并结合实战应用优化。  
关键信号识别  
低位金叉信号:当DIFF上穿DEA且DIFF小于负0.1时,视为低位金叉。  
二次金叉信号:在DEA小于零时,DIFF第二次上穿DEA,形成二次金叉。  
底背离信号:价格创新低而DIFF未创新低,且DIFF上穿DEA,确认底背离。  
通过STICKLINE和DRAWLINE函数,将关键信号图形化展示,便于快速识别MACD交易信号。  
面积背离与趋势确认  
通过计算绿柱面积和红柱面积,分析面积背离,进一步确认趋势强度与背离情况。
具体公式如下:
 



DRAWGBK(OPEN>0,RGB(33,47,58),RGB(33,47,58),0,10,0);

月DIF:EMA(CLOSE,223)-EMA(CLOSE,479);

月DEA:EMA(月DIF,135);

DRAWBAND(月DEA,RGB(0,30,0),月DIF,RGB(50,0,0));

周DIF:=EMA(CLOSE,12*5)-EMA(CLOSE,26*5),COLORLIBLUE,DOTLINE;

周DEA:=EMA(周DIF,9*5),COLORLIMAGENTA,DOTLINE;

DRAWBAND(周DEA,RGB(0,80,0),周DIF,RGB(140,10,70));

DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);

DEA:EMA(DIFF,9);

MACD:2*(DIFF-DEA),COLORSTICK,LINETHICK2;

低位金叉:=CROSS(DIFF,DEA)&&DIFF<-0.1;

STICKLINE(低位金叉,0,0.08,3,0),COLORWHITE;

JCCOUNT:=COUNT(CROSS(DIFF,DEA),BARSLAST(DEA>=0));

二次金叉:=CROSS(DIFF,DEA)&&DEA<0&&COUNT(JCCOUNT=2,21)=1;

STICKLINE(二次金叉,0,0.06,3,0),COLORBLUE;

A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));

底背离:=REF(CLOSE,A1+1)>CLOSE&&DIFF>REF(DIFF,A1+1)&&CROSS(DIFF,DEA);

STICKLINE(底背离,0,0.03,3,0),COLORYELLOW;

底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORMAGENTA,LINETHICK2;

A2:=BARSLAST(REF(CROSS(DEA,DIFF),1));

顶背离:=REF(CLOSE,A2+1)<CLOSE&&REF(DIFF,A2+1)>DIFF&&CROSS(DEA,DIFF);

顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,LINETHICK2;

三全项:=低位金叉&&二次金叉&&底背离;

DRAWTEXT(底背离,(HHV(DIFF,100)+LLV(DIFF,100))/2,'底背离'),COLORFF00FF;

DRAWICON(三全项,LLV(DIFF,100),41);

DRAWTEXT(三全项,LLV(DIFF,100),'三全项'),COLORYELLOW;

JC:=DEA-DIFF;

绿柱面积:=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(DIFF,DEA)),0);

前次绿柱面积:=REF(绿柱面积,X1+1);

前次最低价:=REF(本次最低价,X1+1);

Y1:=IF((绿柱面积<0&&ABS(绿柱面积)<ABS(前次绿柱面积)&&本次最低价<前次最低价),1,0);

RS1:=MACD<0&&REF(MACD,1)<0&&C<前次最低价&&ABS(绿柱面积)<ABS(前次绿柱面积)&&ABS(MACD)<ABS(REF(MACD,1));

底背驰:=IF(CROSS(DIFF,DEA),REF(Y1,1),0);

DRAWICON(底背驰,HHV(DIFF,100),41),COLORYELLOW;

DRAWTEXT(底背驰,HHV(DIFF,100),'积底背'),COLOR00FFFF;

T:=BARSLAST(CROSS(DIFF,DEA)&&DIFF<0);

T1:=SUMBARS(T=0,2);

T2:=SUMBARS(T=0,3);

M:=BARSLAST(CROSS(0,MACD));

M1:=SUMBARS(M=0,2);

M2:=SUMBARS(M=0,3);

D1:=REF(DIFF,BARSLAST(DIFF=LLV(DIFF,M+1)));

D2:=REF(D1,T1-1);

D3:=REF(D2,T1-1);

LT:=BARSLAST(L=LLV(L,M+1));

L1:=REF(L,LT);

L2:=REF(L1,T1-1);

L3:=REF(L2,T1-1);

XG:=T=0&&L1<L2&&L2<L3&&D1>D2&&D2>D3;

DRAWICON(XG,LLV(MACD,100)*0.8,1);

VAR1:=BACKSET(XG,T2+REF(LT,T2-1));

VAR2:=BACKSET(XG,T1+REF(LT,T1-1));

VAR3:=BACKSET(XG,T+REF(LT,T)+1);

DRAWLINE(CROSS(VAR1=1,0.5),DIFF,CROSS(VAR2=1,0.5)&&VAR1=1,DIFF,0),COLORBLUE,LINETHICK2;

DRAWLINE(CROSS(VAR2=1,0.5)&&VAR1=1,DIFF,VAR1=1&&VAR2=1&&CROSS(VAR3=1,0.5),DIFF,0),COLORMAGENTA,LINETHICK2;

MACD,COLORSTICK,LINETHICK2;

DRAWICON(CROSS(月DIF,月DEA),月DEA,34);

DRAWICON(CROSS(月DEA,月DIF),月DIF,35);

DRAWTEXT(CROSS(月DIF,月DEA),月DEA,'月'),COLORWHITE;

DRAWTEXT(CROSS(月DEA,月DIF),月DIF,'月'),COLORWHITE;

DRAWICON(CROSS(周DIF,周DEA),周DEA,38);

DRAWICON(CROSS(周DEA,周DIF),周DIF,39);

DRAWTEXT(CROSS(周DIF,周DEA),周DEA,'周'),COLORWHITE;

DRAWTEXT(CROSS(周DEA,周DIF),周DIF,'周'),COLORWHITE;






来函数检测结果如下
该公式包含未来函数:BACKSET

定制、编写公式指标请联系QQ或微信同号:88652583
置顶指标

相关指标公式

填充背景
输出月DIF:收盘价的223日指数移动平均-收盘价的479日指数移动平均
输出月DEA:月DIF的135日指数移动平均
画带状线
周DIF赋值:收盘价的12*5日指数移动平均-收盘价的26*5日指数移动平均,画淡蓝色,DOTLINE
周DEA赋值:周DIF的9*5日指数移动平均,画淡洋红色,DOTLINE
画带状线
输出DIFF:收盘价的12日指数移动平均-收盘价的26日指数移动平均
输出DEA:DIFF的9日指数移动平均
输出MACD:2*(DIFF-DEA),COLORSTICK,线宽为2
低位金叉赋值:DIFF上穿DEA并且DIFF<-0.1
当满足条件低位金叉时,在0和0.08位置之间画柱状线,宽度为3,0不为0则画空心柱.,画白色
JCCOUNT赋值:统计上次DEA>=0距今天数日中满足DIFF上穿DEA的天数
二次金叉赋值:DIFF上穿DEA并且DEA<0并且统计21日中满足JCCOUNT=2的天数=1
当满足条件二次金叉时,在0和0.06位置之间画柱状线,宽度为3,0不为0则画空心柱.,画蓝色
A1赋值:上次1日前的DIFF上穿DEA距今天数
底背离赋值:A1+1日前的收盘价>收盘价并且DIFF>A1+1日前的DIFF并且DIFF上穿DEA
当满足条件底背离时,在0和0.03位置之间画柱状线,宽度为3,0不为0则画空心柱.,画黄色
输出底背:当满足条件A1=0时,在DEA位置画直线起点,当满足条件底背离时,在DEA位置画直线终点,0表示是否延长.,画洋红色,线宽为2
A2赋值:上次1日前的DEA上穿DIFF距今天数
顶背离赋值:A2+1日前的收盘价<收盘价并且A2+1日前的DIFF>DIFF并且DEA上穿DIFF
输出顶背:当满足条件A2=0时,在DEA位置画直线起点,当满足条件顶背离时,在DEA位置画直线终点,0表示是否延长.,画绿色,线宽为2
三全项赋值:低位金叉并且二次金叉并且底背离
当满足条件底背离时,在(100日内DIFF的最高值+100日内DIFF的最低值)/2位置书写文字,COLORFF00FF
当满足条件三全项时,在100日内DIFF的最低值位置画41号图标
当满足条件三全项时,在100日内DIFF的最低值位置书写文字,画黄色
JC赋值:DEA-DIFF
绿柱面积赋值:如果MACD<0,返回MACD的上次JC<0距今天数日累和,否则返回0
红柱面积赋值:如果MACD>0,返回MACD的上次JC>0距今天数日累和,否则返回0
本次最低价赋值:上次JC<0距今天数日内最低价的最低值
本次最高价赋值:上次JC>0距今天数日内最高价的最高值
X1赋值:如果MACD<0,返回上次DIFF上穿DEA距今天数,否则返回0
前次绿柱面积赋值:X1+1日前的绿柱面积
前次最低价赋值:X1+1日前的本次最低价
Y1赋值:如果(绿柱面积<0并且绿柱面积的绝对值<前次绿柱面积的绝对值并且本次最低价<前次最低价),返回1,否则返回0
RS1赋值:MACD<0并且1日前的MACD<0并且收盘价<前次最低价并且绿柱面积的绝对值<前次绿柱面积的绝对值并且MACD的绝对值<1日前的MACD的绝对值
底背驰赋值:如果DIFF上穿DEA,返回1日前的Y1,否则返回0
当满足条件底背驰时,在100日内DIFF的最高值位置画41号图标,画黄色
当满足条件底背驰时,在100日内DIFF的最高值位置书写文字,COLOR00FFFF
T赋值:上次DIFF上穿DEA并且DIFF<0距今天数
T1赋值:T=0累加至2的天数
T2赋值:T=0累加至3的天数
M赋值:上次0上穿MACD距今天数
M1赋值:M=0累加至2的天数
M2赋值:M=0累加至3的天数
D1赋值:上次DIFF=M+1日内DIFF的最低值距今天数日前的DIFF
D2赋值:T1-1日前的D1
D3赋值:T1-1日前的D2
LT赋值:上次最低价=M+1日内最低价的最低值距今天数
L1赋值:LT日前的最低价
L2赋值:T1-1日前的L1
L3赋值:T1-1日前的L2
XG赋值:T=0并且L1D2并且D2>D3
当满足条件XG时,在100日内MACD的最低值*0.8位置画1号图标
VAR1赋值:若XG则将最近T2+T2-1日前的LT周期置为1
VAR2赋值:若XG则将最近T1+T1-1日前的LT周期置为1
VAR3赋值:若XG则将最近T+T日前的LT+1周期置为1
当满足条件VAR1=1上穿0.5时,在DIFF位置画直线起点,当满足条件VAR2=1上穿0.5并且VAR1=1时,在DIFF位置画直线终点,0表示是否延长.,画蓝色,线宽为2
当满足条件VAR2=1上穿0.5并且VAR1=1时,在DIFF位置画直线起点,当满足条件VAR1=1并且VAR2=1并且VAR3=1上穿0.5时,在DIFF位置画直线终点,0表示是否延长.,画洋红色,线宽为2
MACD,COLORSTICK,线宽为2
当满足条件月DIF上穿月DEA时,在月DEA位置画34号图标
当满足条件月DEA上穿月DIF时,在月DIF位置画35号图标
当满足条件月DIF上穿月DEA时,在月DEA位置书写文字,画白色
当满足条件月DEA上穿月DIF时,在月DIF位置书写文字,画白色
当满足条件周DIF上穿周DEA时,在周DEA位置画38号图标
当满足条件周DEA上穿周DIF时,在周DIF位置画39号图标
当满足条件周DIF上穿周DEA时,在周DEA位置书写文字,画白色
当满足条件周DEA上穿周DIF时,在周DIF位置书写文字,画白色

指标安装下载帮助  |   联系我们  |  乐淘公式网  |  公式网   |  指标公式  |  加入收藏   

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