通达信跳空缺口公式写起来只有几行,判断跳空要跟哪些数据、要不要看成交量、缺口什么算回补。缺口的判定看着直白:今天的最低价高于昨天的最高价,就是向上跳空,反之是向下跳空。难点在边界:开盘价与昨日最高价相等算不算、缺口当天被回补算不算、除权日的价格不连续要不要先复位。这些边界不处理,公式在少数标的上会给出与肉眼判断不同的结果,而这正是这类误判的来源。下面按分类、条件写法、参数、失效四个环节往下讲。

一、缺口的分类与判定口径

先把缺口分清楚,再写公式。按方向分两类:向上跳空与向下跳空。按位置分,缺口出现在价格区间的下沿还是上沿,对应不同的观察口径。判断逻辑只在方向这一层,位置属于后续的观察维度,不必写进条件里。

判定口径里的第一处选择是「最低价对最高价」还是「开盘价对收盘价」。最低价高于昨日最高价,是严格定义,跳空当天没有与昨日价格区间重叠;开盘价高于昨日收盘价,只说明开盘有跳空,盘中可能被回补。两种口径给出的结果集不一样,写公式前要先确定用哪一种。

{跳空缺口判定口径表}
口径                 写法比较              结果特征
严格跳空(向上)     今日最低价 > 昨日最高价    当日与昨日区间不重叠
开盘跳空(向上)     今日开盘价 > 昨日最高价    开盘有缺口,盘中可能回补
严格跳空(向下)     今日最高价 < 昨日最低价    向下方向同理
开盘跳空(向下)     今日开盘价 < 昨日最低价    向下方向同理

「严格跳空」的条件更强,结果集更小,适合作为缺口形态的确认条件。「开盘跳空」宽松,适合用来做进一步筛选的入口。两者在源码上只差一个函数名,效果差别却很明显,这一点要先想清楚再动手。

二、条件怎么写

通达信里取昨日数据靠引用,取前一日取值的方式是在字段后面接一个偏移量。写向上跳空的核心表达式是「今日最低价」与「昨日最高价」做比较,昨日最高价写成 REF(HIGH,1) 的形式。

{向上跳空的条件骨架}
{今日最低价高于昨日最高价,构成向上跳空}
缺口向上 := LOW > REF(HIGH,1);

{昨日最高价高于前日最高价,与前一条串联形成连续向上跳空}
连续向上 := 缺口向上 AND REF(HIGH,1) > REF(HIGH,2);

{把连续条件作为输出,结果集为满足条件的交易日}
连续向上;

这一段里能改动的有两处:比较符号与偏移量。偏移量为 1 表示跟上一日比,改成 2 就是跟两日前比,适用于跨过停牌或周末的口径需求。比较符号改成大于等于,边界情形(两日区间恰好相接)就会进结果集,这是与严格定义的一处实际差异。

改动项 写法 结果变化
偏移量 REF(HIGH,1) → REF(HIGH,2) 比较对象后退一日,跨过中间的停牌或周末
比较符号 > → >= 区间恰好相接的情形进入结果集
取价字段 LOW → OPEN 从严判定放宽为开盘判定,盘中可回补
叠加量能 追加 VOL > REF(VOL,1) 只在成交量放大的跳空上成立
叠加方向 追加 CLOSE > OPEN 要求当日为阳线,剔除向下回补的形态

第三项的改动对结果影响最直接。取最低价是看当日整体区间,取开盘价是看开盘那一刻,两者在盘中先跳空后回补的标的上结论相反。选哪一个取决于你要观察的是形态本身的成立,还是开盘时的价格关系。

三、参数取值与可调范围

把偏移量与量能比较幅度提成参数,公式的适用范围会宽不少。参数表里可以放三项:回溯天数、量能倍数、缺口最小幅度。

{参数表建议}
回溯天数 N  : 默认 1,最小值 1,最大值 5
             —— 与哪一日的区间做比较
量能倍数 M  : 默认 1,最小值 1,最大值 3
             —— 当日成交量相对前一日的倍数门槛
最小幅度 P  : 默认 0,最小值 0,最大值 5
             —— 缺口的最小幅度,单位百分比

