文华财经通道趋势多空线主图指标源码

MA5:=MA(CLOSE,5);
MA10:=MA(CLOSE,10);
MA20:=MA(CLOSE,20);
MA30:=MA(CLOSE,30);
MA60:=MA(CLOSE,60);
MA120:=MA(CLOSE,120);
HIGHN:=10;
LOWN:=10;
HIGHDISPLAY:=0;
LOWDISPLAY:=0;
ZGDISPLAY:=0;
MADISPLAY:=0;
AA:=REF(H,HIGHN)=HHV(H,2*HIGHN+1);
QY:=BACKSET(AA,HIGHN+1);
CC:=FILTER(QY,HIGHN) AND H=HHV(H,HIGHN+1);
DRAWICON(CROSS(CC,0.5),H,’ICO5′);
DDD:=BARSLAST(CC);
CURRBARSCOUNT:=DATACOUNT-BARPOS;
GDTS:=IF(CC,CURRBARSCOUNT,0);
DINGBU:=IF(DDD,REF(H,DDD),H);
{顶部}DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS);
DINGBU1:=REF(DINGBU,DDD+1);
GDCS1:=REFX1(DINGBUTS,10000);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
GDCS2:=REFX1(DINGBUTS1,10000);
DINGBU2:=REF(DINGBU1,DDD+1);
MM:=IF(CURRBARSCOUNT>GDCS2,0,1);
高点压力:TRENDLINES(CURRBARSCOUNT=GDCS2,H,CURRBARSCOUNT=GDCS1,H),COLORBLUE,LINETHICK2;
AA1:=REF(L,LOWN)=LLV(L,2*LOWN+1);
QY1:=BACKSET(AA1,LOWN+1);
CC1:=FILTER(QY1,LOWN) AND L=LLV(L,LOWN+1);
DRAWICON(CROSS(CC1,0.5),L,’ICO4′);
DD1:=BARSLAST(CC1);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
YDB:=IF(DD1,REF(L,DD1),L);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
DDCS1:=REFX1(DDTS1,10000);
ZDB:=REF(YDB,DD1+1);
DDTS2:=REF(DDTS1,DD1+1);
DDCS2:=REFX1(DDTS2,10000);
低点支撑:TRENDLINES(CURRBARSCOUNT=DDCS2,L,CURRBARSCOUNT=DDCS1,L),COLORRED,LINETHICK2;
ZGSTAR:=(高点压力+低点支撑)/2;
ZGEND:=REFX1((高点压力+低点支撑)/2,10000);
STARDAY:=IF(DDCS2<GDCS2,DDCS2,GDCS2);
主趋势线:EMA(EMA(C,10),10),COLORMAGENTA,LINETHICK4;
B:主趋势线>REF(主趋势线,1),NODRAW;
IF(B-1,主趋势线,NULL),COLORBLUE,LINETHICK3;
VERTLINE(CROSS(B=0,0.5),COLORBLUE),LINETHICK1;
VERTLINE(CROSS(B=1,0.5),COLORMAGENTA),LINETHICK1;
AAA:=EMA(C,5) > EMA(C,20);
BB:=EMA(C,5) < EMA(C,20);
CCA:= EMA(C,5) > EMA(C,10);
CC1A:=EMA(C,5) < EMA(C,10);
DD:=CLOSE<OPEN;
/*
STICKLINE1(AAA,O,C,3,1),COLORRED;
STICKLINE1(AAA,MAX(O,C),H,0,0),COLORRED;
STICKLINE1(AAA,MIN(O,C),L,0,0),COLORRED;
STICKLINE1(AAA AND DD,O,C,3,0),COLORRED;
STICKLINE1(BB,MAX(O,C),H,0,0),COLORGREEN;
STICKLINE1(BB,MIN(O,C),L,0,0),COLORGREEN;
STICKLINE1(BB,O,C,3,1),COLORGREEN;
STICKLINE1(BB AND DD,O,C,3,0),COLORGREEN;
STICKLINE1(BB AND CCA,MAX(O,C),H,0,1),COLORWHITE;
STICKLINE1(BB AND CCA,MIN(O,C),L,0,1),COLORWHITE;
STICKLINE1(BB AND CCA,O,C,3,1),COLORWHITE;
STICKLINE1(BB AND CCA AND DD,O,C,3,0),COLORWHITE;
STICKLINE1(AA AND CC1A,MAX(O,C),H,0,0),COLORWHITE;
STICKLINE1(AA AND CC1A,MIN(O,C),L,0,0),COLORWHITE;
STICKLINE1(AA AND CC1A,O,C,3,1),COLORWHITE;
STICKLINE1(AA AND CC1A AND DD,O,C,3,0),COLORWHITE;
*/
// 1. 长期高低点趋势线(周期20)
HIGHN2:=20;
LOWN2:=20;
AA2:=REF(H,HIGHN2)=HHV(H,2*HIGHN2+1);
QY2:=BACKSET(AA2,HIGHN2+1);
CC2:=FILTER(QY2,HIGHN2) AND H=HHV(H,HIGHN2+1);
DDD2:=BARSLAST(CC2);
GDTS2:=IF(CC2,CURRBARSCOUNT,0);
DINGBU2L:=IF(DDD2,REF(H,DDD2),H);
DINGBUTS2L:=IF(DDD2,REF(GDTS2,DDD2),GDTS2);
GDCS1L:=REFX1(DINGBUTS2L,10000);
DINGBUTS2L1:=REF(DINGBUTS2L,DDD2+1);
GDCS2L:=REFX1(DINGBUTS2L1,10000);
长期高点压力:TRENDLINES(CURRBARSCOUNT=GDCS2L,H,CURRBARSCOUNT=GDCS1L,H),COLORCYAN,LINETHICK1,DOT;
AA1L:=REF(L,LOWN2)=LLV(L,2*LOWN2+1);
QY1L:=BACKSET(AA1L,LOWN2+1);
CC1L:=FILTER(QY1L,LOWN2) AND L=LLV(L,LOWN2+1);
DD1L:=BARSLAST(CC1L);
DDTS2L:=IF(CC1L,CURRBARSCOUNT,0);
YDB2L:=IF(DD1L,REF(L,DD1L),L);
DDTS1L:=IF(DD1L,REF(DDTS2L,DD1L),DDTS2L);
DDCS1L:=REFX1(DDTS1L,10000);
DDTS2L1:=REF(DDTS1L,DD1L+1);
DDCS2L:=REFX1(DDTS2L1,10000);
长期低点支撑:TRENDLINES(CURRBARSCOUNT=DDCS2L,L,CURRBARSCOUNT=DDCS1L,L),COLORGREEN,LINETHICK1,DOT;
// 2. 矩形整理形态识别(水平通道)
RECT_PERIOD:=20; // 检测周期
RECT_TOP:=HHV(H,RECT_PERIOD);
RECT_BOTTOM:=LLV(L,RECT_PERIOD);
RECT_RANGE:=RECT_TOP-RECT_BOTTOM;
RECT_MID:=(RECT_TOP+RECT_BOTTOM)/2;
// 条件:波动幅度小于平均ATR的1.5倍,且收盘价在区间内
TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW)),NODRAW;
ATR14:=MA(TR,14);
IS_RECT:=RECT_RANGE/REF(C,1)<0.05 AND RECT_RANGE<ATR14*1.5 AND COUNT(C>RECT_BOTTOM AND C<RECT_TOP,RECT_PERIOD)>RECT_PERIOD*0.7;
// 画矩形框(起点为RECT_PERIOD前,终点为当前K线)
RECT_START:=BARPOS-RECT_PERIOD;
RECT_END:=BARPOS;
DRAWLINE1(CURRBARSCOUNT=RECT_START,RECT_TOP,CURRBARSCOUNT=RECT_END,RECT_TOP,0),COLORYELLOW,LINETHICK2;
DRAWLINE1(CURRBARSCOUNT=RECT_START,RECT_BOTTOM,CURRBARSCOUNT=RECT_END,RECT_BOTTOM,0),COLORYELLOW,LINETHICK2;
STICKLINE(CURRBARSCOUNT>=RECT_START AND CURRBARSCOUNT<=RECT_END,RECT_TOP,RECT_BOTTOM,0,0),COLORYELLOW;
// 矩形内部填充(可选)
STICKLINE(IS_RECT AND CURRBARSCOUNT>=RECT_START AND CURRBARSCOUNT<=RECT_END,RECT_TOP,RECT_BOTTOM,0,1),COLORBLUE;
// 3. 三角形整理形态识别(对称、上升、下降)
TRI_PERIOD:=30; // 最大检测周期
TRI_START:=REFX1(REFX(BARPOS,0),10000)-TRI_PERIOD;
// 获取区间内显著高点和低点
TRI_HIGH_POINTS:=FILTER(H=HHV(H,TRI_PERIOD) AND H>REF(H,1) AND H>REFX(H,1),3);
TRI_LOW_POINTS:=FILTER(L=LLV(L,TRI_PERIOD) AND L<REF(L,1) AND L<REFX(L,1),3);
// 高点和低点序列索引(K线位置)
HP_BARS:=BARSLAST(TRI_HIGH_POINTS);
LP_BARS:=BARSLAST(TRI_LOW_POINTS);
HP_VAL:=IF(TRI_HIGH_POINTS,H,REF(H,HP_BARS));
LP_VAL:=IF(TRI_LOW_POINTS,L,REF(L,LP_BARS));
// 计算高点和低点的线性回归斜率(最近5个点)
SLOPE_H:=SLOPE(HP_VAL,5);
SLOPE_L:=SLOPE(LP_VAL,5);
// 对称三角形:高点下斜,低点上斜,且斜率绝对值接近
SYM_TRI:=SLOPE_H<0 AND SLOPE_L>0 AND ABS(SLOPE_H+SLOPE_L)<0.001;
// 上升三角形:高点水平,低点上斜
UP_TRI:=ABS(SLOPE_H)<0.0005 AND SLOPE_L>0;
// 下降三角形:高点下斜,低点水平
DOWN_TRI:=SLOPE_H<0 AND ABS(SLOPE_L)<0.0005;
// 画三角形趋势线(最近两个有效点连线)
LAST_HIGH1:=REFX1(VALUEWHEN(TRI_HIGH_POINTS,REFX(H,0)),10000);
LAST_HIGH2:=REFX1(VALUEWHEN(TRI_HIGH_POINTS,REFX(H,1)),10000);
LAST_LOW1:=REFX1(VALUEWHEN(TRI_LOW_POINTS,REFX(L,0)),10000);
LAST_LOW2:=REFX1(VALUEWHEN(TRI_LOW_POINTS,REFX(L,1)),10000);
DRAWLINE1(ISLASTBAR,LAST_HIGH1,ISLASTBAR-5,LAST_HIGH2,0),COLORWHITE,LINETHICK2;
DRAWLINE1(ISLASTBAR,LAST_LOW1,ISLASTBAR-5,LAST_LOW2,0),COLORWHITE,LINETHICK2;
DRAWTEXT(ISLASTBAR,LAST_HIGH1,’▲三角’),COLORWHITE;
// 附加旗形识别(简化为小范围平行通道)
FLAG_PERIOD:=15;
FLAG_TOP:=HHV(H,FLAG_PERIOD);
FLAG_BOTTOM:=LLV(L,FLAG_PERIOD);
FLAG_RANGE:=FLAG_TOP-FLAG_BOTTOM;
FLAG_SLOPE_H:=SLOPE(FLAG_TOP,5);
FLAG_SLOPE_L:=SLOPE(FLAG_BOTTOM,5);
IS_FLAG:=FLAG_RANGE<ATR14*0.8 AND ABS(FLAG_SLOPE_H-FLAG_SLOPE_L)<0.001 AND FLAG_SLOPE_H>0;
DRAWLINE1(ISLASTBAR,FLAG_TOP,ISLASTBAR-FLAG_PERIOD,REF(FLAG_TOP,FLAG_PERIOD),0),COLORMAGENTA,LINETHICK1;
DRAWLINE1(ISLASTBAR,FLAG_BOTTOM,ISLASTBAR-FLAG_PERIOD,REF(FLAG_BOTTOM,FLAG_PERIOD),0),COLORMAGENTA,LINETHICK1;
DRAWTEXT(ISLASTBAR,FLAG_TOP,’旗形’),COLORMAGENTA;
// 4. 补充标注:当前识别到的形态名称
DRAWTEXT(IS_RECT,LLV(L,5),’矩形整理’),COLORYELLOW;
DRAWTEXT(SYM_TRI,HHV(H,5),’对称三角’),COLORWHITE;
DRAWTEXT(UP_TRI,HHV(H,5),’上升三角’),COLORWHITE;
DRAWTEXT(DOWN_TRI,HHV(H,5),’下降三角’),COLORWHITE;
3.安装教程:
夜雨聆风