编程思路破译 N赋值:5 A1赋值:N日前的最高价=2*N+1日内最高价的最高值 B1赋值:A1的N日过滤 C1赋值:若B1则将最近N+1周期置为1 D1赋值:C1的N日过滤 A2赋值:N日前的最低价=2*N+1日内最低价的最低值 B2赋值:A2的N日过滤 C2赋值:若B2则将最近N+1周期置为1 D2赋值:C2的N日过滤 E1赋值:(1日前的2*N日内最低价的最低值+1日前的2*N日内最高价的最高值)/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 R1赋值:若是否最后一个周期则将最近上次HD距今天数+1周期置为1 S1赋值:R1>1日前的R1 T1赋值:若是否最后一个周期则将最近上次LD距今天数+1周期置为1 U1赋值:T1>1日前的T1 R2赋值:若S1则将最近1日前的上次HD距今天数+2周期置为1 S2赋值:R2>1日前的R2 T2赋值:若U1则将最近1日前的上次LD距今天数+2周期置为1 U2赋值:T2>1日前的T2 T3赋值:若U2则将最近1日前的上次LD距今天数+2周期置为1 U3赋值:T3>1日前的T3 T4赋值:若U3则将最近1日前的上次LD距今天数+2周期置为1 U4赋值:T4>1日前的T4 R3赋值:若S2则将最近1日前的上次HD距今天数+2周期置为1 S3赋值:R3>1日前的R3 R4赋值:若S3则将最近1日前的上次HD距今天数+2周期置为1 S4赋值:R4>1日前的R4 输出短期压力:当满足条件S2时,在最高价位置画直线起点,当满足条件S1时,在最高价位置画直线终点,1表示是否延长.,画红色 输出短期支撑:当满足条件U2时,在最低价位置画直线起点,当满足条件U1时,在最低价位置画直线终点,1表示是否延长.,画绿色 输出中期压力:当满足条件S3时,在最高价位置画直线起点,当满足条件S2时,在最高价位置画直线终点,1表示是否延长.,画黄色 输出中期支撑:当满足条件U3时,在最低价位置画直线起点,当满足条件U2时,在最低价位置画直线终点,1表示是否延长.,画绿色 输出长期压力:当满足条件S4时,在最高价位置画直线起点,当满足条件S3时,在最高价位置画直线终点,1表示是否延长.,COLORFF00FF 输出长期支撑:当满足条件U4时,在最低价位置画直线起点,当满足条件U3时,在最低价位置画直线终点,1表示是否延长.,画绿色 当满足条件S1时,在最高价*1.01位置画2号图标 当满足条件S2时,在最高价*1.01位置画2号图标 当满足条件S3时,在最高价*1.01位置画2号图标 当满足条件S4时,在最高价*1.01位置画2号图标 当满足条件U1时,在最低价*0.99位置画1号图标 当满足条件U2时,在最低价*0.99位置画1号图标 当满足条件U3时,在最低价*0.99位置画1号图标 当满足条件U4时,在最低价*0.99位置画1号图标 程序源码 N:=5; A1:=REF(H,N)=HHV(H,2*N+1); B1:=FILTER(A1,N); C1:=BACKSET(B1,N+1); D1:=FILTER(C1,N); A2:=REF(L,N)=LLV(L,2*N+1); B2:=FILTER(A2,N); C2:=BACKSET(B2,N+1); D2:=FILTER(C2,N); E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; E2:=(H+L)/2; H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=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,L,10000),X1)); G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1); L2:=LD OR ISLASTBAR 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(ISLASTBAR,BARSLAST(HD)+1); S1:=R1>REF(R1,1); T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); U1:=T1>REF(T1,1); R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); S2:=R2>REF(R2,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); T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2); U4:=T4>REF(T4,1); R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); S3:=R3>REF(R3,1); R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2); S4:=R4>REF(R4,1); 短期压力:DRAWLINE(S2,H,S1,H,1),COLORRED; 短期支撑:DRAWLINE(U2,L,U1,L,1),COLORGREEN; 中期压力:DRAWLINE(S3,H,S2,H,1),COLORYELLOW; 中期支撑:DRAWLINE(U3,L,U2,L,1),COLORGREEN; 长期压力:DRAWLINE(S4,H,S3,H,1),COLORFF00FF; 长期支撑:DRAWLINE(U4,L,U3,L,1),COLORGREEN; DRAWICON(S1,H*1.01,2); DRAWICON(S2,H*1.01,2); DRAWICON(S3,H*1.01,2); DRAWICON(S4,H*1.01,2); DRAWICON(U1,L*0.99,1); DRAWICON(U2,L*0.99,1); DRAWICON(U3,L*0.99,1); DRAWICON(U4,L*0.99,1); 该公式包含未来函数:BACKSET 注: 馆内各种公式为学习编程而保存,实战使用前一定要看其中是否有未来函数并自己亲自测试成功率,决不能依据公式名称的描述和形容去投资,据此入市造成投资损失由投资者自己承担。 发文不易,如获益,欢迎赞赏,赞赏必复! |
|