MACD终极优化带九转信号指标 副图 通达信 贴图无加密
N:=12;
M:=26;
{DRAWGBK(O>C,RGB(40,40,40),RGB(0,0,40),0,'01',0); {背景不要可删除}
DIF:100*(EMA(CLOSE,N)-EMA(CLOSE,M)),COLORWHITE,LINETHICK1;
DEA:EMA(DIF,9),COLORYELLOW,LINETHICK1;
MACD:(DIF-DEA)*2,COLORSTICK;
STICKLINE(MACD>REF(MACD,1)AND MACD>0,0,MACD,0.2,0),COLORRED;
STICKLINE(MACD<REF(MACD,1)AND MACD>0,0,MACD,0.2,0),COLORYELLOW;
STICKLINE(MACD>REF(MACD,1)AND MACD<0,0,MACD,0.2,0),COLORBLUE;
STICKLINE(MACD<REF(MACD,1)AND MACD<0,0,MACD,0.2,0),COLORGREEN;
FH1:=REF(MACD,1)<REF(MACD,2) AND REF(MACD,2)<REF(MACD,3) AND REF(MACD,3)<REF(MACD,4);
FH2:=MACD>=0 AND COUNT(MACD>REF(MACD,1),1)=1;
FH3:=FH1 AND FH2 AND EMA(C,13)>REF(EMA(C,13),1);
FH4:=FH1 AND FH2 AND ABS((DIF-DEA)/C)<0.018;
FH5:=FH1 AND FH2 AND MACD<0.10;
二次翻红:(FH3 OR FH4 OR FH5),COLORRED,NODRAW;
低买:CROSS(DIF,DEA) AND DIF<0,COLORFF00FF,NODRAW;
加油:CROSS(DIF,DEA) AND DIF>0,COLORYELLOW,NODRAW;
DRAWICON(二次翻红,-0.05,1);
DRAWTEXT(二次翻红,-0.15,'↖翻红'),COLORRED;
DRAWTEXT(CROSS(DIF,DEA) AND DIF<0,DEA-0.02,'↖低买'),COLORFF00FF;
DRAWTEXT(CROSS(DIF,DEA) AND DIF>0,DEA-0.05,'↖加油'),COLORYELLOW;
XG:二次翻红 OR 低买 OR 加油,NODRAW;
YLZC:=IF(CLOSE=INDEXC,(INDEXC+INDEXH+INDEXL+INDEXO)/4,AMOUNT/(VOL+0.01)/100);
A1:=C>REF(C,4);
NT:=BARSLASTCOUNT(A1);
TJ11:=NT=9;
TJ13:=ISLASTBAR AND BETWEEN(NT,5,8);
AY:=(BACKSET(TJ11>0,9) OR BACKSET(TJ13>0,NT))*NT;
DRAWTEXT(AY>0,MACD*1.02,VAR2STR(AY,0)),COLORLIRED;
DRAWTEXT(NT=9,MACD*1.02,'9'),COLORGREEN;
B1:=C<REF(C,4);
NT0:=BARSLASTCOUNT(B1);
TJ21:=NT0=9 ;
TJ23:=ISLASTBAR AND BETWEEN(NT0,5,8);
AY1:=(BACKSET(TJ21>0,9) OR BACKSET(TJ23>0,NT0))*NT0;
DRAWTEXT(AY1>0,MACD*0.98,VAR2STR(AY1,0)),COLORGREEN;
DRAWTEXT(NT0=9,MACD*0.98,'9'),COLORRED;
DRAWICON(CROSS(DIF,DEA),DEA,1);
DRAWICON(CROSS(DEA,DIF),DEA,2);
死叉:=CROSS(DEA,DIF);
N1:=BARSLAST(死叉),NODRAW;{最近一次死叉的位置}
N2:=REF(BARSLAST(死叉),N1+1),NODRAW;{倒数第二次死叉与倒数第一次死叉的区间}
N3:=REF(BARSLAST(死叉),N2+N1+2),NODRAW;{倒数第三次死叉与倒数第二次死叉的区间}
CL1:=LLV(C,N1+1),NODRAW;{最近一次死叉后,最低收盘价}
DIFL1:=LLV(DIF,N1+1),NODRAW;{股票指标网}
CL2:=REF(CL1,N1+1),NODRAW;{倒数第二次死叉与倒数第一次死叉之间的最低收盘价}
DIFL2:=REF(DIFL1,N1+1),NODRAW;
CL3:=REF(CL2,N1+1),NODRAW;{倒数第三次死叉与倒数第二次死叉之间的最低收盘价}
DIFL3:=REF(DIFL2,N1+1),NODRAW;
PDIFL2:=IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(-DIFL2))-1);
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2));
PDIFL3:=IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(-DIFL3))-1);
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3));
MDIFB2:=INTPART(DIF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIF/POW(10,PDIFL3));
直接底背离:=(CL1<CL2 ) AND (MDIFB2>MDIFL2) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB2<=REF(MDIFB2,1);
隔峰底背离:=(CL1<CL3 AND CL3<CL2 ) AND (MDIFB3>MDIFL3) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB3<=REF(MDIFB3,1);
底部钝化:直接底背离 OR 隔峰底背离,NODRAW;
底背离:((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)),NODRAW;
{DRAWTEXT(TFILTER(B,(REF(DIF,1)>REF(DIF,2) AND DIF<REF(DIF,1)),1),DIFL2,'钝化开始'),COLORYELLOW;}
STICKLINE(底部钝化,DIF,DEA,1,0),COLORRED;
DRAWTEXT(TFILTER(底背离,C<REF(CL1,1),1),DIF*0.98,'底部结构形成'),COLORMAGENTA;
金叉:=CROSS(DIF,DEA);
M1:=BARSLAST(金叉),NODRAW;{最近一次金叉的位置}
M2:=REF(BARSLAST(金叉),M1+1),NODRAW;{倒数第二次金叉与倒数第一次金叉的区间}
M3:=REF(BARSLAST(金叉),M2+M1+2),NODRAW;{倒数第三次金叉与倒数第二次金叉的区间}
CH1:=HHV(C,M1+1),NODRAW;{最近一次金叉后,最高收盘价}
DIFH1:=HHV(DIF,M1+1),NODRAW;
CH2:=REF(CH1,M1+1),NODRAW;{倒数第二次金叉与倒数第一次金叉之间的最高收盘价}
DIFH2:=REF(DIFH1,M1+1),NODRAW;
CH3:=REF(CH2,M1+1),NODRAW;{倒数第三次金叉与倒数第二次金叉之间的最高收盘价}
DIFH3:=REF(DIFH2,M1+1),NODRAW;
PDIFH2:=IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(-DIFH2))-1);
MDIFH2:=INTPART(DIFH2/POW(10,PDIFH2));
PDIFH3:=IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(-DIFH3))-1);
MDIFH3:=INTPART(DIFH3/POW(10,PDIFH3));
MDIFT2:=INTPART(DIF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIF/POW(10,PDIFH3));
直接顶背离:=(CH1>CH2 ) AND (MDIFT2<MDIFH2) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT2>=REF(MDIFT2,1);
隔峰顶背离:=(CH1>CH3 AND CH3>CH2 ) AND (MDIFT3<MDIFH3) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT3>=REF(MDIFT3,1);
顶部钝化:直接顶背离 OR 隔峰顶背离,NODRAW;
顶背离:((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)),NODRAW;
{DRAWTEXT(TFILTER(T,(REF(DIF,1)<REF(DIF,2) AND DIF>REF(DIF,1)),1),DIFH2,'钝化开始'),COLORYELLOW;}
STICKLINE(顶部钝化,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(TFILTER(顶背离,C>REF(CH1,1),1),DIF*1.02,'顶部结构形成'),COLORMAGENTA;
DRAWICON(CROSS(DIF,DEA),DEA,36);
DRAWICON(CROSS(DEA,DIF),DEA,37);
MACDDIF:=IF(ABS(MACD)>ABS(DIF),MACD,DIF);
DRAWICON(REF(DIF,1)>REF(DIF,2) AND DIF<REF(DIF,1) AND DIF>0 AND DIF>DEA,MACDDIF*1.1,39),COLORGREEN;
DRAWICON(REF(DIF,1)<REF(DIF,2) AND DIF>REF(DIF,1) AND DIF<0 AND DIF<DEA,MACDDIF*1.1,38),COLORRED;
{
低9选股:
B1:=C<REF(C,4);
NT0:=BARSLASTCOUNT(B1);
低九:NT0=9;
MACD买点选股:
DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26));
DEA:=EMA(DIF,9);
买点:REF(DIF,1)<REF(DIF,2) AND DIF>REF(DIF,1) AND DIF<0 AND DIF<DEA;
MACD低买选股:
DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26));
DEA:=EMA(DIF,9);
低买:CROSS(DIF,DEA) AND DIF<0;
MACD加油选股:
DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26));
DEA:=EMA(DIF,9);
加油:CROSS(DIF,DEA) AND DIF>0;
MACD翻红选股:
DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26));
DEA:=EMA(DIF,9);
MACD:=(DIF-DEA)*2;
FH1:=REF(MACD,1)<REF(MACD,2) AND REF(MACD,2)<REF(MACD,3) AND REF(MACD,3)<REF(MACD,4);
FH2:=MACD>=0 AND COUNT(MACD>REF(MACD,1),1)=1;
FH3:=FH1 AND FH2 AND EMA(C,13)>REF(EMA(C,13),1);
FH4:=FH1 AND FH2 AND ABS((DIF-DEA)/C)<0.018;
FH5:=FH1 AND FH2 AND MACD<0.10;
翻红:(FH3 OR FH4 OR FH5);
};
未来函数检测结果如下:
该公式包含未来函数:BACKSET
解密、编写股票、期货策略请联系QQ或微信同号:88652583
相关股票指标公式
原理解析:
N赋值:12
M赋值:26
{ 填充背景(O>C,RGB(40,40,40),RGB(0,0,40),0,'01',0)
输出{背景不要可删除}
DIF:100*(收盘价的N日指数移动平均-收盘价的M日指数移动平均),画白色,LINETHICK1
输出DEA:DIF的9日指数移动平均,画黄色,LINETHICK1
MACD:(DIF-DEA)*2,COLORSTICK
STICKLINE(MACD>1日前的MACDAND MACD>0,0,MACD,0.2,0),画红色
STICKLINE(MACD<1日前的MACDAND MACD>0,0,MACD,0.2,0),画黄色
STICKLINE(MACD>1日前的MACDAND MACD<0,0,MACD,0.2,0), 画蓝色
STICKLINE(MACD<1日前的MACDAND MACD<0,0,MACD,0.2,0),COLORGREEN
FH1赋值:1日前的MACD<2日前的MACD AND 2日前的MACD<3日前的MACD AND 3日前的MACD<4日前的MACD
FH2赋值:MACD>=0 AND COUNT(MACD>1日前的MACD,1)=1
FH3赋值:FH1 AND FH2 AND C的13日指数移动平均>1日前的C的13日指数移动平均
FH4赋值:FH1 AND FH2 AND (DIF-DEA的绝对值/C)<0.018
FH5赋值:FH1 AND FH2 AND MACD<0.10
输出二次翻红:(FH3 OR FH4 OR FH5),画红色,NODRAW
输出低买:DIF上穿DEA AND DIF<0,COLORFF00FF,NODRAW
输出加油:DIF上穿DEA AND DIF>0,画黄色,NODRAW
当满足条件二次翻红时,在-0.05和1之间画图标
当满足条件二次翻红时,在-0.15和'↖翻红'位置书写文字
DRAWTEXT(DIF上穿DEA AND DIF<0,DEA-0.02,'↖低买'),COLORFF00FF
DRAWTEXT(DIF上穿DEA AND DIF>0,DEA-0.05,'↖加油'),画黄色
输出XG:二次翻红 OR 低买 OR 加油,NODRAW
YLZC赋值:IF(收盘价=INDEXC,(INDEXC+INDEXH+INDEXL+INDEXO)/4,AMOUNT/(成交量+0.01)/100)
A1赋值:C>4日前的C
NT:=BARSLASTCOUNT(A1)
TJ11赋值:NT=9
TJ13赋值:ISLASTBAR AND BETWEEN(NT,5,8)
AY赋值:(BACKSET(TJ11>0,9) OR BACKSET(TJ13>0,NT))*NT
DRAWTEXT(AY>0,MACD*1.02,VAR2STR(AY,0)),COLORLIRED
当满足条件NT=9时,在MACD*1.02和'9'位置书写文字
B1赋值:C<4日前的C
NT0:=BARSLASTCOUNT(B1)
TJ21赋值:NT0=9
TJ23赋值:ISLASTBAR AND BETWEEN(NT0,5,8)
AY1:=(BACKSET(TJ21>0,9) OR BACKSET(TJ23>0,NT0))*NT0
DRAWTEXT(AY1>0,MACD*0.98,VAR2STR(AY1,0)),COLORGREEN
当满足条件NT0=9时,在MACD*0.98和'9'位置书写文字
DRAWICON(DIF上穿DEA,DEA,1)
DRAWICON(DEA上穿DIF,DEA,2)
死叉赋值:DEA上穿DIF
N1:=上次死叉距今天数,NODRAW
{最近一次死叉的位置}
N2:=REF(上次死叉距今天数,N1+1),NODRAW
{倒数第二次死叉与倒数第一次死叉的区间}
N3:=REF(上次死叉距今天数,N2+N1+2),NODRAW
{倒数第三次死叉与倒数第二次死叉的区间}
CL1:=N1+1日内C最低值,NODRAW
{最近一次死叉后,最低收盘价}
DIFL1:=N1+1日内DIF最低值,NODRAW
{股票指标网}
CL2赋值:N1+1日前的CL1,NODRAW
{倒数第二次死叉与倒数第一次死叉之间的最低收盘价}
DIFL2:=N1+1日前的DIFL1,NODRAW
CL3赋值:N1+1日前的CL2,NODRAW
{倒数第三次死叉与倒数第二次死叉之间的最低收盘价}
DIFL3:=N1+1日前的DIFL2,NODRAW
PDIFL2赋值:IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(-DIFL2))-1)
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2))
PDIFL3赋值:IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(-DIFL3))-1)
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3))
MDIFB2:=INTPART(DIF/POW(10,PDIFL2))
MDIFB3:=INTPART(DIF/POW(10,PDIFL3))
直接底背离赋值:(CL1MDIFL2) AND (MACD<0 AND 1日前的MACD<0) AND MDIFB2<=1日前的MDIFB2
隔峰底背离赋值:(CL1MDIFL3) AND (MACD<0 AND 1日前的MACD<0) AND MDIFB3<=1日前的MDIFB3
输出底部钝化:直接底背离 OR 隔峰底背离,NODRAW
输出底背离:((MDIFB2>1日前的MDIFB2)*1日前的直接底背离) OR ((MDIFB3>1日前的MDIFB3)*1日前的隔峰底背离),NODRAW
{DRAWTEXT(TFILTER(B,(1日前的DIF>2日前的DIF AND DIF<1日前的DIF),1),DIFL2,'钝化开始'),画黄色
当满足条件底部钝化时,在DIF和DEA之间画柱状线
DRAWTEXT(TFILTER(底背离,C<1日前的CL1,1),DIF*0.98,'底部结构形成'),COLORMAGENTA
金叉赋值:DIF上穿DEA
M1:=上次金叉距今天数,NODRAW
{最近一次金叉的位置}
M2:=REF(上次金叉距今天数,M1+1),NODRAW
{倒数第二次金叉与倒数第一次金叉的区间}
M3:=REF(上次金叉距今天数,M2+M1+2),NODRAW
{倒数第三次金叉与倒数第二次金叉的区间}
CH1:=M1+1日内C最高值,NODRAW
{最近一次金叉后,最高收盘价}
DIFH1赋值:M1+1日内DIF最高值,NODRAW
CH2赋值:M1+1日前的CH1,NODRAW
{倒数第二次金叉与倒数第一次金叉之间的最高收盘价}
DIFH2赋值:M1+1日前的DIFH1,NODRAW
CH3赋值:M1+1日前的CH2,NODRAW
{倒数第三次金叉与倒数第二次金叉之间的最高收盘价}
DIFH3赋值:M1+1日前的DIFH2,NODRAW
PDIFH2赋值:IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(-DIFH2))-1)
MDIFH2赋值:INTPART(DIFH2/POW(10,PDIFH2))
PDIFH3赋值:IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(-DIFH3))-1)
MDIFH3赋值:INTPART(DIFH3/POW(10,PDIFH3))
MDIFT2:=INTPART(DIF/POW(10,PDIFH2))
MDIFT3:=INTPART(DIF/POW(10,PDIFH3))
直接顶背离赋值:(CH1>CH2 ) AND (MDIFT20 AND 1日前的MACD>0) AND MDIFT2>=1日前的MDIFT2
隔峰顶背离赋值:(CH1>CH3 AND CH3>CH2 ) AND (MDIFT30 AND 1日前的MACD>0) AND MDIFT3>=1日前的MDIFT3
输出顶部钝化:直接顶背离 OR 隔峰顶背离,NODRAW
输出顶背离:((MDIFT2<1日前的MDIFT2)*1日前的直接顶背离) OR ((MDIFT3<1日前的MDIFT3)*1日前的隔峰顶背离),NODRAW
{DRAWTEXT(TFILTER(T,(1日前的DIF<2日前的DIF AND DIF>1日前的DIF),1),DIFH2,'钝化开始'),画黄色
当满足条件顶部钝化时,在DIF和DEA之间画柱状线
DRAWTEXT(TFILTER(顶背离,C>1日前的CH1,1),DIF*1.02,'顶部结构形成'),COLORMAGENTA
DRAWICON(DIF上穿DEA,DEA,36)
DRAWICON(DEA上穿DIF,DEA,37)
MACDDIF:=IF(MACD的绝对值>ABS(DIF),MACD,DIF)
DRAWICON(1日前的DIF>2日前的DIF AND DIF<1日前的DIF AND DIF>0 AND DIF>DEA,MACDDIF*1.1,39),COLORGREEN
DRAWICON(1日前的DIF<2日前的DIF AND DIF>1日前的DIF AND DIF<0 AND DIF
{
低9选股:
B1赋值:C<4日前的C
NT0:=BARSLASTCOUNT(B1)
输出低九:NT0=9
MACD买点选股:
DIF:=100*(收盘价的12日指数移动平均-收盘价的26日指数移动平均)
DEA赋值:DIF的9日指数移动平均
输出买点:1日前的DIF<2日前的DIF AND DIF>1日前的DIF AND DIF<0 AND DIF
MACD低买选股:
DIF:=100*(收盘价的12日指数移动平均-收盘价的26日指数移动平均)
DEA赋值:DIF的9日指数移动平均
输出低买:DIF上穿DEA AND DIF<0
MACD加油选股:
DIF:=100*(收盘价的12日指数移动平均-收盘价的26日指数移动平均)
DEA赋值:DIF的9日指数移动平均
输出加油:DIF上穿DEA AND DIF>0
MACD翻红选股:
DIF:=100*(收盘价的12日指数移动平均-收盘价的26日指数移动平均)
DEA赋值:DIF的9日指数移动平均
MACD:=(DIF-DEA)*2
FH1赋值:1日前的MACD<2日前的MACD AND 2日前的MACD<3日前的MACD AND 3日前的MACD<4日前的MACD
FH2赋值:MACD>=0 AND COUNT(MACD>1日前的MACD,1)=1
FH3赋值:FH1 AND FH2 AND C的13日指数移动平均>1日前的C的13日指数移动平均
FH4赋值:FH1 AND FH2 AND (DIF-DEA的绝对值/C)<0.018
FH5赋值:FH1 AND FH2 AND MACD<0.10
输出翻红:(FH3 OR FH4 OR FH5)
}