收集:中国股票市场经济分析网
全功能KDJ+MACD副图原码(精品奉上)
再次声明:我用的是海通证券大智慧新一代 Ver3.0
{全功能KDJ+MACD副图原码}
DRAWTEXTABS(0,0,' ☆全功能KDJ+MAC☆'),colorgreen;
DRAWGBK(close>0,STRIP(RGB(25,25,112),RGB(47,79,79),0));
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:SMA(RSV,3,1),LINETHICK2,COLORWHITE;
D:SMA(K,3,1),LINETHICK2,COLOR00DDDD;
J:3*K-2*D,LINETHICK2,COLOR800080;
DIFF:EMA(CLOSE,12)-EMA(CLOSE,26),linethick0,COLOR0099FF;
DEA :EMA(DIFF,9),linethick0,COLORD89837;
MACD:2*(DIFF-DEA),COLORFF9999,linethick0;
YLZC:=if(close=INDEXC,(INDEXC+INDEXh+INDEXl+INDEXO)/4,AMOUNT/(vol+0.01)/100);
阻价:=if(close=INDEXC,YLZC+INDEXC-INDEXl,YLZC+(close-low));
支价:=if(close=INDEXC,INDEXl+INDEXC-YLZC,low+(close-YLZC));
今压:REF(阻价,1),LINETHICK0,COLORAA11BB;
今撑:REF(支价,1),LINETHICK0,COLOR009900;
明压:阻价,LINETHICK0;
明撑:支价,LINETHICK0;
rsv1:=(hhv(h,9.8)-c)/(hhv(h,9.8)-llv(l,9.8))*101;
kk:=sma(rsv1,3,1);
dd:=sma(kk,3,1);
jj:=3*kk-2*dd;
买卖:=if(jj>=100,100,if(jj<=0,0,jj));
明天买:if(买卖=100,0-10,0),color00cccc;
明天卖:if(买卖=0,90,100),color00ff00;
KX:=250;
KH:=HHV(K,KX);
DH:=HHV(D,KX);
JH:=HHV(J,KX);
KL:=LLV(K,KX);
DL:=LLV(D,KX);
JL:=LLV(J,KX);
HKMAX:=MAX(KH,MAX(DH,JH));
LKMIN:=MIN(KL,MIN(DL,JL));
KHLB:=(HKMAX+LKMIN)/2;
KHLC:=HKMAX-LKMIN;
MHF:=HHV(DIFF,KX);
MHD:=HHV(DEA,KX);
MHM:=HHV(MACD,KX);
MLF:=LLV(DIFF,KX);
MLD:=LLV(DEA,KX);
MLM:=LLV(MACD,KX);
HMAX:=MAX(MHF,MAX(MHD,MHM));
LMIN:=MIN(MLF,MIN(MLD,MLM));
FHLB:=(HMAX-LMIN)/100;
FHLC:=HMAX-LMIN;
SH:=(0-FHLB)*(KHLC/FHLC)+KHLB;
DIFFA:=(DIFF-FHLB)*(KHLC/FHLC)+KHLB;
DEAA:=(DEA-FHLB)*(KHLC/FHLC)+KHLB;
MACDA:=(macd-FHLB)*(KHLC/FHLC)+KHLB;
CDA:=MACD<ref(MACD,1) and MACD>0;
CDB:=MACD>=ref(MACD,1) and MACD>0;
CDC:=MACD>ref(MACD,1) and MACD<0;
CDD:=MACD<=ref(MACD,1) and MACD<0;
STICKLINE(CDA,SH,macda,6,0),COLOR00AAFF;{黄色段}
STICKLINE(CDA,SH,macda,6.6,0),COLOR0066AA;
STICKLINE(CDA,SH,macda,4.4,0),COLOR0099DD;
STICKLINE(CDA,SH,macda,3.3,0),COLOR00BBEE;
STICKLINE(CDA,SH,macda,2.2,0),COLOR00DDFF;
STICKLINE(CDA,SH,macda,1.1,0),COLOR00FFFF;
STICKLINE(CDB,SH,macda,6,0),COLOR0000AA; {红色段}
STICKLINE(CDB,SH,macda,6.6,0),COLOR0011BB;
STICKLINE(CDB,SH,macda,4.4,0),COLOr0022CC;
STICKLINE(CDB,SH,macda,3.3,0),COLOR0033DD;
STICKLINE(CDB,SH,macda,2.2,0),COLOR0044EE;
STICKLINE(CDB,SH,macda,1.1,0),COLOR0055FF;
STICKLINE(CDC,SH,macda,6,0),COLORAA00BB;{向上粉红}
STICKLINE(CDC,SH,macda,6.6,0),COLORBB1177;
STICKLINE(CDC,SH,macda,4.4,0),COLORCC2299;
STICKLINE(CDC,SH,macda,3.3,0),COLORDD33AA;
STICKLINE(CDC,SH,macda,2.2,0),COLOREE44BB;
STICKLINE(CDC,SH,macda,1.1,0),COLORFF55BB;
STICKLINE(CDD,SH,macda,6,0),COLORFF7700;
STICKLINE(CDD,SH,macda,6.6,0),COLORAA7711;
STICKLINE(CDD,SH,macda,4.4,0),COLORCC9922;
STICKLINE(CDD,SH,macda,3.3,0),COLOREEBB33;
STICKLINE(CDD,SH,macda,2.2,0),COLORFFCC44;
STICKLINE(CDD,SH,macda,1.1,0),COLORFFDD55;
PARTLINE(DIFFA,DIFF>0,RGB(255,153,153),DIFF<0,RGB(255,153,153));
PARTLINE(DEAA,DEA>0,RGB(65,105,225),DEA<0,RGB(65,105,225));
DRAWTEXT(BARSTATUS=2,SH,' 0'),color00aaaa;
TYP:=(HIGH+LOW+CLOSE)/3;
STICKLINE(diff>ref(diff,1),20,20,2,0),COLORRED;
STICKLINE(diff<ref(diff,1),20,20,2,0),COLORGREEN;
STICKLINE(K>=ref(K,1) or k>d and diff>ref(diff,1),80,80,2,1),COLORRED;
STICKLINE(K<ref(K,1),80,80,2,1),COLORGREEN;
MACD金叉:=CROSS(MACD,DIFF) AND MACD>=(0-0.05) AND MACD<=0.02;
DRAWTEXT(MACD金叉,macda*0.82,'MACD金叉'),color00FFFF;
XX:=ema(MA(LOW,3)*0.96,30);
DIFF金叉:=if(CROSS(DIFF,DEA) AND XX-REF(XX,1)>0 AND MACD>=REF(MACD,1) AND DIFF<=0,1,0);
DRAWTEXT(DIFF金叉=1,DIFFA*1.68,'DIFF金叉'),colorCDFFBB;
低位金叉:=CROSS(DIFF,DEA) AND DIFF<-0.1;
DRAWTEXT(低位金叉,deaa*0.99,' 低位金叉'),COLOR0099DD;
DIFDEA:=COUNT(CROSS(DIFF,DEA),BARSLAST(DEA>=0));
二次金叉:=CROSS(DIFF,DEA) AND DEA<0 AND COUNT(DIFDEA=2,21)=1;
DRAWTEXT(二次金叉,deaa*0.99-8,' 二次金叉'),ColorFF00FF;
A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));
底背离:=REF(CLOSE,A1+1)>CLOSE AND DIFF>REF(DIFF,A1+1) AND CROSS(DIFF,DEA);
DRAWTEXT(底背离,DEAA*0.99-16,' 底背离'),Color0099FF;
A2:=BARSLAST(REF(CROSS(DEA,DIFF),1));
顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(DIFF,A2+1)>DIFF AND CROSS(DEA,DIFF);
DRAWTEXT(FILTER(顶背离,5),DEAA*1.02,'顶背离'),COLORDDAAAA;
{周金叉,死叉}
周DIFF:="MACD.DIFF#WEEK";
周DEA:="MACD.DEA#WEEK";
周MACD:="MACD.MACD#WEEK";
DIF周金叉:=CROSS(周DIFF,周DEA);
DRAWTEXT(DIF周金叉,DEAA,'DIFF周金叉'),COLOR0099FF;
DRAWTEXT(CROSS(周DEA,周DIFF),DEAA+4,'DIFF周死叉'),align0,COLORCDFFBB;
MACD周金叉:=CROSS(周MACD,周DIFF) AND 周MACD>=(0-0.05) AND 周MACD<=0.02;
DRAWTEXT(MACD周金叉,macda-0.03,'MACD周金叉'),color00FFFF;
{月金叉,死叉}
月DIFF:="MACD.DIFF#MONTH";
月DEA:="MACD.DEA#MONTH";
DIF月金叉:=CROSS(月DIFF,月DEA);
DRAWTEXT(DIF月金叉,DEAA*0.98,'DIF月金叉'),COLOR00FFCC;
DRAWTEXT(CROSS(月DEA,月DIFF),DEAA*1.02,'DIF月死叉'),align0,COLORDDDDDD;
周K:="KDJ.K#WEEK"(9,3,3);
周D:="KDJ.D#WEEK"(9,3,3);
周J:="KDJ.J#WEEK"(9,3,3);
月K:="KDJ.K#MONTH"(9,3,3);
月D:="KDJ.D#MONTH"(9,3,3);
月J:="KDJ.J#MONTH"(9,3,3);
月金叉:=cross(月K,月D);
周金叉:=cross(周K,周D);
日金叉:=FILTER(cross(K,D) and K<20,4);
drawtext(月金叉,月D-2,'★'),ALIGN0,color0022ee;
DRAWTEXT(月金叉,月D-2,'KD月金叉'),coloryellow;
drawtext(周金叉,周D,'★'),ALIGN2,color0022ee;
DRAWTEXT(周金叉,周D,' KD周金叉'),colorgreen;
DRAWICON(日金叉,K,1),align2;
DRAWTEXT(日金叉,D-6,'低位金叉'),color00CCCC;
DRAWTEXT(CROSS(周D,周K),周D*1.2,'KD周死叉'),COLOR00DDBB;
DRAWTEXT(CROSS(月D,月K),月D,'KD月死叉'),COLORFFFFFF;
KDB:=BARSLAST(ref(cross(k,d),1));
KDDB:=ref(close,KDB+1)>close and ref(k,KDB+1)<k and cross(k,d);
K底背:=if(FILTER(KDDB>0,5),1,0);
DRAWTEXT(K底背=1,D*0.98,'底背离'),COLORDDDDDD;
KDD:=BARSLAST(ref(cross(d,k),1));
K顶背:=ref(close,KDD+1)<close and ref(k,KDD+1)>k and cross(d,k);
DRAWTEXT(FILTER(K顶背>0,5),D+8,'顶背离'),COLORFFAA22;
MD1:=MA(CLOSE,80)-MA(CLOSE,13)/3;
MD2:=MA((CLOSE-MD1)/MD1,3);
买点1:=CROSS(MD2,0) AND LOW/REF(HIGH,1)<1.012 AND J<75 AND J>REF(J,1);
ma12:=MA(CLOSE,12);
佳点:=if(FILTER(MACD>=REF(MACD,5) AND open<=ref(close,1) and XX-REF(XX,1)>0 AND MACD<=0 AND ma12-REF(ma12,1)>=0,3) and J<80 and J>ref(J,1) and D>ref(D,1) and (diff>=ref(diff,1) or dea>=ref(dea,1)),1,0);
DRAWTEXT(佳点=1,macda*0.98,'佳点'),color0099FF;
DX0:=EMA(CLOSE,2)-EMA(OPEN,5);
DX1:=if(CROSS(DX0,MACD) AND LOW<=XX AND MACD<=(0-0.11) and (J<20 or K<20),1,0);
DRAWTEXT(FILTER(DX1,3),0,'短10%'),color00CC00;{短线}
MA10:=MA(CLOSE,10);
SS:=EMA(MA(HIGH,3)*1.05,30);
LQS:=if(FILTER(0.7*(CROSS(DIFF,DEA) AND CLOSE<SS AND XX-REF(XX,1)>0 AND CROSS(MACD,0) AND MACD>=0 AND DIFF>0 AND ma10-REF(ma10,1)>0 AND VOL>REF(VOL,1))>=0.7 AND (CLOSE<SS AND XX-REF(XX,1)>0),5) AND J<80,1,0);
DRAWTEXT(LQS=1,macda*0.98,'量价齐上'),colorCDFFDD;{量价齐上}
最佳点:=IF(COUNT(MD2>REF(MD2,1),3)=3 AND COUNT(MD2<0,10)=10 AND REF(MD2,3)=LLV(MD2,10) and J<80 and J>ref(J,1),1,0);
DRAWTEXT(最佳点=1,J,'最佳点'),colorFF00CC;
买点2:=REF(MD2,2)=LLV(MD2,20) AND REF(MD2,2)<0.071 AND REF(MD2,2)<REF(MD2,1) AND
NOT(REF(LOW,1)>REF(HIGH,2) AND LOW>REF(HIGH,1)) AND CLOSE>REF(CLOSE,1) AND J<75 AND J>REF(J,1);
DRAWTEXT(买点1 or 买点2,D-1,'买'),colorff00CC;
{预涨}
YZ:=(INTPART(SMA(RSV,3,1))+INTPART(SMA(K,3,1)))/2;
预涨:=cross(yz,50) and j<95 and diff>ref(diff,1) and low<ref(close,1);
DRAWTEXT(预涨,d*0.6,'预涨'),COLORA52A2A;
KD金叉:=cross(K,D)and J>20 and J<80;
选股:if(cross(macd,0) or DX1 or 佳点 or LQS or K底背 or 月金叉 or 周金叉 or 日金叉 or 买点1 or 买点2 or 最佳点 or MACD金叉 or DIFF金叉 or 低位金叉 or 二次金叉 or 底背离 or DIF周金叉 or MACD周金叉 or DIF月金叉 or KD金叉,2,0),LINETHICK0;