未来函数检测结果如下:
该公式包含未来函数:BACKSET
笔周期:=3;
画趋势:=0;
A1:=REF(HIGH,3)=HHV(HIGH,笔周期*3+1);
B1:=FILTER(A1,3);
C1:=BACKSET(B1,3+1);
D1:=FILTER(C1,3);{高点}
A2:=REF(LOW,3)=LLV(LOW,笔周期*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;{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS=2 OR BARSCOUNT(CLOSE)=1;
H2:=D1 AND NOT(D2 AND E1>=E2);
L1:=D2 AND NOT(D1 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=2 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),COLORYELLOW,LINETHICK1;
DRAWLINE(HD,H,LD,L,0),COLORYELLOW,LINETHICK1;
J1:=BACKSET(BARSTATUS=2,MIN(BARSLAST(HD),BARSLAST(LD))+1);
J2:=J1>REF(J1,1);
A3:=H;
B3:=REF(H,REF(BARSLAST(HD),1)+1)>REF(H,REF(BARSLAST(HD),1)+2+REF(BARSLAST(HD),REF(BARSLAST(HD),1)+2));
D3:=A3 AND B3 AND HD;
E3:=BACKSET(D3,REF(BARSLAST(HD),1)+2);
HH:=E3>REF(E3,1);{找出全部长期高点}
A4:=L>REF(L,REF(BARSLAST(LD),1)+1);
B4:=REF(L,REF(BARSLAST(LD),1)+1);
D4:=A4 AND B4 AND LD;
E4:=BACKSET(D4,REF(BARSLAST(LD),1)+2);
LL:=E4>REF(E4,1);{找出全部长期低点}
H3:=HH OR BARSTATUS=2 OR BARSCOUNT(C)=1; {后面进行过滤,方法同前。只是不用考虑高低点出现在同一K线}
X3:=REF(BARSLAST(H3),1)+1;
F3:=BACKSET(H3 AND COUNT(LL,X3)>0,LLVBARS(IF(LL,L,POW(10,20)),X3));
G3:=F3>REF(F3,1); I3:=BACKSET(G3,2);
LZ:=I3>REF(I3,1); {长期低点,也可供引用}
L4:=LZ OR BARSTATUS=2 OR BARSCOUNT(C)=1;
X4:=REF(BARSLAST(L4),1)+1;
F4:=BACKSET(L4 AND COUNT(HH,X4)>0,HHVBARS(IF(HH,H,-POW(10,20)),X4));
G4:=F4>REF(F4,1); I4:=BACKSET(G4,2); HZ:=I4>REF(I4,1);{长期高点,也可供引用}
K1:=BACKSET(BARSTATUS=2,MIN(BARSLAST(HZ),BARSLAST(LZ))+1); K2:=K1>REF(K1,1);
UU:=BACKSET(BARSTATUS=2,BARSLAST(LD)+1);
VV:=UU>REF(UU,1);
WW:=BACKSET(VV,REF(BARSLAST(LD),1)+2);
XX:=WW>REF(WW,1);
WWQ:=BACKSET(XX,REF(BARSLAST(LD),1)+2);
XXQ:=WWQ>REF(WWQ,1);
下轨:=DRAWLINE(XX,L,VV,L,1),COLORMAGENTA,LINETHICK2;{画趋势线}
UU2:=BACKSET(BARSTATUS=2,BARSLAST(HD)+1);
VV2:=UU2>REF(UU2,1);
WW2:=BACKSET(VV2,REF(BARSLAST(HD),1)+2);
XX2:=WW2>REF(WW2,1);
WW3Q:=BACKSET(XX2,REF(BARSLAST(HD),1)+2);
XX3Q:=WW3Q>REF(WW3Q,1);
WW4Q:=BACKSET(XX3Q,REF(BARSLAST(HD),1)+2);
XX4Q:=WW4Q>REF(WW4Q,1);
上轨:=DRAWLINE(XX2,H,VV2,H,1),COLORMAGENTA,LINETHICK2;{画趋势线};
上轨1:=DRAWLINE(XX2,H,VV2,H,1);
Q0:=BARSLAST(XX2>0);
Q1:=BARSLAST(XX>0);
Q2:=BARSLAST(WW2>0);
Q3:=BARSLAST(VV>0);
Q4:=BARSLAST(XXQ>0);
Q5:=BARSLAST(XX3Q>0);
Q6:=BARSLAST(XX4Q>0);
近期低:REF(L,BARSLAST(VV)),DOTLINE,COLOR99FF66;
近期高:REF(H,BARSLAST(VV2)),DOTLINE,COLOR99FF66;
上次低:REF(L,BARSLAST(XX)),DOTLINE,COLORFF66FF;
上次高:REF(H,BARSLAST(XX2)),DOTLINE,COLORFF66FF;
ABC:=IF(Q5>Q4,REF(L,BARSLAST(XXQ)),0),DOTLINE,COLORCYAN;
①②③:=IF(Q5<Q4,REF(H,BARSLAST(XX3Q)),0),DOTLINE,COLORCYAN;
笔:DRAWLINE(J2,IF(HD,H,L),BARSTATUS=2,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),DOTLINE,COLORYELLOW,LINETHICK1;
DRAWTEXT( VV=1 AND Q0>Q1,L,'C')COLORMAGENTA;
DRAWTEXT(VV2=1 AND Q0>Q1,H,'B')COLORMAGENTA;
DRAWTEXT( XX=1 AND Q0>Q1,L,'A')COLORMAGENTA;
DRAWTEXT(XX2=1 AND Q5>Q4 ,H,'◆2')COLORMAGENTA;
DRAWTEXT(XXQ=1 AND Q5>Q4 ,L,'◆1')COLORMAGENTA;
DRAWTEXT( VV=1 AND Q0<Q1,L,'B-')COLORMAGENTA;
DRAWTEXT(VV2=1 AND Q0<Q1,H,'C-')COLORMAGENTA;
DRAWTEXT(XX2=1 AND Q0<Q1,H,'A-')COLORMAGENTA;
DRAWTEXT(XX=1 AND Q5<Q4,L,'◆2')COLORMAGENTA;
DRAWTEXT(XX3Q=1 AND Q5<Q4,H,'◆1')COLORMAGENTA;
V00:=HIGH<REF(HIGH,1) AND LOW<REF(LOW,1);
V01:=HIGH<REF(HIGH,1) AND LOW>REF(LOW,1);
V02:=HIGH>REF(HIGH,1) AND LOW<REF(LOW,1);
V03:=HIGH>REF(HIGH,1) AND LOW>REF(LOW,1);
V04:=REF(HIGH,2)<HIGH AND REF(LOW,2)<LOW AND REF(HIGH,2)>REF(HIGH,1) AND REF(LOW,2) < REF(LOW,1);
V1:=COUNT(V00,3)>=1 AND LLVBARS(LOW,3)=1 AND V03;
V2:=COUNT(V00,4)>=1 AND LLVBARS(LOW,4)=2 AND V04;
V3:=COUNT(V00,4)>=1 AND COUNT(V01 OR V02,4)=1 AND LLVBARS(LOW,4)=1 AND V03;
V4:=COUNT(V00,5)>=1 AND COUNT(V01 OR V02,5)=2 AND LLVBARS(LOW,5)=2 AND V04;
XG1:=V1 OR V2 OR V3 OR V4;
XG2:=C>REF(HIGH,1);
XG:=XG1 AND XG2;
{收敛突破:=上次低<近期低 AND 上次高>近期高 AND CROSS(C,上轨) AND C>O;
DRAWTEXT(收敛突破=1,L,'收敛突破'),COLORYELLOW;}
突破:=CROSS(C,近期高) AND C>O;
STICKLINE(突破,OPEN,CLOSE,2.8,0),COLORMAGENTA;
强势突破:=上次低<近期低 AND 上次高<近期高 AND CROSS(C,近期高) AND C>O;
STICKLINE(强势突破,OPEN,CLOSE,2.8,0),COLORMAGENTA;
DRAWTEXT(强势突破=1,H,'强势突破'),COLORYELLOW;
{反弹突破:=CROSS(C,上次低) AND C>O;
STICKLINE(反弹突破,OPEN,CLOSE,2.8,1),COLORMAGENTA;
STICKLINE(反弹突破,OPEN,CLOSE,1,1),COLORWHITE;
DRAWTEXT(反弹突破=1,L,'反弹突破'),COLORYELLOW;}
DRAWTEXT(突破=1,L,' 突破'),COLORYELLOW;
一阳定势:=CROSS(C,近期高) AND CROSS(C,上次高) AND C>O;
STICKLINE(一阳定势,OPEN,CLOSE,2.8,0),COLORMAGENTA;
DRAWTEXT(一阳定势=1,(OPEN+CLOSE)/2,' 一阳定势'),COLORRED;
STICKLINE(一阳定势,OPEN,CLOSE,1,0),COLORYELLOW;
STICKLINE(强势突破,OPEN,CLOSE,1,0),COLORYELLOW;
原理解析:
笔周期赋值:3
画趋势赋值:0
A1赋值:3日前的最高价=笔周期*3+1日内最高价最高值
B1赋值:A1的3过滤
C1赋值:BACKSET(B1,3+1)
D1赋值:C1的3过滤
{高点}
A2赋值:3日前的最低价=笔周期*3+1日内最低价最低值
B2赋值:A2的3过滤
C2赋值:BACKSET(B2,3+1)
D2赋值:C2的3过滤
{低点}
E1赋值:(REF(2*3日内最低价最低值,1)+REF(2*3日内最高价最高值,1))/2
E2赋值:(最高价+最低价)/2
{高低点出现在同一K线上时可作取舍}
H1赋值:(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS=2 OR 收盘价的有效数据周期数=1
H2赋值:D1 AND NOT(D2 AND E1>=E2)
L1赋值:D2 AND NOT(D1 AND E1=E2)
X1赋值:REF(上次H1距今天数,1)+1
如果L1返回最低价否则返回10000
G1赋值:F1>1日前的F1
I1赋值:BACKSET(G1,2)
LD赋值:I1>1日前的I1
{过滤后低点}
L2赋值:LD OR BARSTATUS=2 OR 收盘价的有效数据周期数=1
X2赋值:REF(上次L2距今天数,1)+1
如果H2返回最高价否则返回0
G2赋值:F2>1日前的F2
I2赋值:BACKSET(G2,2)
HD赋值:I2>1日前的I2
{过滤后高点}
DRAWLINE(LD,L,HD,H,0),COLORYELLOW,LINETHICK1
DRAWLINE(HD,H,LD,L,0),COLORYELLOW,LINETHICK1
J1赋值:BACKSET(BARSTATUS=2,MIN(上次HD距今天数,BARSLAST(LD))+1)
J2赋值:J1>1日前的J1
A3赋值:H
B3赋值:REF(H,REF(上次HD距今天数,1)+1)>REF(H,REF(上次HD距今天数,1)+2+REF(上次HD距今天数,REF(上次HD距今天数,1)+2))
D3赋值:A3 AND B3 AND HD
E3赋值:BACKSET(D3,REF(上次HD距今天数,1)+2)
HH赋值:E3>1日前的E3
{找出全部长期高点}
A4赋值:L>REF(L,REF(上次LD距今天数,1)+1)
B4赋值:REF(L,REF(上次LD距今天数,1)+1)
D4赋值:A4 AND B4 AND LD
E4赋值:BACKSET(D4,REF(上次LD距今天数,1)+2)
LL赋值:E4>1日前的E4
{找出全部长期低点}
H3赋值:HH OR BARSTATUS=2 OR C的有效数据周期数=1
{后面进行过滤,方法同前。只是不用考虑高低点出现在同一K线}
X3赋值:REF(上次H3距今天数,1)+1
F3赋值:BACKSET(H3 AND 统计X3日满足LL的天数>0,LLVBARS(IF(LL,L,POW(10,20)),X3))
G3赋值:F3>1日前的F3
I3赋值:BACKSET(G3,2)
LZ赋值:I3>1日前的I3
{长期低点,也可供引用}
L4赋值:LZ OR BARSTATUS=2 OR C的有效数据周期数=1
X4赋值:REF(上次L4距今天数,1)+1
F4赋值:BACKSET(L4 AND 统计X4日满足HH的天数>0,HHVBARS(IF(HH,H,-POW(10,20)),X4))
G4赋值:F4>1日前的F4
I4赋值:BACKSET(G4,2)
HZ赋值:I4>1日前的I4
{长期高点,也可供引用}
K1赋值:BACKSET(BARSTATUS=2,MIN(上次HZ距今天数,BARSLAST(LZ))+1)
K2赋值:K1>1日前的K1
UU赋值:BACKSET(BARSTATUS=2,上次LD距今天数+1)
VV赋值:UU>1日前的UU
WW赋值:BACKSET(VV,REF(上次LD距今天数,1)+2)
XX赋值:WW>1日前的WW
WWQ:=BACKSET(XX,REF(上次LD距今天数,1)+2)
XXQ:=WWQ>1日前的WWQ
下轨赋值:DRAWLINE(XX,L,VV,L,1),画洋红色,LINETHICK2
{画趋势线}
UU2:=BACKSET(BARSTATUS=2,上次HD距今天数+1)
VV2:=UU2>1日前的UU2
WW2:=BACKSET(VV2,REF(上次HD距今天数,1)+2)
XX2赋值:WW2>1日前的WW2
WW3Q:=BACKSET(XX2,REF(上次HD距今天数,1)+2)
XX3Q:=WW3Q>1日前的WW3Q
WW4Q:=BACKSET(XX3Q,REF(上次HD距今天数,1)+2)
XX4Q:=WW4Q>1日前的WW4Q
上轨赋值:DRAWLINE(XX2,H,VV2,H,1),画洋红色,LINETHICK2
{画趋势线}
上轨1:=DRAWLINE(XX2,H,VV2,H,1)
Q0赋值:上次XX2>0距今天数
Q1赋值:上次XX>0距今天数
Q2赋值:上次WW2>0距今天数
Q3赋值:上次VV>0距今天数
Q4赋值:上次XXQ>0距今天数
Q5赋值:上次XX3Q>0距今天数
Q6赋值:上次XX4Q>0距今天数
输出近期低:REF(L,上次VV距今天数),DOTLINE,COLOR99FF66
输出近期高:REF(H,上次VV2距今天数),DOTLINE,COLOR99FF66
输出上次低:REF(L,上次XX距今天数),DOTLINE,COLORFF66FF
输出上次高:REF(H,上次XX2距今天数),DOTLINE,COLORFF66FF
ABC赋值:IF(Q5>Q4,REF(L,上次XXQ距今天数),0),DOTLINE,画青色
①②③赋值:IF(Q5
当满足条件 VV=1 AND Q0>Q1时,在L和'C'位置书写文字
当满足条件VV2=1 AND Q0>Q1时,在H和'B'位置书写文字
当满足条件 XX=1 AND Q0>Q1时,在L和'A'位置书写文字
当满足条件XX2=1 AND Q5>Q4 时,在H和'◆2'位置书写文字
当满足条件XXQ=1 AND Q5>Q4 时,在L和'◆1'位置书写文字
当满足条件 VV=1 AND Q0
V01赋值:最高价<1日前的最高价 AND 最低价>1日前的最低价
V02赋值:最高价>1日前的最高价 AND 最低价<1日前的最低价
V03赋值:最高价>1日前的最高价 AND 最低价>1日前的最低价
V04赋值:2日前的最高价<最高价 AND 2日前的最低价<最低价 AND 2日前的最高价>1日前的最高价 AND 2日前的最低价 < 1日前的最低价
V1赋值:统计3日满足V00的天数>=1 AND LLVBARS(最低价,3)=1 AND V03
V2赋值:统计4日满足V00的天数>=1 AND LLVBARS(最低价,4)=2 AND V04
V3赋值:统计4日满足V00的天数>=1 AND 统计4日满足V01 OR V02的天数=1 AND LLVBARS(最低价,4)=1 AND V03
V4赋值:统计5日满足V00的天数>=1 AND 统计5日满足V01 OR V02的天数=2 AND LLVBARS(最低价,5)=2 AND V04
XG1赋值:V1 OR V2 OR V3 OR V4
XG2赋值:C>1日前的最高价
XG赋值:XG1 AND XG2
{收敛突破赋值:上次低<近期低 AND 上次高>近期高 AND C上穿上轨 AND C>O
当满足条件收敛突破=1时,在L和'收敛突破'位置书写文字
}
突破赋值:C上穿近期高 AND C>O
当满足条件突破时,在开盘价和收盘价之间画柱状线
强势突破赋值:上次低<近期低 AND 上次高<近期高 AND C上穿近期高 AND C>O
当满足条件强势突破时,在开盘价和收盘价之间画柱状线
当满足条件强势突破=1时,在H和'强势突破'位置书写文字
{反弹突破赋值:C上穿上次低 AND C>O
当满足条件反弹突破时,在开盘价和收盘价之间画柱状线
当满足条件反弹突破时,在开盘价和收盘价之间画柱状线
当满足条件反弹突破=1时,在L和'反弹突破'位置书写文字
当满足条件突破=1时,在L和' 突破'位置书写文字
一阳定势赋值:C上穿近期高 AND C上穿上次高 AND C>O
当满足条件一阳定势时,在开盘价和收盘价之间画柱状线
DRAWTEXT(一阳定势=1,(开盘价+收盘价)/2,' 一阳定势'),画红色
当满足条件一阳定势时,在开盘价和收盘价之间画柱状线
当满足条件强势突破时,在开盘价和收盘价之间画柱状线