您现在的位置:程序化交易>> 股票公式>> 通达信>> 通达信公式>>正文内容

支撑压力自动划线主图公式代码源码[通达信公式]

相关标签: 压力支撑判断方法 、 精准的压力位和支撑位 、 压力位和支撑位图解 、 主图压力支撑自动划线 、 通达信趋势自动画线公式 、 最精准的支撑压力指标 、 顶底画线主图 、 压力支撑划线 、 通达信指标压力支撑主图 、 通达信支撑压力指标 、 特色压力支撑指标源码 、 支撑压力红绿灯主图指标 、

 

原理解析:

HIGHN赋值:10
LOWN赋值:10
HIGHDISPLAY赋值:0
LOWDISPLAY赋值:0
ZGDISPLAY赋值:0
MADISPLAY赋值:0
AAB赋值:HIGHN日前的最高价=2*HIGHN+1日内最高价的最高值
QY赋值:若AAB则将最近HIGHN+1周期置为1
CC赋值:QY的HIGHN日过滤 AND 最高价=HIGHN+1日内最高价的最高值
当满足条件CC时,在最高价*1.005位置画2号图标
DDD赋值:上次CC距今天数
GDTS赋值:如果CC,返回到最后交易的周期,否则返回0
DINGBU赋值:如果DDD,返回DDD日前的最高价,否则返回最高价
DINGBUTS赋值:如果DDD,返回DDD日前的GDTS,否则返回GDTS
DINGBU1赋值:DDD+1日前的DINGBU
GDCS1赋值:DINGBUTS的最后一日取值设为常数
DINGBUTS1赋值:DDD+1日前的DINGBUTS
GDCS2赋值:DINGBUTS1的最后一日取值设为常数
DINGBU2赋值:DDD+1日前的DINGBU1
MMM赋值:如果到最后交易的周期>GDCS2,返回0,否则返回1
输出高点压力:当满足条件到最后交易的周期=GDCS2时,在最高价位置画直线起点,当满足条件到最后交易的周期=GDCS1时,在最高价位置画直线终点,1表示是否延长. 画绿色,DOTLINE
输出压力A:当满足条件到最后交易的周期=GDCS2时,在最高价位置画直线起点,当满足条件是否最后一个周期时,在GDCS2-1日前的最高价位置画直线终点,1表示是否延长.,COLOR0055FF,DOTLINE
输出压力B:当满足条件到最后交易的周期=GDCS1时,在最高价位置画直线起点,当满足条件是否最后一个周期时,在GDCS1-1日前的最高价位置画直线终点,1表示是否延长.,画黄色,DOTLINE
AA1赋值:LOWN日前的最低价=2*LOWN+1日内最低价的最低值
QY1赋值:若AA1则将最近LOWN+1周期置为1
CC1赋值:QY1的LOWN日过滤 AND 最低价=LOWN+1日内最低价的最低值
DD1赋值:上次CC1距今天数
DDTS赋值:如果CC1,返回到最后交易的周期,否则返回0
YDB赋值:如果DD1,返回DD1日前的最低价,否则返回最低价
DDTS1赋值:如果DD1,返回DD1日前的DDTS,否则返回DDTS
DDCS1赋值:DDTS1的最后一日取值设为常数
ZDB赋值:DD1+1日前的YDB
DDTS2赋值:DD1+1日前的DDTS1
DDCS2赋值:DDTS2的最后一日取值设为常数
输出低点支撑:当满足条件到最后交易的周期=DDCS2时,在最低价位置画直线起点,当满足条件到最后交易的周期=DDCS1时,在最低价位置画直线终点,1表示是否延长. 画红色,DOTLINE
ZGSTAR赋值:(高点压力+低点支撑)/2
ZGEND赋值:(高点压力+低点支撑)/2的最后一日取值设为常数
STARDAY赋值:如果DDCS2<GDCS2,返回DDCS2,否则返回GDCS2
输出中轨:当满足条件到最后交易的周期=STARDAY时,在ZGSTAR位置画直线起点,当满足条件是否最后一个周期时,在ZGEND位置画直线终点,1表示是否延长.,POINTDOT,COLORFFBBFF,线宽为1
TTT赋值:6
A1赋值:6日前的最高价=2*TTT+1日内最高价的最高值
B1赋值:A1的TTT日过滤
C1赋值:若B1则将最近TTT+1周期置为1
D1赋值:C1的TTT日过滤
A2赋值:TTT日前的最低价=2*TTT+1日内最低价的最低值
B2赋值:A2的TTT日过滤
C2赋值:若B2则将最近TTT+1周期置为1
D2赋值:C2的TTT日过滤
E1赋值:(1日前的2*TTT日内最低价的最低值+1日前的2*TTT日内最高价的最高值)/2
E2赋值:(最高价+最低价)/2
H1赋值:(D1 AND 取反) OR 数据位置状态 OR 收盘价的有效数据周期数=1
L1赋值:(D2 AND 取反)
H2赋值:D1 AND 取反
X1赋值:1日前的上次H1距今天数+1
F1赋值:若H1ANDCOUNT(L1,X1)>0则将最近X1日内如果L1,返回最低价,否则返回10000距今天数周期置为1
G1赋值:F1>1日前的F1
I1赋值:若G1则将最近2周期置为1
LD赋值:I1>1日前的I1
L2赋值:LD OR 数据位置状态 OR 收盘价的有效数据周期数=1
X2赋值:1日前的上次L2距今天数+1
F2赋值:若L2ANDCOUNT(H2,X2)>0则将最近X2日内如果H2,返回最高价,否则返回0距今天数周期置为1
G2赋值:F2>1日前的F2
I2赋值:若G2则将最近2周期置为1
HD赋值:I2>1日前的I2
UU赋值:若数据位置状态则将最近上次LD距今天数+1周期置为1
VV赋值:UU>1日前的UU
WW赋值:若VV则将最近1日前的上次LD距今天数+2周期置为1
XX赋值:WW>1日前的WW
UU2赋值:若数据位置状态则将最近上次HD距今天数+1周期置为1
VV2赋值:UU2>1日前的UU2
WW2赋值:若VV2则将最近1日前的上次HD距今天数+2周期置为1
XX2赋值:WW2>1日前的WW2
输出近低A:上次VV距今天数日前的最低价,画白色,线宽为1,DOTLINE
输出近低B:上次XX距今天数日前的最低价,画淡红色,DOTLINE
当满足条件到最后交易的周期=8时,在高点压力位置书写文字,画青色
当满足条件到最后交易的周期=8时,在低点支撑位置书写文字,画淡红色
当满足条件到最后交易的周期=15时,在中轨位置书写文字,画黄色
当满足条件到最后交易的周期=20时,在压力A*0.995位置书写文字,画绿色
当满足条件到最后交易的周期=12时,在压力B*0.995位置书写文字,画蓝色
当满足条件到最后交易的周期=12时,在近低A*1.005位置书写文字,画红色
当满足条件到最后交易的周期=20时,在近低B*1.005位置书写文字,COLOR0018D8
 

