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

自动画通道主图指标公式通道线划线公式[通达信公式]

相关标签: 主图通道指标公式 、 趋势通道指标大全 、 通达信趋势通道主图 、 涨停通道主图指标 、 趋势通道线指标设置 、 通达信趋势通道 、 趋势通道线划线公式 、 自动画线通道主图指标 、 通道线指标 、 通道线指标缩写 、 通道线的正确画法 、 经典通道指标公式 、

 

原理解析:

N赋值:13
UR赋值:6
LR赋值:2
TC1赋值:如果最高价=8*UR日内最高价的最高值,返回最高价,否则返回无效数
TC2赋值:上次TC1=最高价距今天数的最后一日取值设为常数+1
UPPER赋值:如果TC2=1,返回最高价,否则返回TC2-1日前的最高价的最后一日取值设为常数
BC1赋值:如果最低价=8*LR日内最低价的最低值,返回最低价,否则返回无效数
BC2赋值:上次BC1=最低价距今天数的最后一日取值设为常数+1
LOWER赋值:如果BC2=1,返回最低价,否则返回BC2-1日前的最低价的最后一日取值设为常数
LP赋值:到最后交易的周期<=BC2 AND 最低价=LOWER
HP赋值:到最后交易的周期<=TC2 AND 最高价=UPPER
当满足条件如果BC2>TC2,返回HP,否则返回LP时,在LOWER和UPPER位置之间画柱状线,宽度为0,0不为0则画空心柱.,COLOR628962
当满足条件如果BC2>TC2,返回LP,否则返回HP时,在LOWER和UPPER位置之间画柱状线,宽度为0,0不为0则画空心柱.,COLOR628962
NOD赋值:(如果TC2>BC2,返回TC2,否则返回BC2-如果TC2>BC2,返回BC2,否则返回TC2)
LR1赋值:收盘价的NOD+1日线性回归预测值
输出NP:如果到最后交易的周期<=BC2和TC2的较大值,返回如果TC2和BC2的较小值=1,返回LR1,否则返回TC2和BC2的较小值-1日前的LR1的最后一日取值设为常数,否则返回无效数,POINTDOT,COLOR93BDA8
LR2赋值:收盘价的NOD+1日线性回归斜率
LR3赋值:如果TC2和BC2的较小值=1,返回LR2,否则返回TC2和BC2的较小值-1日前的LR2的最后一日取值设为常数
输出FP:NP-LR3*(NOD),POINTDOT,COLOR93BDA8
输出EQU:(NP+FP)/2,POINTDOT,COLOR93BDA8
AD赋值:NP-FP的绝对值
 
DBL赋值:上次BC1不等于无效数距今天数+1
DBH赋值:上次TC1不等于无效数距今天数+1
BSP赋值:如果BC2>TC2,返回DBL,否则返回DBH-1
LRL赋值:如果NP>FP,返回FP+AD/NOD*BSP,否则返回FP-AD/NOD*BSP
AT1赋值:如果到最后交易的周期位于BC2和TC2之间ANDH>LRL,返回最高价,否则返回LRL
AT2赋值:BC2和TC2的较大值日内AT1-LRL的最高值
AT3赋值:上次AT1-LRL=AT2距今天数的最后一日取值设为常数
AT4赋值:如果AT3=0,返回最高价,否则返回AT3日前的最高价的最后一日取值设为常数
AT5赋值:如果AT3=0,返回AT1-LRL,否则返回AT3日前的AT1-LRL的最后一日取值设为常数
ATL赋值:LRL+AT5
UT1赋值:如果到最后交易的周期位于BC2和TC2之间ANDL<LRL,返回最低价,否则返回LRL
UT2赋值:BC2和TC2的较大值日内LRL-UT1的最高值
UT3赋值:上次LRL-UT1=UT2距今天数的最后一日取值设为常数
UT4赋值:如果UT3=0,返回最高价,否则返回UT3日前的最高价的最后一日取值设为常数
UT5赋值:如果UT3=0,返回LRL-UT1,否则返回UT3日前的LRL-UT1的最后一日取值设为常数
UTL赋值:LRL-UT5
RH赋值:如果到最后交易的周期>=BC2和TC2的较小值-10,返回ATL,否则返回BC2和TC2的较小值-11日前的ATL的最后一日取值设为常数
RL赋值:如果到最后交易的周期>=BC2和TC2的较小值-10,返回UTL,否则返回BC2和TC2的较小值-11日前的UTL的最后一日取值设为常数
输出中轨:如果NP>FP,返回如果LRL<=RH,返回LRL,否则返回无效数,否则返回如果LRL>=RL,返回LRL,否则返回无效数,COLOR628962
输出上轨:如果NP>FP,返回如果ATL<=RH,返回ATL,否则返回无效数,否则返回如果ATL>=RL,返回ATL,否则返回无效数,COLOR628962
输出下轨:如果NP>FP,返回如果UTL<=RH,返回UTL,否则返回无效数,否则返回如果UTL>=RL,返回UTL,否则返回无效数,COLOR628962
A1赋值:3日前的最高价=2*3+1日内最高价的最高值
B1赋值:A1的3日过滤
C1赋值:若B1则将最近3+1周期置为1
D1赋值:C1的3日过滤
A2赋值:3日前的最低价=2*3+1日内最低价的最低值
B2赋值:A2的3日过滤
C2赋值:若B2则将最近3+1周期置为1
D2赋值:C2的3日过滤
E1赋值:(1日前的2*3日内最低价的最低值+1日前的2*3日内最高价的最高值)/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
当满足条件LD时,在最低价位置画直线起点,当满足条件HD时,在最高价位置画直线终点,0表示是否延长.,画洋红色,线宽为1
当满足条件HD时,在最高价位置画直线起点,当满足条件LD时,在最低价位置画直线终点,0表示是否延长.,画洋红色,线宽为1
J1赋值:若是否最后一个周期则将最近上次HD距今天数和上次LD距今天数的较小值+1周期置为1
J2赋值:J1>1日前的J1
当满足条件J2时,在如果HD,返回最高价,否则返回最低价位置画直线起点,当满足条件是否最后一个周期时,在如果上次HD距今天数>上次LD距今天数,返回最高价,否则返回最低价位置画直线终点,0表示是否延长.,画白色,线宽为1
 

