通达信公式划线打天下
N:=12;
一线:(CLOSE-MA(CLOSE,N))/MA(CLOSE,N)*100;
A1:=REF(一线,2)=HHV(一线,2*2+1); B1:=FILTER(A1,2); C1:=BACKSET(B1,2+1); D1:=FILTER(C1,2);{高}
A2:=REF(一线,2)=LLV(一线,2*2+1); B2:=FILTER(A2,2); C2:=BACKSET(B2,2+1); D2:=FILTER(C2,2);{低}
H1:=(D1 AND NOT(D2)) OR BARSTATUS=2 OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1)); H2:=D1 AND NOT(D2); X1:=REF(BARSLAST(H1),1)+1;
F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,L,10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1);{过滤后低点}
L2:=LD OR BARSTATUS=2 OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,H,0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1);{过滤后高点}
R1:=BACKSET(BARSTATUS=2,BARSLAST(HD)+1); S1:=R1>REF(R1,1); {前一高}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); S2:=R2>REF(R2,1); {前二高}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); S3:=R3>REF(R3,1); {前三高}
T1:=BACKSET(BARSTATUS=2,BARSLAST(LD)+1); U1:=T1>REF(T1,1); {前一低}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); U2:=T2>REF(T2,1); {前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2); U3:=T3>REF(T3,1); {前三低};
{-----------------【图解模板】---------------------}
压一:DRAWLINE(S2,一线,S1,一线,1),COLOR00B5B9,COLORRED; {压力1}
压二:DRAWLINE(S3,一线,S2,一线,1),COLOR009AFF; {压力2}
撑一:DRAWLINE(U2,一线,U1,一线,1),COLORFF68FF;{支撑1}
撑二:DRAWLINE(U3,一线,U2,一线,1),COLORFFC800;{支撑2};
DRAWLINE(U2,一线,0,0,3),POINTDOT,COLORFFAFFF; {启动直线}
IF(C>REF(C,1),一线,DRAWNULL),COLORWHITE;
未来函数检测结果如下:
该公式包含未来函数:BACKSET
解密、编写股票、期货策略请联系QQ或微信同号:88652583
相关股票指标公式
原理解析:
N赋值:12
输出
一线:(收盘价-收盘价的N日简单移动平均)/收盘价的N日简单移动平均*100
A1赋值:2日前的一线=2*2+1日内一线最高值
B1赋值:A1的2过滤
C1赋值:BACKSET(B1,2+1)
D1赋值:C1的2过滤
{高}
A2赋值:2日前的一线=2*2+1日内一线最低值
B2赋值:A2的2过滤
C2赋值:BACKSET(B2,2+1)
D2赋值:C2的2过滤
{低}
H1赋值:(D1 AND NOT(D2)) OR BARSTATUS=2 OR C的有效数据周期数=1
L1赋值:(D2 AND NOT(D1))
H2赋值:D1 AND NOT(D2)
X1赋值:REF(上次H1距今天数,1)+1
如果L1返回L否则返回10000
G1赋值:F1>1日前的F1
I1赋值:BACKSET(G1,2)
LD赋值:I1>1日前的I1
{过滤后低点}
L2赋值:LD OR BARSTATUS=2 OR C的有效数据周期数=1
X2赋值:REF(上次L2距今天数,1)+1
如果H2返回H否则返回0
G2赋值:F2>1日前的F2
I2赋值:BACKSET(G2,2)
HD赋值:I2>1日前的I2
{过滤后高点}
R1赋值:BACKSET(BARSTATUS=2,上次HD距今天数+1)
S1赋值:R1>1日前的R1
{前一高}
R2赋值:BACKSET(S1,REF(上次HD距今天数,1)+2)
S2赋值:R2>1日前的R2
{前二高}
R3赋值:BACKSET(S2,REF(上次HD距今天数,1)+2)
S3赋值:R3>1日前的R3
{前三高}
T1赋值:BACKSET(BARSTATUS=2,上次LD距今天数+1)
U1赋值:T1>1日前的T1
{前一低}
T2赋值:BACKSET(U1,REF(上次LD距今天数,1)+2)
U2赋值:T2>1日前的T2
{前二低}
T3赋值:BACKSET(U2,REF(上次LD距今天数,1)+2)
U3赋值:T3>1日前的T3
{前三低}
输出
{-----------------【图解模板】---------------------}
压一:DRAWLINE(S2,一线,S1,一线,1),COLOR00B5B9,画红色
输出{压力1}
压二:DRAWLINE(S3,一线,S2,一线,1),COLOR009AFF
输出{压力2}
撑一:DRAWLINE(U2,一线,U1,一线,1),COLORFF68FF
输出{支撑1}
撑二:DRAWLINE(U3,一线,U2,一线,1),COLORFFC800
{支撑2}
DRAWLINE(U2,一线,0,0,3),POINTDOT,COLORFFAFFF
{启动直线}
IF(C>1日前的C,一线,DRAWNULL),画白色