通达信“平台大阳线突破”指标源码视频精讲:从逻辑到编写,一篇讲透


合规提示:本文内容为通达信公式编写技术的交流分享,所有代码仅用于学习研究,不构成任何投资建议。股市有风险,投资需谨慎。请务必在模拟环境中充分验证后再考虑实盘应用。
在通达信公式编写中,突破类指标始终是实战应用的热门。今天我们来拆解一个经典的“平台大阳线突破”信号——识别股价经过一段时间窄幅整理后,突然以一根大阳线向上启动。我们将从零写出完整代码,并分享关键编写技巧。
一、战法逻辑:平台整理 + 放量大阳线
“平台大阳线突破”的核心条件有三:
- 平台整理:在过去N个交易日内(默认10天),股价波动幅度小于8%(最高收盘价 / 最低收盘价 < 1.08)。
- 突破前高:当前收盘价超过整理期间的最高收盘价。
- 单日涨幅:当日涨幅大于5%。
这三者叠加,意味着股价在充分蓄势后,以有力度的阳线向上脱离成本区。下面我们一步步写出通达信公式。
二、核心源码逐行解析(含编写技巧)
{1. 定义计算周期(可调参数)}N:=10;{2. 获取平台期间的最高、最低收盘价}平台最高:=HHV(C,N);平台最低:=LLV(C,N);
编写技巧①:用HHV/LLV代替FINDHIGH/FINDLOW 很多初学会误用FINDHIGH和FINDLOW,这两个函数返回的是“第几根K线的位置”,而不是价格数值。取指定周期内的最高价/最低价,直接用HHV和LLV最简洁高效。
{3. 计算平台波动幅度}涨跌幅度:=平台最高/平台最低;{4. 平台条件:幅度小于8%(即1.08)}平台条件:=涨跌幅度<1.08;
编写技巧②:用比值而非差值衡量波动 直接比较平台最高 - 平台最低会受到股价绝对值影响,比如10元的股票差0.8元和100元的股票差0.8元意义完全不同。用比值(最高/最低)统一了波动尺度,更适合不同价位的股票。
{5. 突破信号:收盘价创平台新高,且当日涨幅大于5%}突破信号:=C>平台最高 AND (C/REF(C,1)-1)>0.05;{6. 最终选股条件}XG: 平台条件 AND 突破信号;
编写技巧③:突破用“大于”而不用“CROSS”C>平台最高表示收盘价已经站上平台最高价,这是“突破确认”。如果用CROSS(C,平台最高),则要求从下方上穿,如果当天直接高开在平台最高之上,CROSS反而无法触发。实战中,我们需要的是“收盘价高于平台最高”,所以直接用>。
编写技巧④:涨幅计算避免浮点误差(C/REF(C,1)-1)>0.05 等价于涨幅大于5%。也可以写成 C/REF(C,1)>1.05,两种写法等效。注意阈值不要正好设为1.05(可能因浮点运算漏掉),习惯上设为1.0501或按用户提供的直接用0.05。
三、关键参数优化
为了让指标适应不同周期和风险偏好,可以将固定数值改为参数(在公式管理器中调整):
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
参数设置建议:
- 激进风格:N=10,阈值1.08,突破涨幅5%
- 稳健风格:N=20,阈值1.06,突破涨幅6%
四、实战过滤:成交量验证
单一形态信号存在假突破风险,历史回测显示单纯使用该指标胜率约58%。加入成交量放大条件可以显著提升可靠性:
{成交量验证:当日成交量大于5日均量的1.5倍}量能验证:=VOL > MA(VOL,5)*1.5;{最终信号(叠加量能)}最终信号:=XG AND 量能验证;
编写技巧⑤:过滤器独立成行,便于调试 将量能条件单独定义为量能验证,再与XG组合。调试时如果想看原始突破信号,直接看XG即可;需要叠加条件时看最终信号。
此外,也可以叠加MACD金叉或均线多头排列作为辅助,例如:
趋势辅助:=MACD.DIF>MACD.DEA AND C>MA(C,20);
附:完整公式源码(可直接复制)
{平台大阳线突破指标公式}{仅供技术交流,不构成投资建议}{参数可自行修改}N:=10; {平台周期,默认10日}波动阈值:=1.08; {平台最大波动幅度}突破涨幅:=0.05; {突破当日最小涨幅}{1. 平台最高最低价}平台最高:=HHV(C,N);平台最低:=LLV(C,N);{2. 平台条件}涨跌幅度:=平台最高/平台最低;平台条件:=涨跌幅度<波动阈值;{3. 突破信号}突破信号:=C>平台最高 AND (C/REF(C,1)-1)>突破涨幅;{4. 原始选股信号}XG: 平台条件 AND 突破信号;{5. 可选:成交量过滤}量能验证:=VOL > MA(VOL,5)*1.5;最终信号:=XG AND 量能验证;{DRAWICON(XG, LOW, 1); {如需图标,取消注释}}
五、风险管理:必须配套的止损策略
根据历史回测,平台突破后次日回落的概率约为40%,因此风险控制不可或缺:
- 进场时机:突破日收盘前5分钟确认信号后介入,或等次日回踩平台高点不破时低吸。
- 止损设置:以突破阳线的最低价为止损位,跌破即离场(通常亏损幅度在3%~5%)。
- 假突破识别:若突破后三天内收盘价再次跌回平台最高价之下,视为假突破,应果断止损。
典型失败案例(2020年6月):某个股出现平台大阳线突破,但成交量并未明显放大,次日直接低开低走,跌破阳线实体。事后看,大盘处于下跌中继,个股突破只是诱多。这也验证了必须结合大盘环境和成交量验证的重要性。
六、总结:从逻辑到代码,把“平台突破”写精准
回顾整个编写过程,平台突破指标的本质是用波幅约束定义“平台”,用价格比较定义“突破”。这里有几个值得深入理解的点:
第一,平台的定义不是“横盘”,而是“窄幅波动”。传统技术分析中,平台要求K线高低点接近,但“接近”是模糊的。我们用量化指标最高收盘价/最低收盘价 < 1.08,把“窄幅”变成了可计算的数值。为什么用收盘价而不是最高最低价?因为收盘价更能代表多空博弈的最终结果,过滤了盘中瞬间的毛刺。
第二,突破的确认必须“收盘站上”而非“盘中摸到”。很多新手会写CROSS(HIGH, 平台最高),这会在盘中瞬间触发信号,但收盘可能回落。我们坚持用C>平台最高,且要求当日涨幅大于5%,就是要确认突破是有力度的、资金真实进场的。
第三,过滤条件不宜过多。成交量验证确实能提高胜率,但如果叠加MACD、均线、KDJ等太多条件,信号会极度稀少,甚至一年也选不出几只。建议先观察原始信号的胜率,再逐步添加过滤项。
第四,函数的选择直接决定代码的严谨性。比如取最高值,能用HHV就不用FINDHIGH,后者容易写出逻辑错误。编写时多测试,多看函数说明,能避免很多隐形的坑。
最后,任何指标都需要经过自己的历史回测和模拟盘验证。不同周期参数、不同市场环境下,指标的表现可能天差地别。建议用通达信的“程序交易评测”功能,对过去三年的数据跑一遍,找到最适合当前行情的参数组合。




夜雨聆风