源码:

 

HIGHN:=10;LOWN:=10;HIGHDISPLAY:=0;LOWDISPLAY:=0;ZGDISPLAY:=0;MADISPLAY:=0;
AAB:=REF(H,HIGHN)=HHV(H,2*HIGHN+1);
QY:=BACKSET(AAB,HIGHN+1);
CC:=FILTER(QY,HIGHN) AND H=HHV(H,HIGHN+1);
DRAWICON(CC,H*1.005,2);
DDD:=BARSLAST(CC);
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:=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);
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=8,高点压力,STRCAT('压力延伸:',CON2STR(高点压力,2))),COLORCYAN;
DRAWTEXT(CURRBARSCOUNT=8,低点支撑,STRCAT('支撑延伸:',CON2STR(低点支撑,2))),COLORLIRED;
DRAWTEXT(CURRBARSCOUNT=15,中轨,STRCAT('中轨:',CON2STR(中轨,2))),COLORYELLOW;
DRAWTEXT(CURRBARSCOUNT=20,压力A*0.995,STRCAT('压力A:',CON2STR(压力A,2))),COLORGREEN;
DRAWTEXT(CURRBARSCOUNT=12,压力B*0.995,STRCAT('压力B:',CON2STR(压力B,2))),COLORBLUE;
DRAWTEXT(CURRBARSCOUNT=12,近低A*1.005,STRCAT('←近低A:',CON2STR(近低A,2))),COLORRED;
DRAWTEXT(CURRBARSCOUNT=20,近低B*1.005,STRCAT('←近低B:',CON2STR(近低B,2))),COLOR0018D8;

{通达信支撑压力自动划线主图公式源码}

{通达信支撑压力自动划线主图公式源码}

 

公式导入教程: 【通达信公式源码导入方法教程】 【同花顺公式源码导入方法教程】 【大智慧新一代公式源码导入方法教程

 

 

有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友

可联系技术人员 QQ: 262069696  点击在线交流或微信:cxhjy888 进行 有偿收费 编写!(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)

怎么收费,代编流程等详情请点击查阅!

(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)

 


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容