引用:
原帖由 @沈无颜 于 2018-5-19 15:54 发表 
箬竹清风 
老师可否也分享下配套的副图啊?谢谢!    
总涨跌比:DYNAINFO(60)/(DYNAINFO(60)+DYNAINFO(61))*100,COLORCYAN,NODRAW;
DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26)),DOTLINE;
DEA:=EMA(DIF,9),COLORYELLOW;
MACD:=(DIF-DEA)*2,COLORSTICK;
STICKLINE((MACD>=0),0,MACD,2,-1),COLOR0000FF;
STICKLINE(((MACD>=0) AND (MACD < REF(MACD,1))),0,MACD,2,0),COLOR0090FF;
STICKLINE((MACD<0),0,MACD,2,0),COLORGREEN;
STICKLINE(((MACD<0) AND (MACD > REF(MACD,1))),0,MACD,2,-1),COLORCYAN;
STICKLINE(CROSS(DIF,0),0,MACD,2,0)COLORMAGENTA;
STICKLINE(CROSS(0,DIF),0,MACD,2,0)COLORWHITE;
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA2:=EMA(DIFF,9),COLORYELLOW;
{DRAWICON(((((LLV(MACD,4) > 0) AND (MACD < REF(MACD,1))) AND (REF(MACD,1) > REF(MACD,2))) AND (REF(MACD,2) > REF(MACD,3))),MACD,2);
DRAWICON(((((HHV(MACD,4) < 0) AND (MACD > REF(MACD,1))) AND (REF(MACD,1) < REF(MACD,2))) AND (REF(MACD,2) < REF(MACD,3))),MACD,1);}
{柱变与交叉临界}
开盘价格:=O,COLORYELLOW,NODRAW;
收盘价格:=C,COLORYELLOW,NODRAW;
最高价格:=H,COLORYELLOW,NODRAW;
最低价格:=L,COLORYELLOW,NODRAW;
振幅:=(H-L)/REF(C,1)*100,COLORYELLOW,NODRAW;
柱变临界:REF((EMA(CLOSE,12)*1134-EMA(CLOSE,26)*910-DEA2*702)/224,1),COLORLIMAGENTA,NODRAW;
交叉临界:351/28*(EMA(REF(DIFF,1),9)-11/13*EMA(REF(C,1),12)+25/27*EMA(REF(C,1),26)),COLORLIMAGENTA,NODRAW;
明日柱变临界:(EMA(CLOSE,12)*1134-EMA(CLOSE,26)*910-DEA2*702)/224,COLORLIBLUE,NODRAW;
明日交叉临界:351/28*(EMA(DIFF,9)-11/13*EMA(C,12)+25/27*EMA(C,26)),COLORLIBLUE,NODRAW;
当红:IF(BARSLAST(MACD<0),BARSLAST(MACD<0),0),NODRAW,COLORRED;
当绿:IF(BARSLAST(MACD>0),BARSLAST(MACD>0),0),NODRAW,COLORGREEN;

{底部结构预警}
死叉:=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);
B:直接底背离 OR 隔峰底背离,NODRAW;
BG:((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)),NODRAW;
底背离消失:=(REF(直接底背离,1) AND DIFL1<=DIFL2 ) OR (REF(隔峰底背离,1) AND DIFL1<=DIFL3);
DRAWTEXT(TFILTER(B,MACD>0,1),(DIF+MACD),'钝化'),COLORRED,NODRAW;
STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED;
DRAWTEXT(TFILTER(底背离消失,B,1),(DIF+MACD),'消失'),COLORYELLOW,NODRAW;
DRAWTEXT(TFILTER(BG,MACD>0,1),DIF*1.1,'结构形成'),COLORMAGENTA,NODRAW;

{顶部结构预警}

金叉:=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);
T:直接顶背离 OR 隔峰顶背离,NODRAW;
TG:((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)),NODRAW;
顶背离消失:=(REF(直接顶背离,1) AND DIFH1>=DIFH2 ) OR (REF(隔峰顶背离,1) AND DIFH1>=DIFH3);
DRAWTEXT(TFILTER(T,MACD<0,1),(DIF+MACD),''),COLORGREEN,NODRAW;
DRAWTEXT(TFILTER(顶背离消失,T,1),(DIF+MACD),''),COLORYELLOW,NODRAW;
STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(TFILTER(TG,MACD<0,1),DIF*1.02,''),COLORMAGENTA,NODRAW;
SDEA:=REF(HHV(DEA,BARSLAST(CROSS(DEA,DIF))+1),1),COLORGREEN,LINETHICK1; 
BDEA:=REF(LLV(DEA,BARSLAST(CROSS(DIF,DEA))+1),1),COLORMAGENTA,LINETHICK2;

交叉价格:=351/28*(EMA(DIFF,9)-11/13*EMA(C,12)+25/27*EMA(C,26)),COLORLIBLUE,NODRAW;
DRAWTEXT_FIX(1,0.9,1,0,STRCAT('交叉价格: ',CON2STR(交叉价格,2))),COLORGREEN;
TYP:=(HIGH + LOW + CLOSE)/3;
CCI:=(TYP-MA(TYP,14))/(0.015*AVEDEV(TYP,14));
卖:= CROSS(100,CCI);
买:= CROSS(CCI,-100);
买2:=CROSS(CCI,100);
DRAWICON(买,MACD*1.2,B); 
DIF1:100*(EMA(CLOSE,12)-EMA(CLOSE,26))COLORWHITE;
DEA1:EMA(DIF1,9),COLORRED;
{IF(DEA1<REF(DEA1,1),DEA1,DRAWNULL),COLORBLUE,LINETHICK1; 
IF(DIF1>=REF(DIF1,1),DIF1,DRAWNULL),COLORRED,LINETHICK2; };
{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;
{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;
DRAWBAND(IF(周红<1,DEA,DRAWNULL),RGB(0,250,0),DEA,RGB(0,0,0));
DRAWTEXT(周红=1,0,'周'),COLORYELLOW,DRAWABOVE;