网友求助:
源码如下
N:=60;
K值:="KDJ.K";
DD:=C=LLV(C,N);{60日最低点}
DDSJ:=BARSLAST(REF(DD,1));{上一低点时间}
DDGJ:=REF(CLOSE,DDSJ+1)>CLOSE;{股价趋势}
KDZB:=REF(K值,DDSJ+1)<K值;{KDJ.K指标趋势}
K底背离:=DDGJ AND KDZB;
GD:=C=HHV(C,N);{60日最高点}
GDSJ:=BARSLAST(REF(GD,1));{上一高点时间}
GDGJ:=REF(CLOSE,GDSJ+1)<CLOSE;{股价趋势}
KGZB:=REF(K值,GDSJ+1)>K值;
K顶背离:=GDGJ AND KGZB;
MACD:="MACD.MACD";
MDZB:=REF(MACD,DDSJ+1)<MACD;{MACD指标趋势}
M底背离:=DDGJ AND MDZB;
MGZB:=REF(MACD,GDSJ+1)>MACD;
M顶背离:=GDGJ AND MGZB;
RSI:="RSI.RSI1";
RDZB:=REF(RSI,DDSJ+1)<RSI;{RSI指标趋势}
R底背离:=DDGJ AND RDZB;
RGZB:=REF(RSI,GDSJ+1)>RSI;
R顶背离:=GDGJ AND RGZB;
TYP:=(HIGH + LOW + CLOSE)/3;
CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N));
CDZB:=REF(CCI,DDSJ+1)<CCI;{CCI指标趋势}
C底背离:=DDGJ AND CDZB;
CGZB:=REF(CCI,GDSJ+1)>CCI;
C顶背离:=GDGJ AND CGZB;
REFLINE: -5,15,30,COLORBLACK;
DRAWTEXT(ISLASTBAR,29,'KDJ顶背离'),LINETHICK2,COLORRED;
DRAWTEXT(K顶背离,IF(ISLASTBAR,27.5,29),'(×)'),LINETHICK2,COLORRED;
DRAWTEXT(ISLASTBAR,26,'MACD顶背离'),LINETHICK2,COLORMAGENTA;
DRAWTEXT(M顶背离,(ISLASTBAR,24.5,26),'(×)'),LINETHICK2,COLORMAGENTA,;
DRAWTEXT(ISLASTBAR,22.1,'RSI顶背离'),LINETHICK2,COLORBLUE;
DRAWTEXT(R顶背离,(ISLASTBAR,20.5,22.1),'(×)'),LINETHICK2,COLORBLUE;
DRAWTEXT(ISLASTBAR,18.1,'CCI顶背离'),LINETHICK2,COLORGREEN;
DRAWTEXT(C顶背离,(ISLASTBAR,16.6,18.1),'(×)'),LINETHICK2,COLORGREEN,;
DRAWTEXT(ISLASTBAR,14.2,'CCI底背离'),LINETHICK2,COLORGREEN;
DRAWTEXT(C底背离,IF(ISLASTBAR,12,14.2),'(√)'),LINETHICK2,COLORGREEN;
DRAWTEXT(ISLASTBAR,10,'RSI底背离'),LINETHICK2,COLORBLUE;
DRAWTEXT(R底背离,IF(ISLASTBAR,8.5,10),'(√)'),LINETHICK2,COLORBLUE;
DRAWTEXT(ISLASTBAR,6,'MACD底背离'),LINETHICK2,COLORMAGENTA;
DRAWTEXT(M底背离,IF(ISLASTBAR,4.5,6),'(√)'),LINETHICK2,COLORMAGENTA;
DRAWTEXT(ISLASTBAR,3,'KDJ底背离'),LINETHICK2,COLORRED;
DRAWTEXT(K底背离,IF(ISLASTBAR,1.5,3),'(√)'),LINETHICK2,COLORRED;
解答如下:
N:=60;
K值:="KDJ.K";
DD:=C=LLV(C,N);{60日最低点}
DDSJ:=BARSLAST(REF(DD,1));{上一低点时间}
DDGJ:=REF(CLOSE,DDSJ+1)>CLOSE;{股价趋势}
KDZB:=REF(K值,DDSJ+1)<K值;{KDJ.K指标趋势}
K底背离:=DDGJ AND KDZB;
GD:=C=HHV(C,N);{60日最高点}
GDSJ:=BARSLAST(REF(GD,1));{上一高点时间}
GDGJ:=REF(CLOSE,GDSJ+1)<CLOSE;{股价趋势}
KGZB:=REF(K值,GDSJ+1)>K值;
K顶背离:=GDGJ AND KGZB;
MACD:="MACD.MACD";
MDZB:=REF(MACD,DDSJ+1)<MACD;{MACD指标趋势}
M底背离:=DDGJ AND MDZB;
MGZB:=REF(MACD,GDSJ+1)>MACD;
M顶背离:=GDGJ AND MGZB;
RSI:="RSI.RSI1";
RDZB:=REF(RSI,DDSJ+1)<RSI;{RSI指标趋势}
R底背离:=DDGJ AND RDZB;
RGZB:=REF(RSI,GDSJ+1)>RSI;
R顶背离:=GDGJ AND RGZB;
TYP:=(HIGH + LOW + CLOSE)/3;
CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N));
CDZB:=REF(CCI,DDSJ+1)<CCI;{CCI指标趋势}
C底背离:=DDGJ AND CDZB;
CGZB:=REF(CCI,GDSJ+1)>CCI;
C顶背离:=GDGJ AND CGZB;
DRAWTEXT(K顶背离,IF(BARSCOUNT(C),27.5,29),'(×)'),LINETHICK2,COLORRED;
DRAWTEXT(M顶背离,IF(BARSCOUNT(C),24.5,26),'(×)'),LINETHICK2,COLORMAGENTA;
DRAWTEXT(R顶背离,IF(BARSCOUNT(C),20.5,22.1),'(×)'),LINETHICK2,COLORBLUE;
DRAWTEXT(C顶背离,IF(BARSCOUNT(C),16.6,18.1),'(×)'),LINETHICK2,COLORGREEN;
DRAWTEXT(C底背离,IF(BARSCOUNT(C),12,14.2),'(√)'),LINETHICK2,COLORGREEN;
DRAWTEXT(R底背离,IF(BARSCOUNT(C),8.5,10),'(√)'),LINETHICK2,COLORBLUE;
DRAWTEXT(M底背离,IF(BARSCOUNT(C),4.5,6),'(√)'),LINETHICK2,COLORMAGENTA;
DRAWTEXT(K底背离,IF(BARSCOUNT(C),1.5,3),'(√)'),LINETHICK2,COLORRED;