自动画线支撑(源码 主图 通达信)
自动画线主图公式有箱体高低线,相对低A压A、低B压B,压力延伸线、趋势中轨虚线、支撑延伸线、近期最低点延伸线等价位线供参考。
自动画线支撑公式源码
TY:=C;
AAL1:=REF(TY,10)=HHV(TY,2*10+1);
BB1:=FILTER(AAL1,10);
CL1:=BACKSET(BB1,10+1);
HDL:=FILTER(CL1,10);
AA2:=REF(TY,10)=LLV(TY,2*10+1);
BB2:=FILTER(AA2,10);
CC2:=BACKSET(BB2,10+1);
LDL:=FILTER(CC2,10);
前期高位:REF(C,BARSLAST(HDL)),LINETHICK2,COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=8,前期高位,STRCAT('箱体高点:',CON2STR(前期高位,2))),COLORCYAN;
前期低位:REF(L,BARSLAST(LDL)),LINETHICK2,COLORFF0000;
DRAWTEXT(CURRBARSCOUNT=8,前期低位,STRCAT('箱体低点:',CON2STR(前期低位,2))),COLORRED;
BP1:=MA(C,1);
BP2:=SMA(SMA(SMA(BP1,2,1),2,1),2,1);
SMA2:=MA(BP2,3);
停损下限:IF(LLV(MA(BP2,8),3) BP2,LLV(MA(BP2,8),3),BP2);
IF(BP2 SMA2,BP2,DRAWNULL),COLORRED,LINETHICK4;
IF(BP2 SMA2,BP2,DRAWNULL),COLORGREEN,LINETHICK4;
{压力支撑}
HIGHN:=10;LOWN:=10;HIGHDISPLAY:=0;LOWDISPLAY:=0;ZGDISPLAY:=0;MADISPLAY:=0;
AAB:=REF(H,HIGHN)=HHV(H,2*HIGHN+1);
{HIGHN日前的最高价=2*HIGHN+1日内最高价的最高值}
QY:=BACKSET(AAB,HIGHN+1);{若AA则将最近HIGHN+1周期置为1}
CC:=FILTER(QY,HIGHN) AND H=HHV(H,HIGHN+1);
{QY的HIGHN日过滤 AND 最高价=HIGHN+1日内最高价的最高值}
DRAWICON(CC,H*1.005,2);
DDD:=BARSLAST(CC);{上次CC距今天数}
GDTS:=IF(CC,CURRBARSCOUNT,0);{如果CC,返回到最后交易日的周,否则返回0}
DINGBU:=IF(DDD,REF(H,DDD),H);{顶部}
DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS);
DINGBU1:=REF(DINGBU,DDD+1);
GDCS1:=CONST(DINGBUTS);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
GDCS2:=CONST(DINGBUTS1);
DINGBU2:=REF(DINGBU1,DDD+1);
MMM:=IF(CURRBARSCOUNT GDCS2,0,1);
高点压力:DRAWLINE(CURRBARSCOUNT=GDCS2,H,CURRBARSCOUNT=GDCS1,H,1) COLORGREEN,DOTLINE;
压力A:DRAWLINE(CURRBARSCOUNT=GDCS2,H,ISLASTBAR,REF(H,GDCS2-1),1),COLOR0055FF,DOTLINE;
压力B:DRAWLINE(CURRBARSCOUNT=GDCS1,H,ISLASTBAR,REF(H,GDCS1-1),1),COLORYELLOW,DOTLINE;
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(CC1,L*0.98,1);}
DD1:=BARSLAST(CC1);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
YDB:=IF(DD1,REF(L,DD1),L);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
DDCS1:=CONST(DDTS1);
ZDB:=REF(YDB,DD1+1);
DDTS2:=REF(DDTS1,DD1+1);
DDCS2:=CONST(DDTS2);
低点支撑:DRAWLINE(CURRBARSCOUNT=DDCS2,L,CURRBARSCOUNT=DDCS1,L,1) COLORRED,DOTLINE;
ZGSTAR:=(高点压力+低点支撑)/2;
ZGEND:=CONST((高点压力+低点支撑)/2);
STARDAY:=IF(DDCS2 GDCS2,DDCS2,GDCS2);
中轨:DRAWLINE(CURRBARSCOUNT=STARDAY,ZGSTAR,ISLASTBAR,ZGEND,1),POINTDOT,COLORFFBBFF,LINETHICK1;
TTT:=6;
A1:=REF(HIGH,6)=HHV(HIGH,2*TTT+1); B1:=FILTER(A1,TTT); C1:=BACKSET(B1,TTT+1); D1:=FILTER(C1,TTT);
A2:=REF(LOW,TTT)=LLV(LOW,2*TTT+1); B2:=FILTER(A2,TTT); C2:=BACKSET(B2,TTT+1); D2:=FILTER(C2,TTT);
E1:=(REF(LLV(LOW,2*TTT),1)+REF(HHV(HIGH,2*TTT),1))/2; E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT(D2 AND E1 =E2)) OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
L1:=(D2 AND NOT(D1 AND E1 E2)); H2:=D1 AND NOT(D2 AND E1 =E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1) 0,LLVBARS(IF(L1,LOW,10000),X1));
G1:=F1 REF(F1,1); I1:=BACKSET(G1,2); LD:=I1 REF(I1,1);
L2:=LD OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2) 0,HHVBARS(IF(H2,HIGH,0),X2));
G2:=F2 REF(F2,1); I2:=BACKSET(G2,2); HD:=I2 REF(I2,1);
UU:=BACKSET(BARSTATUS,BARSLAST(LD)+1);
VV:=UU REF(UU,1);
WW:=BACKSET(VV,REF(BARSLAST(LD),1)+2);
XX:=WW REF(WW,1);
UU2:=BACKSET(BARSTATUS,BARSLAST(HD)+1);
VV2:=UU2 REF(UU2,1);
WW2:=BACKSET(VV2,REF(BARSLAST(HD),1)+2);
XX2:=WW2 REF(WW2,1);
近低A:REF(L,BARSLAST(VV)),COLORWHITE,LINETHICK1,DOTLINE;
近低B:REF(L,BARSLAST(XX)),COLORLIRED,DOTLINE;
DRAWTEXT(CURRBARSCOUNT=10,高点压力,STRCAT('压力延伸:',CON2STR(高点压力,2))),COLORCYAN;
DRAWTEXT(CURRBARSCOUNT=10,低点支撑,STRCAT('支撑延伸:',CON2STR(低点支撑,2))),COLORLIRED;
DRAWTEXT(CURRBARSCOUNT=10,中轨,STRCAT('中轨:',CON2STR(中轨,2))),COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=10,压力A*0.995,STRCAT('压力A:',CON2STR(压力A,2))),COLORGREEN;
DRAWTEXT(CURRBARSCOUNT=10,压力B*0.995,STRCAT('压力B:',CON2STR(压力B,2))),COLORWHITE;
DRAWTEXT(CURRBARSCOUNT=10,近低A*1.005,STRCAT(' 近低A:',CON2STR(近低A,2))),COLORRED;
DRAWTEXT(CURRBARSCOUNT=10,近低B*1.005,STRCAT(' 近低B:',CON2STR(近低B,2))),COLOR0018D8;
自动画线支撑 加了平台突破和攻击线,趋势带 源码
M8:MA(C,4),LINETHICK0;
M20:MA(C,11);
DRAWBAND(M20,RGB(0,180,50),M8,RGB(150,50,40));
DRAWKLINE(H,O,L,C);
MA010:=MA(CLOSE,10),COLORYELLOW,LINETHICK0;
MA54:=MA(CLOSE,54),COLORFFCCCC,LINETHICK0;
PL1:=(((CLOSE - MA54) / MA54) 0.1);
PL2:=(((CLOSE - MA010) / MA010) 0.3);
偏离率:=(((PL1 = 1) AND (PL2 = 1)) * 0.2);
平台突破:=((((偏离率 = 0) AND (REF(偏离率,1) = 0.2)) AND (REF((COUNT((偏离率 = 0.2),10) = 10),1) = 1)) * 1);
DRAWTEXT(平台突破,L,'==================平台'),COLORWHITE;
MA05:=MA(C,5);
MA5角度: ATAN((MA05/REF(MA05,1)-1)*100)*180/3.1416,NODRAW;
T01:=CONST(LLVBARS(LOW,10));
T1HIGH:=CONST(REF(HIGH,T01));
MM:=CONST(CURRBARSCOUNT);
T02:=CONST(BARSLAST(CURRBARSCOUNT MM+T01 AND H T1HIGH));
T2HIGH:=CONST(REF(HIGH,T02));
T03:=CONST(BARSLAST(CURRBARSCOUNT MM+T02 AND HIGH T2HIGH));
T3HIGH:=CONST(REF(HIGH,T03));
攻击线:DRAWLINE(CURRBARSCOUNT=T03+1, T3HIGH, ISLASTBAR, T3HIGH,1),LINETHICK3,COLOR8080FF;
DRAWTEXT(ISLASTBAR, T3HIGH, '必杀攻击线')LINETHICK2,COLORCYAN;
TY:=C;
AAL1:=REF(TY,10)=HHV(TY,2*10+1);
BB1:=FILTER(AAL1,10);
CL1:=BACKSET(BB1,10+1);
HDL:=FILTER(CL1,10);
AA2:=REF(TY,10)=LLV(TY,2*10+1);
BB2:=FILTER(AA2,10);
CC2:=BACKSET(BB2,10+1);
LDL:=FILTER(CC2,10);
前期高位:REF(C,BARSLAST(HDL)),LINETHICK2,COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=8,前期高位,STRCAT('箱体高点:',CON2STR(前期高位,2))),COLORCYAN;
前期低位:REF(L,BARSLAST(LDL)),LINETHICK2,COLORFF0000;
DRAWTEXT(CURRBARSCOUNT=8,前期低位,STRCAT('箱体低点:',CON2STR(前期低位,2))),COLORRED;
BP1:=MA(C,1);
BP2:=SMA(SMA(SMA(BP1,2,1),2,1),2,1);
SMA2:=MA(BP2,3);
停损下限:IF(LLV(MA(BP2,8),3) BP2,LLV(MA(BP2,8),3),BP2);
IF(BP2 SMA2,BP2,DRAWNULL),COLORRED,LINETHICK4;
IF(BP2 SMA2,BP2,DRAWNULL),COLORGREEN,LINETHICK4;
{SNAKEA:HHV(MA(BP2,1),13),COLORYELLOW;
M3:=MA(CLOSE,3),COLORRED,LINETHICK1;
M13:=MA(CLOSE,13),COLORYELLOW,LINETHICK1;
M34:=MA(CLOSE,34),COLORCYAN,LINETHICK1;
M250:=MA(CLOSE,250),COLORFF0000,LINETHICK2;}
{压力支撑}
HIGHN:=10;LOWN:=10;HIGHDISPLAY:=0;LOWDISPLAY:=0;ZGDISPLAY:=0;MADISPLAY:=0;
AAB:=REF(H,HIGHN)=HHV(H,2*HIGHN+1);
{HIGHN日前的最高价=2*HIGHN+1日内最高价的最高值}
QY:=BACKSET(AAB,HIGHN+1);{若AA则将最近HIGHN+1周期置为1}
CC:=FILTER(QY,HIGHN) AND H=HHV(H,HIGHN+1);
{QY的HIGHN日过滤 AND 最高价=HIGHN+1日内最高价的最高值}
DRAWICON(CC,H*1.005,2);
DDD:=BARSLAST(CC);{上次CC距今天数}
GDTS:=IF(CC,CURRBARSCOUNT,0);{如果CC,返回到最后交易日的周,否则返回0}
DINGBU:=IF(DDD,REF(H,DDD),H);{顶部}
DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS);
DINGBU1:=REF(DINGBU,DDD+1);
GDCS1:=CONST(DINGBUTS);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
GDCS2:=CONST(DINGBUTS1);
DINGBU2:=REF(DINGBU1,DDD+1);
MMM:=IF(CURRBARSCOUNT GDCS2,0,1);
高点压力:DRAWLINE(CURRBARSCOUNT=GDCS2,H,CURRBARSCOUNT=GDCS1,H,1) COLORGREEN,DOTLINE;
压力A:DRAWLINE(CURRBARSCOUNT=GDCS2,H,ISLASTBAR,REF(H,GDCS2-1),1),COLOR0055FF,DOTLINE;
压力B:DRAWLINE(CURRBARSCOUNT=GDCS1,H,ISLASTBAR,REF(H,GDCS1-1),1),COLORYELLOW,DOTLINE;
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(CC1,L*0.98,1);}
DD1:=BARSLAST(CC1);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
YDB:=IF(DD1,REF(L,DD1),L);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
DDCS1:=CONST(DDTS1);
ZDB:=REF(YDB,DD1+1);
DDTS2:=REF(DDTS1,DD1+1);
DDCS2:=CONST(DDTS2);
低点支撑:DRAWLINE(CURRBARSCOUNT=DDCS2,L,CURRBARSCOUNT=DDCS1,L,1) COLORRED,DOTLINE;
ZGSTAR:=(高点压力+低点支撑)/2;
ZGEND:=CONST((高点压力+低点支撑)/2);
STARDAY:=IF(DDCS2 GDCS2,DDCS2,GDCS2);
中轨:DRAWLINE(CURRBARSCOUNT=STARDAY,ZGSTAR,ISLASTBAR,ZGEND,1),POINTDOT,COLORFFBBFF,LINETHICK1;
TTT:=6;
A1:=REF(HIGH,6)=HHV(HIGH,2*TTT+1); B1:=FILTER(A1,TTT); C1:=BACKSET(B1,TTT+1); D1:=FILTER(C1,TTT);
A2:=REF(LOW,TTT)=LLV(LOW,2*TTT+1); B2:=FILTER(A2,TTT); C2:=BACKSET(B2,TTT+1); D2:=FILTER(C2,TTT);
E1:=(REF(LLV(LOW,2*TTT),1)+REF(HHV(HIGH,2*TTT),1))/2; E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT(D2 AND E1 =E2)) OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
L1:=(D2 AND NOT(D1 AND E1 E2)); H2:=D1 AND NOT(D2 AND E1 =E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1) 0,LLVBARS(IF(L1,LOW,10000),X1));
G1:=F1 REF(F1,1); I1:=BACKSET(G1,2); LD:=I1 REF(I1,1);
L2:=LD OR BARSTATUS OR BARSCOUNT(CLOSE)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2) 0,HHVBARS(IF(H2,HIGH,0),X2));
G2:=F2 REF(F2,1); I2:=BACKSET(G2,2); HD:=I2 REF(I2,1);
UU:=BACKSET(BARSTATUS,BARSLAST(LD)+1);
VV:=UU REF(UU,1);
WW:=BACKSET(VV,REF(BARSLAST(LD),1)+2);
XX:=WW REF(WW,1);
UU2:=BACKSET(BARSTATUS,BARSLAST(HD)+1);
VV2:=UU2 REF(UU2,1);
WW2:=BACKSET(VV2,REF(BARSLAST(HD),1)+2);
XX2:=WW2 REF(WW2,1);
近低A:REF(L,BARSLAST(VV)),COLORWHITE,LINETHICK1,DOTLINE;
近低B:REF(L,BARSLAST(XX)),COLORLIRED,DOTLINE;
DRAWTEXT(CURRBARSCOUNT=10,高点压力,STRCAT('压力延伸:',CON2STR(高点压力,2))),COLORCYAN;
DRAWTEXT(CURRBARSCOUNT=15,低点支撑,STRCAT('支撑延伸:',CON2STR(低点支撑,2))),COLORLIRED;
DRAWTEXT(CURRBARSCOUNT=15,中轨,STRCAT('中轨:',CON2STR(中轨,2))),COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=10,压力A*0.995,STRCAT('压力A:',CON2STR(压力A,2))),COLORGREEN;
DRAWTEXT(CURRBARSCOUNT=15,压力B*0.995,STRCAT('压力B:',CON2STR(压力B,2))),COLORWHITE;
DRAWTEXT(CURRBARSCOUNT=15,近低A*1.005,STRCAT(' 近低A:',CON2STR(近低A,2))),COLORRED;
DRAWTEXT(CURRBARSCOUNT=10,近低B*1.005,STRCAT(' 近低B:',CON2STR(近低B,2))),COLOR0018D8;