月K:"KDJ.K"(89,3,3),COLOR00FF00;
月D:"KDJ.D"(89,3,3),COLOR00FF00,LINETHICK2;
周K:"KDJ.K"(27,3,3),COLORRED;
周D:"KDJ.D"(27,3,3),COLORRED,LINETHICK2;
日K:"KD.K"(5,3,3),COLORWHITE;
日D:"KD.D"(5,3,3),COLORWHITE,LINETHICK2;
日金叉:IF(CROSS(日K,日D),50,0),COLORFFFFFF;
DRAWTEXT(日金叉,50,'日叉'),COLORFFFFFF;
周金叉:IF(CROSS(周K,周D),30,0),COLORRED;
DRAWTEXT(周金叉,30,'周叉'),COLORRED;
月金叉:IF(CROSS(月K,月D),20,0),COLOR0080FF;
DRAWTEXT(月金叉,20,'月叉'),COLORYELLOW;
{KD在30以下多次金叉}
JM:=CROSS("KDJ.K"(5,3,3),"KDJ.D"(5,3,3));
JMCOUNT:=COUNT(JM,BARSLAST("KDJ.D"(5,3,3)>=30));
JMTJ:=28*("KDJ.D"(5,3,3)<30 AND COUNT(JMCOUNT=1,21)=1);
DRAWTEXT (JMTJ,70,'①'),COLORWHITE;
JMTJ2:=28*("KDJ.D"(5,3,3)<30 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ2,70,'②'),COLORYELLOW;
JMTJ3:=28*("KDJ.D"(5,3,3)<30 AND COUNT(JMCOUNT=3,21)=1);
DRAWTEXT (JMTJ3,70,'③'),COLORYELLOW;
JMTJ4:=28*("KDJ.D"(5,3,3)<30 AND COUNT(JMCOUNT=4,21)=1);
DRAWTEXT (JMTJ4,70,'④'),COLORYELLOW;
JMTJ5:=28*("KDJ.D"(5,3,3)<30 AND COUNT(JMCOUNT=5,21)=1);
DRAWTEXT (JMTJ5,70,'⑤'),COLORYELLOW;
0,COLORYELLOW;
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));
B1:=REF(C,A1+1)>C AND REF(DIFF,A1+1)
MACD底背离:STICKLINE(FILTER(B1>0,5),0,0.75,3,0),COLORGREEN;
DRAWTEXT(FILTER(B1>0,5),0.57,'MACD底背离'),COLORGREEN;
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
A2:=BARSLAST(REF(CROSS(K,D),1));
B2:=REF(C,A2+1)>C AND REF(K,A2+1)
KDJ底背离:STICKLINE(FILTER(B2>0,5),0,1,3,0),COLORYELLOW;
DRAWTEXT(FILTER(B2>0,5),0.80,'KDJ底背离'),COLORYELLOW;
LC :=REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100;
RSI2:=SMA(MAX(CLOSE-LC,0),12,1)/SMA(ABS(CLOSE-LC),12,1)*100;
A3:=BARSLAST(REF(CROSS(RSI1,RSI2),1));
B3:=REF(C,A3+1)>C AND REF(RSI1,A3+1)
RSI底背离:STICKLINE(FILTER(B3>0,5),0,0.5,3,0),COLORWHITE;
DRAWTEXT(FILTER(B3>0,5),0.25,'RSI底背离'),COLORWHITE;
2,COLORRED;
C1:=BARSLAST(REF(CROSS(DEA,DIFF),1));
D1:=REF(C,C1+1)DIFF AND CROSS(DEA,DIFF);
MACD顶背离:STICKLINE(FILTER(D1>0,5),2,1.25,3,0),COLOR0066FF;
DRAWTEXT(FILTER(D1>0,5),1.47,'MACD顶背离'),COLOR0066FF;
C2:=BARSLAST(REF(CROSS(D,K),1));D2:=REF(C,C2+1)K AND CROSS(D,K);
KDJ顶背离:STICKLINE(FILTER(D2>0,5),2,1,3,0),COLORRED;
DRAWTEXT(FILTER(D2>0,5),1.2,'KDJ顶背离'),COLORRED;
C3:=BARSLAST(REF(CROSS(RSI2,RSI1),1));
D3:=REF(C,C3+1)RSI1 AND CROSS(RSI2,RSI1);
RSI顶背离:STICKLINE(FILTER(D3>0,5),2,1.5,3,0),COLORFF00FF;
DRAWTEXT(FILTER(D3>0,5),1.75,'RSI顶背离'),COLORFF00FF;
0,COLORFFA2AF;
20,COLORFFA2AF,POINTDOT;
50,COLORFFA2AF;
80,COLORFFA2AF,POINTDOT;
1楼源码缺少部分条件判断语句,其他修改参考:
RSV1:=(CLOSE-LLV(LOW,89))/(HHV(HIGH,89)-LLV(LOW,89))*100;
K1:SMA(RSV1,3,1);
D1:SMA(K1,3,1);
RSV2:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K2:SMA(RSV2,3,1);
D2:SMA(K2,3,1);
RSV3:=(CLOSE-LLV(LOW,5))/(HHV(HIGH,5)-LLV(LOW,5))*100;
K3:SMA(RSV3,3,1);
D3:SMA(K3,3,1);
月K:K1,COLOR00FF00;
月D:D1,COLOR00FF00,LINETHICK2;
周K:K2,COLORRED;
周D:D2,COLORRED,LINETHICK2;
日K:K3,COLORWHITE;
日D:D3,COLORWHITE,LINETHICK2;
日金叉:IF(CROSS(日K,日D),50,0),COLORFFFFFF;
DRAWTEXT(日金叉,50,'日叉'),COLORFFFFFF;
周金叉:IF(CROSS(周K,周D),30,0),COLORRED;
DRAWTEXT(周金叉,30,'周叉'),COLORRED;
月金叉:IF(CROSS(月K,月D),20,0),COLOR0080FF;
DRAWTEXT(月金叉,20,'月叉'),COLORYELLOW;
{KD在30以下多次金叉}
JM:=CROSS(K3,D3);
JMCOUNT:=COUNT(JM,BARSLAST(D3>=30));
JMTJ:=28*(D3<30 AND COUNT(JMCOUNT=1,21)=1);
DRAWTEXT (JMTJ,70,'①'),COLORWHITE;
JMTJ2:=28*(D3<30 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ2,70,'②'),COLORYELLOW;
JMTJ3:=28*(D3<30 AND COUNT(JMCOUNT=3,21)=1);
DRAWTEXT (JMTJ3,70,'③'),COLORYELLOW;
JMTJ4:=28*(D3<30 AND COUNT(JMCOUNT=4,21)=1);
DRAWTEXT (JMTJ4,70,'④'),COLORYELLOW;
JMTJ5:=28*(D3<30 AND COUNT(JMCOUNT=5,21)=1);
DRAWTEXT (JMTJ5,70,'⑤'),COLORYELLOW;
0,COLORYELLOW;
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));
B1:=REF(C,A1+1)>C AND REF(DIFF,A1+1);
STICKLINE(FILTER(B1>0,5),0,0.75,3,0),COLORGREEN;
DRAWTEXT(FILTER(B1>0,5),0.57,'MACD底背离'),COLORGREEN;
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
A2:=BARSLAST(REF(CROSS(K,D),1));
B2:=REF(C,A2+1)>C AND REF(K,A2+1);
STICKLINE(FILTER(B2>0,5),0,1,3,0),COLORYELLOW;
DRAWTEXT(FILTER(B2>0,5),0.80,'KDJ底背离'),COLORYELLOW;
LC :=REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100;
RSI2:=SMA(MAX(CLOSE-LC,0),12,1)/SMA(ABS(CLOSE-LC),12,1)*100;
A3:=BARSLAST(REF(CROSS(RSI1,RSI2),1));
B3:=REF(C,A3+1)>C AND REF(RSI1,A3+1);
STICKLINE(FILTER(B3>0,5),0,0.5,3,0),COLORWHITE;
DRAWTEXT(FILTER(B3>0,5),0.25,'RSI底背离'),COLORWHITE;
2,COLORRED;
C1:=BARSLAST(REF(CROSS(DEA,DIFF),1));
XD1:=REF(C,C1+1)<C AND CROSS(DEA,DIFF);
STICKLINE(FILTER(XD1>0,5),2,1.25,3,0),COLOR0066FF;
DRAWTEXT(FILTER(XD1>0,5),1.47,'MACD顶背离'),COLOR0066FF;
C2:=BARSLAST(REF(CROSS(D,K),1));
XD2:=REF(C,C2+1)<C AND CROSS(D,K);
STICKLINE(FILTER(XD2>0,5),2,1,3,0),COLORRED;
DRAWTEXT(FILTER(XD2>0,5),1.2,'KDJ顶背离'),COLORRED;
C3:=BARSLAST(REF(CROSS(RSI2,RSI1),1));
XD3:=REF(C,C3+1)<C AND CROSS(RSI2,RSI1);
STICKLINE(FILTER(XD3>0,5),2,1.5,3,0),COLORFF00FF;
DRAWTEXT(FILTER(XD3>0,5),1.75,'RSI顶背离'),COLORFF00FF;
0,COLORFFA2AF;
20,COLORFFA2AF,POINTDOT;
50,COLORFFA2AF;
80,COLORFFA2AF,POINTDOT;
100,COLORFFA2AF;
去掉KD均线并添加死叉标注参考:
RSV1:=(CLOSE-LLV(LOW,89))/(HHV(HIGH,89)-LLV(LOW,89))*100;
K1:=SMA(RSV1,3,1);
D1:=SMA(K1,3,1);
RSV2:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K2:=SMA(RSV2,3,1);
D2:=SMA(K2,3,1);
RSV3:=(CLOSE-LLV(LOW,5))/(HHV(HIGH,5)-LLV(LOW,5))*100;
K3:=SMA(RSV3,3,1);
D3:=SMA(K3,3,1);
月K:=K1,COLOR00FF00;
月D:=D1,COLOR00FF00,LINETHICK2;
周K:=K2,COLORRED;
周D:=D2,COLORRED,LINETHICK2;
日K:=K3,COLORWHITE;
日D:=D3,COLORWHITE,LINETHICK2;
日金叉:IF(CROSS(日K,日D),50,0),COLORFFFFFF;
DRAWTEXT(日金叉,50,'日叉'),COLORFFFFFF;
周金叉:IF(CROSS(周K,周D),30,0),COLORRED;
DRAWTEXT(周金叉,30,'周叉'),COLORRED;
月金叉:IF(CROSS(月K,月D),20,0),COLOR0080FF;
DRAWTEXT(月金叉,20,'月叉'),COLORYELLOW;
日死叉:IF(CROSSDOWN(日K,日D),50,0),COLORFFFFFF;
DRAWTEXT(日死叉,50,'日死叉'),COLORGREEN;
周死叉:IF(CROSSDOWN(周K,周D),30,0),COLORRED;
DRAWTEXT(周死叉,30,'周死叉'),COLORGREEN;
月死叉:IF(CROSSDOWN(月K,月D),20,0),COLOR0080FF;
DRAWTEXT(月死叉,20,'月死叉'),COLORGREEN;
JM:=CROSS(K3,D3);
JMCOUNT:=COUNT(JM,BARSLAST(D3>=30));
JMTJ:=28*(D3<30 AND COUNT(JMCOUNT=1,21)=1);
DRAWTEXT (JMTJ,70,'①'),COLORWHITE;
JMTJ2:=28*(D3<30 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ2,70,'②'),COLORYELLOW;
JMTJ3:=28*(D3<30 AND COUNT(JMCOUNT=3,21)=1);
DRAWTEXT (JMTJ3,70,'③'),COLORYELLOW;
JMTJ4:=28*(D3<30 AND COUNT(JMCOUNT=4,21)=1);
DRAWTEXT (JMTJ4,70,'④'),COLORYELLOW;
JMTJ5:=28*(D3<30 AND COUNT(JMCOUNT=5,21)=1);
DRAWTEXT (JMTJ5,70,'⑤'),COLORYELLOW;
0,COLORYELLOW;
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));
B1:=REF(C,A1+1)>C AND REF(DIFF,A1+1);
STICKLINE(FILTER(B1>0,5),0,0.75,3,0),COLORGREEN;
DRAWTEXT(FILTER(B1>0,5),0.57,'MACD底背离'),COLORGREEN;
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
A2:=BARSLAST(REF(CROSS(K,D),1));
B2:=REF(C,A2+1)>C AND REF(K,A2+1);
STICKLINE(FILTER(B2>0,5),0,1,3,0),COLORYELLOW;
DRAWTEXT(FILTER(B2>0,5),0.80,'KDJ底背离'),COLORYELLOW;
LC :=REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100;
RSI2:=SMA(MAX(CLOSE-LC,0),12,1)/SMA(ABS(CLOSE-LC),12,1)*100;
A3:=BARSLAST(REF(CROSS(RSI1,RSI2),1));
B3:=REF(C,A3+1)>C AND REF(RSI1,A3+1);
STICKLINE(FILTER(B3>0,5),0,0.5,3,0),COLORWHITE;
DRAWTEXT(FILTER(B3>0,5),0.25,'RSI底背离'),COLORWHITE;
2,COLORRED;
C1:=BARSLAST(REF(CROSS(DEA,DIFF),1));
XD1:=REF(C,C1+1)<C AND CROSS(DEA,DIFF);
STICKLINE(FILTER(XD1>0,5),2,1.25,3,0),COLOR0066FF;
DRAWTEXT(FILTER(XD1>0,5),1.47,'MACD顶背离'),COLOR0066FF;
C2:=BARSLAST(REF(CROSS(D,K),1));
XD2:=REF(C,C2+1)<C AND CROSS(D,K);
STICKLINE(FILTER(XD2>0,5),2,1,3,0),COLORRED;
DRAWTEXT(FILTER(XD2>0,5),1.2,'KDJ顶背离'),COLORRED;
C3:=BARSLAST(REF(CROSS(RSI2,RSI1),1));
XD3:=REF(C,C3+1)<C AND CROSS(RSI2,RSI1);
STICKLINE(FILTER(XD3>0,5),2,1.5,3,0),COLORFF00FF;
DRAWTEXT(FILTER(XD3>0,5),1.75,'RSI顶背离'),COLORFF00FF;
0,COLORFFA2AF;
20,COLORFFA2AF,POINTDOT;
50,COLORFFA2AF;
80,COLORFFA2AF,POINTDOT;
100,COLORFFA2AF;