在技术分析中,识别关键的高低点并画出压力支撑线,是判断趋势结构的重要方法。今天分享一套通达信格式的主图指标公式,它能够自动识别多层次的阶段性高点和低点,并以此为基础绘制出短期、中期、长期三条压力线和三条支撑线。同时,该公式还集成了涨停变色、主力进场提示等辅助功能。需要强调的是,任何技术指标都是对历史数据的归纳,不能作为未来走势的预测依据,请谨慎使用。
指标公式源码(通达信格式)
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;{高低点出现在同一K线上时可作取舍}
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,0),COLORGREEN;
长期压力:DRAWLINE(S4,H,S3,H,1),COLORFF00FF;
长期支撑:DRAWLINE(U4,L,U3,L,0),COLORGREEN;
DRAWICON(S1,H*1.01,6);
DRAWICON(S2,H*1.01,6);
DRAWICON(S3,H*1.01,6);
DRAWICON(S4,H*1.01,6);
DRAWICON(U1,L*0.99,9);
DRAWICON(U2,L*0.99,9);
DRAWICON(U3,L*0.99,9);
DRAWICON(U4,L*0.99,9);
涨停:= IF(REF(C,1) * 1.1 - C<0.01,1,0);
STICKLINE(涨停,OPEN,CLOSE,4,0),COLORRED;
STICKLINE(涨停,OPEN,CLOSE,3,0),COLORYELLOW;
STICKLINE(涨停,H,L,0,0),COLORYELLOW;
RSV:=(((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9))) * 100);
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
AA10:=MA(CLOSE,10);
BB10:=((ATAN((AA10 - REF(AA10,1))) * 3.1416) * 10);
短买:=CROSS(K,D) AND (BB10>1);
TT1:=5;
TT2:=4;
P:=((2)*(CLOSE) + HIGH + LOW + OPEN)/(5);
VGAR4:=LLV(LOW,TT1);
VGAR5:=HHV(HIGH,TT2);
散户:=EMA(((P - VGAR4)/(VGAR5 - VGAR4))*(100),T2);
庄家:=EMA((0.667)*(REF(散户,1)) + (0.333)*(散户),2);
CS:=(CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100;
主力:=(EMA(CS,3)-50)*5,LINETHICK2,COLORRED;
进场:=CROSS(主力,庄家) AND 短买;
DRAWLINE(进场,H,REF(进场,1),REF(H,1),1),NODRAW;
DRAWLINE(进场,L,REF(进场,1),REF(L,1),1),NODRAW;
DRAWICON(进场,L,9);
DRAWTEXT(进场,LOW-0.060*LOW,'主力进场'),COLORYELLOW,LINETHICK2;
一、高低点的自动识别与过滤
公式的核心在于通过波浪理论中的“峰谷”逻辑,自动寻找阶段性高点和低点。参数 N=5 定义了寻找局部极值的时间窗口。 - 高点识别:A1 判断当前K线的最高价是否为过去 2*N+1(即11根)K线中的最高值,且要求该高点出现在第 N 根之前(REF(H,N)),从而避免使用未来数据。通过 FILTER 和 BACKSET 的反复筛选,最终得到 D1 作为原始高点序列。
- 低点识别:同理,A2 判断最低价是否为11根K线中的最低值,经过过滤得到 D2 作为原始低点序列。
- 冲突处理:当同一根K线上同时出现高点和低点时,公式通过比较 E1(前后2N周期的高低点均值)和 E2(当前K线中点)来决定取舍。最终输出的 HD 和 LD 是经过滤后的有效高点和低点。
这一套算法避免了普通 HHV/LLV 函数容易产生的“连续同向标记”问题,使画出的压力支撑线更加清晰可靠。
二、多级压力支撑线的绘制逻辑
在获得有效高低点序列后,公式从最后一个K线(最新价)开始,向前回溯最近的四组高点和四组低点: - S1、S2、S3、S4 分别代表最近、前二、前三、前四的高点位置。
- U1、U2、U3、U4 分别代表最近、前二、前三、前四的低点位置。
然后利用 DRAWLINE 函数连接相应的高点或低点,形成三条压力线和三条支撑线: - 短期压力(红色):连接 S2 高点到 S1 高点,向右延长。
- 短期支撑(绿色):连接 U2 低点到 U1 低点。
- 中期压力(黄色):连接 S3 高点到 S2 高点。
- 中期支撑(绿色):连接 U3 低点到 U2 低点。
- 长期压力(洋红色):连接 S4 高点到 S3 高点。
- 长期支撑(绿色):连接 U4 低点到 U3 低点。
同时,在每个高低点位置用图标(笑脸或哭脸)进行标记。这种多周期压力支撑的叠加,可以帮助使用者快速识别当前价格所处的结构位置:例如价格位于短期支撑之上、中期压力之下,则可能处于区间震荡。
三、辅助信号:涨停标记与主力进场提示
除了核心的压力支撑画线,该公式还包含两个实用的辅助功能: 1. 涨停变色 - 定义 涨停 条件:当日收盘价较前一日收盘价上涨超过 9.9%(近似10%涨停)。
- 当触发时,K线实体被填充为红黄相间的颜色,引线变为黄色。这在主图上可以醒目地提示极端强势的波动。
2. “主力进场”信号 - 首先计算 RSV、K、D 构成经典的KDJ指标,再结合 10日线的切线角度(BB10>1) 得到 短买 条件,表示短期趋势向上且KDJ金叉。
- 然后构建一个“散户”线和“庄家”线:散户 是基于开盘、收盘、高低价的加权平均后,与5日低点、4日高点区间归一化的指数移动平均;庄家 是散户的平滑。最后定义 主力 为基于8日RSV的变异指标。
- 进场条件:CROSS(主力,庄家) AND 短买,即主力线上穿庄家线且短线买入信号共振。
- 满足条件时,在K线最低点下方标注 “主力进场” 文字,并画图标。同时用两条不可见的 DRAWLINE 连接前一次进场位置,用于跟踪。
需要注意的是,“主力”和“庄家”的命名是一种形象化表达,实际上只是不同周期的技术指标交叉,并不代表真实资金流向,使用者应理性看待。
四、指标的应用场景与局限
这套主图公式将结构分析(压力支撑)与动能分析(KDJ、角度、交叉)结合在一起,适合用于日线级别的盘后复盘。当价格接近某条压力或支撑线时,可以结合其他指标判断突破或回踩的有效性。而“主力进场”信号可作为短线情绪的辅助参考。
|