主图源码: DIF:100*(EMA(CLOSE,12)-EMA(CLOSE,26)); DEA:EMA(DIF,9); MACD:(DIF-DEA)*2,COLORSTICK; {底部结构预警} 死叉:=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; STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED; DRAWTEXT(TFILTER(底背离消失,B,1),(DIF+MACD),"消失"),COLORYELLOW; DRAWTEXT(TFILTER(BG,MACD>0,1),DIF*1.1,"结构形成"),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); 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; DRAWTEXT(TFILTER(顶背离消失,T,1),(DIF+MACD),"消失"),COLORYELLOW; STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN; DRAWTEXT(TFILTER(TG,MACD<0,1),DIF*1.02,"结构形成"),COLORMAGENTA; 选股源码: 1,红钝化 DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26)); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2; 死叉:=CROSS(DEA,DIF); N1:=BARSLAST(死叉); N2:=REF(BARSLAST(死叉),N1+1); N3:=REF(BARSLAST(死叉),N2+N1+2); CL1:=LLV(C,N1+1); DIFL1:=LLV(DIF,N1+1); CL2:=REF(CL1,N1+1); DIFL2:=REF(DIFL1,N1+1); CL3:=REF(CL2,N1+1); DIFL3:=REF(DIFL2,N1+1); 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 隔峰底背离; 红钝化:TFILTER(B,MACD>0,1); 2,结构形成1 DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26)); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2; 死叉:=CROSS(DEA,DIF); N1:=BARSLAST(死叉); N2:=REF(BARSLAST(死叉),N1+1); N3:=REF(BARSLAST(死叉),N2+N1+2); CL1:=LLV(C,N1+1); DIFL1:=LLV(DIF,N1+1); CL2:=REF(CL1,N1+1); DIFL2:=REF(DIFL1,N1+1); CL3:=REF(CL2,N1+1); DIFL3:=REF(DIFL2,N1+1); 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 隔峰底背离; BG:=((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)); 结构形成1:TFILTER(BG,MACD>0,1); 3,结构形成2 DIF:=100*(EMA(CLOSE,12)-EMA(CLOSE,26)); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2; 金叉:=CROSS(DIF,DEA); M1:=BARSLAST(金叉); M2:=REF(BARSLAST(金叉),M1+1); M3:=REF(BARSLAST(金叉),M2+M1+2); CH1:=HHV(C,M1+1); DIFH1:=HHV(DIF,M1+1); CH2:=REF(CH1,M1+1); DIFH2:=REF(DIFH1,M1+1); CH3:=REF(CH2,M1+1); DIFH3:=REF(DIFH2,M1+1); 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 隔峰顶背离; TG:=((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)); 结构形成2:TFILTER(TG,MACD<0,1); 附:一线炒股 源码: 多空线:EMA(C,N),COLOR00FF00; IF(多空线>REF(多空线,1),多空线,DRAWNULL),COLOR0000FF,LINETHICK2; 参数N:1 999 13 在某一上升通道里股价沿着哪条趋势线上升,趋势就不会轻易改变,只有破了就有可能改变趋势,N参数(均线)可根据自己的需要调节。 严格的执行力是长期获利的保障,下图红色做多,绿色做空 |
|