最小幅度这一项值得单独说。缺口很小时,肉眼几乎看不出断档,但严格判定仍然成立,结果集里会混进一批不显著的条目。用最小幅度过滤的办法,是要求跳空的幅度大于设定值,把这一批剔出去。参数值属于设定值,取多少由使用场景决定,没有通用最优值。

加参之后要重跑一次测试:在公式管理器里逐个参数改动取值,点「测试公式」,确认输出会随参数变化。参数没有被计算链路用上时,界面显示改了、结果一动不动,这种情形在只做形式参数的公式上并不罕见。

四、回补与失效:几类必须提前想到的情形

缺口写出来了,接下来要处理的是它不成立的条件。五类情形需要在公式里或在使用时处理掉。

{失效情形与处理方式}
1. 当日回补   : 盘中价格回到昨日区间之内 → 收盘后复核,或用开盘口径
2. 除权除息   : 价格序列不连续,跳空是复权造成的 → 先用不复权数据核对
3. 停牌复牌   : 中间缺了几日,昨日实际是复牌首日 → 偏移量需跳过节数
4. 一字板     : 开收高全等,四价重合 → 是否计入取决于观察目的
5. 流动性低   : 长期成交稀疏,价格断档无实际意义 → 增加成交量门槛

第 1 类与第 4 类容易混。当日回补是价格在盘中被拉回,一字板是价格全天没有波动,两者都表现为当日的四价关系紧贴,但成因不同。区分办法是看振幅:振幅接近零是后者,振幅明显但不是零是前者。

第五类要单独处理。成交稀疏的标的上,价格断档多来自买卖挂单之间的空档,不代表形态意义。加成交量门槛之后,这一类会自然退出结果集,不需要在公式里为它们写特例。

第 6 类与版本相关,单独放在这里:不同版本对取价函数与偏移量引用的支持范围有差异,同一段条件在新旧版本上的结果可能不同。这类偏差不体现在报错上,只体现在结果集的大小上,需要用官方更新记录里的函数增删逐条比对。

通达信跳空缺口公式在这些边界上的处理方式,决定了它在少数标的上会不会给出与肉眼判断不同的结论。把上面几类逐条走过一遍,再回到结果集核对,分歧会明显减少。

五、验证方法与核对顺序

公式做完,验证按四步走。每一步对应一个可以当场完成的动作。

{跳空缺口公式的验证顺序}
1. 编译  : 公式管理器 → 选中 → 点「测试公式」,确认无语法提示
2. 挂图  : 挂到主图,确认跳空位置与肉眼判断一致
3. 抽样  : 从结果集取若干交易日,逐日核对四价关系
4. 对照  : 换一种口径(严格 / 开盘)各跑一次,记录差集

第 3 步是最要紧的一步。从结果集里挑出跳空当天,在 K 线图上把当日的最高、最低、开盘、收盘与昨日的对应值抄下来,按公式里的比较符号手工验一遍。手工验不过的条目,就是公式与实际判断的分歧处,分歧集中出现在前文列的几类边界上。

第 4 步的差集用来判断口径选择是否合理。严格口径多出来的条目是「区间不重叠但开盘未跳空」的形态,开盘口径多出来的条目是「开盘跳空但盘中回补」的形态。看这批条目符不符合你的观察目的,再决定用哪一种。

六、边界声明

通达信跳空缺口公式是形态判定工具。它输出的是「某日价格区间是否断开」这一事实判断,不包含对断开之后价格走向的任何推断。这句话不是场面话:缺口与后续价格之间的关系属于另一类问题,需要单独的样本与口径,不在公式的能力范围内。

还有两点使用上的限制。一是数据依赖:跳空判定依赖至少两个连续交易日的四价数据,数据未更新或数据缺失的时点上,公式取不到返回值,输出为空属于正常。二是周期依赖:同一段逻辑在日线与分钟线上对应的时间跨度不同,跳空的统计意义也随之变化,跨周期使用要重新核对偏移量。

把这两点记进使用记录,后面再遇到输出为空或结果与预期不同,先查这两项,再动公式。

本文只作技术研究口径,不涉及也不构成对任何标的的判断。

站内还有 量价形态与信号拆解 的条目,通达信公式编写教程 里讲语法与函数引用,指标回测与风险验证 里讲样本与偏差控制,通达信主图副图指标 里讲挂载与输出渲染,可对照查看。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。