源码:


N:=13;
UR:=6;
LR:=2;
TC1:=IF(H=HHV(H,8*UR),H,DRAWNULL);
TC2:=CONST(BARSLAST(TC1=H))+1;
UPPER:=CONST(IF(TC2=1,H,REF(H,TC2-1)));
BC1:=IF(L=LLV(L,8*LR),L,DRAWNULL);
BC2:=CONST(BARSLAST(BC1=L))+1;
LOWER:=CONST(IF(BC2=1,L,REF(L,BC2-1)));
LP:=CURRBARSCOUNT<=BC2 AND L=LOWER;{低点定位}
HP:=CURRBARSCOUNT<=TC2 AND H=UPPER;{高点定位}
STICKLINE(IF(BC2>TC2,HP,LP),LOWER,UPPER,0,0),COLOR628962;
STICKLINE(IF(BC2>TC2,LP,HP),LOWER,UPPER,0,0),COLOR628962;
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));{用时}
LR1:=FORCAST(C,NOD+1);
NP:IF(CURRBARSCOUNT<=MAX(BC2,TC2),CONST(IF(MIN(TC2,BC2)=1,LR1,REF(LR1,MIN(TC2,BC2)-1))),DRAWNULL),POINTDOT,COLOR93BDA8;{近点}{分析家公式网wwwcom}
LR2:=SLOPE(C,NOD+1);
LR3:=CONST(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)));
FP:NP-LR3*(NOD),POINTDOT,COLOR93BDA8;{远点}
EQU:(NP+FP)/2,POINTDOT,COLOR93BDA8;
AD:=ABS(NP-FP);{高差};
DBL:=BARSLAST(BC1!=DRAWNULL)+1;
DBH:=BARSLAST(TC1!=DRAWNULL)+1;
BSP:=IF(BC2>TC2,DBL,DBH)-1;
LRL:=IF(NP>FP,FP+AD/NOD*BSP,FP-AD/NOD*BSP);
AT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND H>LRL,H,LRL);
AT2:=HHV(AT1-LRL,MAX(BC2,TC2));
AT3:=CONST(BARSLAST(AT1-LRL=AT2));
AT4:=CONST(IF(AT3=0,H,REF(H,AT3)));
AT5:=CONST(IF(AT3=0,AT1-LRL,REF(AT1-LRL,AT3)));
ATL:=LRL+AT5;
UT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND L<LRL,L,LRL);
UT2:=HHV(LRL-UT1,MAX(BC2,TC2));
UT3:=CONST(BARSLAST(LRL-UT1=UT2));
UT4:=CONST(IF(UT3=0,H,REF(H,UT3)));
UT5:=CONST(IF(UT3=0,LRL-UT1,REF(LRL-UT1,UT3)));
UTL:=LRL-UT5;
RH:=IF(CURRBARSCOUNT>=MIN(BC2,TC2)-10,ATL,CONST(REF(ATL,MIN(BC2,TC2)-11)));{限制高}
RL:=IF(CURRBARSCOUNT>=MIN(BC2,TC2)-10,UTL,CONST(REF(UTL,MIN(BC2,TC2)-11)));{限制低}
中轨:IF(NP>FP,IF(LRL<=RH,LRL,DRAWNULL),IF(LRL>=RL,LRL,DRAWNULL)),COLOR628962;
上轨:IF(NP>FP,IF(ATL<=RH,ATL,DRAWNULL),IF(ATL>=RL,ATL,DRAWNULL)),COLOR628962;
下轨:IF(NP>FP,IF(UTL<=RH,UTL,DRAWNULL),IF(UTL>=RL,UTL,DRAWNULL)),COLOR628962;
{极品波浪指标,有此公式必发达}
A1:=REF(HIGH,3)=HHV(HIGH,2*3+1);
B1:=FILTER(A1,3);
C1:=BACKSET(B1,3+1);
D1:=FILTER(C1,3);{高点}
A2:=REF(LOW,3)=LLV(LOW,2*3+1);
B2:=FILTER(A2,3);
C2:=BACKSET(B2,3+1);
D2:=FILTER(C2,3);{低点}
E1:=(REF(LLV(LOW,2*3),1)+REF(HHV(HIGH,2*3),1))/2;
E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT((D2 AND E1>=E2))) OR ISLASTBAR 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 ISLASTBAR 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);{过滤后高点}
DRAWLINE(LD,L,HD,H,0),COLORMAGENTA,LINETHICK1;
DRAWLINE(HD,H,LD,L,0),COLORMAGENTA,LINETHICK1;
J1:=BACKSET(ISLASTBAR ,MIN(BARSLAST(HD),BARSLAST(LD))+1);
J2:=J1>REF(J1,1);
DRAWLINE(J2,IF(HD,H,L),ISLASTBAR ,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),COLORWHITE,LINETHICK1;

 

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

 

 

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

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

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

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

 


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

相关文章

    没有相关内容