简介通达信短线出击副图选股预警公式源码是一份面向技术分析初学者的教学型公式文档适用于使用通达信行情软件进行短线盯盘与自定义指标开发的用户。文档围绕移动平均线、偏离率与平台突破三条主线展开MA10与MA54分别刻画短期与中期趋势基准PL1、PL2通过收盘价与均线的偏离程度过滤震荡行情平台突破则通过连续整理后的状态变化触发预警信号。通过这三者的组合能有效识别价格在均线上方企稳后形成的突破信号。公式源码完整逻辑清晰并带有中文注释可直接复制到通达信公式管理器中生成副图指标。压缩包大小118KB仅含1个doc文件便于阅读和携带。目前已有273人学习下载该指标既可用于实战预警也可作为学习通达信公式语言、理解条件组合与函数嵌套的参考案例适合用于短线出击场景中的选股与贴图分析。1. 通达信公式源码指标“短线出击”副图它到底在监测什么你可能也遇到过这种票横盘了好几天突然某天收盘价悄悄站上 MA10副图冒出一个不起眼的灰色箭头随后两三天就开始拉升。这个“短线出击”副图选股预警源码本质上就是在帮你盯两件事——价格离均线有多远、以及这种“横盘状态”是不是刚刚结束。它不是靠单一金叉死叉而是用两条均线加一个布尔型偏离率把“平台突破”变成一个可量化的条件。对短线客来说这套公式最大的价值是能把“盘整结束的第一根确认K线”抓出来对研究公式语言的人来说它又是一个很好的副图、选股、预警三用的教学型模板。下一章开始我把它逐行拆开讲。2. 拆源码逻辑MA10、MA54和偏离率的真实作用拿到一段公式源码我习惯的做法是先按行过一遍确认每个变量到底在算什么、算出来的值长什么样再谈使用。很多新手直接把公式粘进通达信就用结果副图出来了、信号也对不上原因就是没读懂变量的中间过程。2.1 MA10 与 MA54为什么是这两条均线而不是 5 和 20源码前两行是MA10:MA(CLOSE,10),COLORYELLOW,LINETHICK0; MA54:MA(CLOSE,54),COLORFFCCCC,LINETHICK0;先看语法:是赋值MA(CLOSE,10)表示求收盘价的 10 日简单移动平均COLORYELLOW是绘图颜色LINETHICK0表示线宽为 0也就是画出来但不占视觉权重。参数为什么取 10 和 5410 是短线常用的周期对应两周交易日的平均成本54 更接近一个季度线在通达信默认体系里大约就是一个中周期趋势的分界。这个组合的含义是MA10 反映短期成本MA54 反映中期趋势方向当收盘价同时贴近这两条线时说明股价处于“短期成本与中期趋势暂时达成一致”的状态——这正是平台整理期的典型特征。我一般会把 10 和 54 看成一组可调参数来对待而不是死记。你完全可以把 54 改成 60 或 55效果差别不大但如果改成 20公式的“平台”定义就完全变了信号的稀疏程度也会跟着变。2.2 偏离率不是连续数值而是两状态开关接下来是四个中间变量PL1:(((CLOSE - MA54) / MA54) 0.1); PL2:(((CLOSE - MA10) / MA10) 0.3); 偏离率:(((PL1 1) AND (PL2 1)) * 0.2);PL1判断收盘价是否在 MA54 上方 10% 以内PL2判断收盘价是否在 MA10 上方 30% 以内。注意这里用的是而不是加绝对值的写法意味着它只看“向上偏离”这一侧不考虑收盘价跌到均线下方多少。关键点在这PL1和PL2不是返回具体的偏离数值而是返回 1 或 0 的逻辑值。把两个逻辑值做AND再乘 0.2最终得到的“偏离率”只有 0 和 0.2 两个取值不存在中间值。也就是说这个公式里的“偏离率”本质是一个开关当收盘价同时满足“离 MA54 不远”和“离 MA10 不太远”这两个条件时它就是 0.2一旦收盘价涨过了 MA10 上方 30% 这一档PL2 变 0偏离率立刻回到 0。这个设计很巧妙它把一个连续的“偏离程度”变成了“在平台内 / 不在平台内”的布尔判断。理解这一点后面平台突破信号就好懂多了。2.3 平台突破的数学结构三个条件同时成立的含义最后一行是核心信号平台突破:((((偏离率 0) AND (REF(偏离率,1) 0.2)) AND (REF((COUNT((偏离率 0.2),10) 10),1) 1)) * 1);拆开读条件有三层当前这根K线的偏离率等于 0即收盘价不再处于“双均线约束区间”内前一根K线的偏离率等于 0.2即上一根还在平台内再往前数的 10 根K线里每一根的偏离率都等于 0.2——这个用REF包了一层意思是“站在上一根K线看过去 10 根K线全部都是 0.2”。三个条件同时成立平台突破就输出 1否则输出 0。如果你在副图里观察这个信号出现的位置恰恰是股价在平台内横了很久之后第一次正式脱离平台的那根K线。这里有一个容易被忽略的细节* 1看起来多余但通达信公式语言里这种布尔表达式在部分版本中直接作为画线函数输出时会被识别成条件语句加上* 1可以强制把逻辑真值转成数值 1保证副图能正确画出信号柱。这种写法在别人分享的源码里很常见属于防御性写法。3. 平台突破信号的时序推导为什么它只出现一次单独看公式能拼出逻辑但要在实战里用对必须搞清楚信号出现在哪根K线上、为什么只出现一次、以及错过之后还能不能补选。3.1 从 COUNT 到 REF一根K线的时序差很多人第一次用这个公式会遇到“信号明明出现了但第二天选股就选不到”的情况。这不是公式坏了而是时序决定的。我把信号条件拆成时间轴看假设当前K线是第 N 根平台突破要成立要求第 N-1 根K线上能看到“过去 10 根全部等于 0.2”同时第 N 根偏离率等于 0第 N-1 根偏离率等于 0.2。翻译成人话就是从第 N-10 根到第 N-1 根连续 11 根K线的偏离率都是 0.2到第 N 根突然变 0信号在这一根产生。因为偏离率只有 0 和 0.2 两个状态一旦股价进入平台期偏离率会一直保持 0.2一旦突破偏离率变成 0之后不会自己变回 0.2除非股价又回到均线附近形成新的平台。所以“平台突破 1”这个状态只可能出现在平台结束的第一根K线上。这意味着什么意味着这个信号是“瞬时的”它描述的是“刚刚横盘结束”这个时刻而不是“当前仍然处于平台内”。副图里你用STICKLINE或直接输出这个值看到的就会是一根单点信号柱不是连续的一串信号。3.2 为什么回头看信号总差一根K线再说一个常见现象在副图里看平台突破信号似乎总是晚一天出现。原因是公式里多次用到REF它强制把“前 10 根都在平台内”这个判断挪到了上一根K线来完成。你在第 N 根看到信号实际确认的是“第 N-1 根的立场上平台已经满足结束条件”。这种写法对预警和选股是安全的——你是在收盘后确认不需要盘中抢跑。但如果你想让信号出现在脱离平台当天而不是确认当天可以把最后一行的第二个REF去掉公式就变成平台突破2:((偏离率 0) AND (REF(偏离率,1) 0.2) AND (REF(COUNT(偏离率 0.2,10),1) 10)) * 1;这个写法只是把时间对齐方式改了信号位置会比源码版本提前、但也更容易在盘中触发假信号要权衡使用。3.3 平台突破“选不出票”的另一层原因还有一种常见误解以为平台突破成立后未来几天应该都能选出这只票。实际上因为条件是“偏离率从 0.2 变成 0”的第一根第二天再看偏离率 0依然成立但REF(偏离率,1) 0.2已经不成立了——前一根的偏离率是 0不是 0.2。如果想让信号保持“之后 N 根都能被选出”做法不是改选股条件而是用COUNT或BARSLAST做扩展。比如把选股条件写成COUNT(平台突破,5) 1;意思是近 5 根K线内出现过一次平台突破信号这样就把瞬时信号变成了持续性条件。这个写法在选股日凌驾于“当天牛市信号”之上适合隔几天才操作的节奏。4. 副图、选股、预警三条线从粘贴源码到盘中监控的完整实操理解了逻辑接下来做落地。通达信公式的宿命通常分三步走先在副图里看着对不对再做成条件选股跑一遍历史最后挂到预警里盯盘。每一步都有独立的坑。4.1 新建副图公式直接粘贴然后调整显示打开通达信按CtrlF进入公式管理器选择“技术指标公式”点新建公式名称建议写“短线出击副图”粘贴源码后点“测试公式”确认没有语法错误再保存。这里给一份可以直接用的副图版本MA10:MA(CLOSE,10),COLORYELLOW,LINETHICK0; MA54:MA(CLOSE,54),COLORFFCCCC,LINETHICK0; PL1:(((CLOSE - MA54) / MA54) 0.1); PL2:(((CLOSE - MA10) / MA10) 0.3); 偏离率:(((PL1 1) AND (PL2 1)) * 0.2); 平台突破:((((偏离率 0) AND (REF(偏离率,1) 0.2)) AND (REF((COUNT((偏离率 0.2),10) 10),1) 1)) * 1);粘贴后点确定在主图上按CtrlI找到这个副图指标双击加入。如果副图里没有显示出信号柱多半是公式管理器里“画线方法”选错了要选“主图叠加”以外的“副图”模式并且把“坐标类型”设为“自动”否则偏离率 0.2 和数值 1 会被压扁在底部。我一般会另外加一行辅助输出把中间过程可视化方便观察 EW 有没有合理偏离率显示:偏离率,COLORWHITE,LINETHICK2;加这行的意义不是为了选股而是为了让你在复盘时能直观看到“平台内/平台外”的状态切换确认信号触发前后偏离率的跳变是否真的符合逻辑。4.2 做成条件选股公式去掉绘图函数再测试条件选股和副图的语法要求不一样。副图里允许写COLORYELLOW、LINETHICK0这些绘图代码但条件选股公式一旦包含绘图函数测试就会报错“条件选股公式不允许输出线型”之类的红字。解决方法是复制核心逻辑去掉所有COLOR和LINETHICK然后把最终输出改成一个明确的选股条件MA10:MA(CLOSE,10); MA54:MA(CLOSE,54); PL1:(((CLOSE - MA54) / MA54) 0.1); PL2:(((CLOSE - MA10) / MA10) 0.3); 偏离率:(((PL1 1) AND (PL2 1)) * 0.2); 平台突破:((偏离率 0) AND (REF(偏离率,1) 0.2) AND (REF(COUNT(偏离率 0.2,10),1) 10));在公式管理器里选择“条件选股公式”分类新建一个名为“短线出击平台突破选股”的公式粘贴后测试、保存。之后在“功能→选股器→条件选股”里找到它把选股范围设为沪深A股执行选股。注意执行选股时“计算参数”如果留空默认是全部历史数据如果你只想选最近一天满足条件的票可以把选股周期设为“日线”并勾选“仅选最近1日”。这样出来的结果基本都是当天刚脱离平台的个股。4.3 预警设置收盘预警与盘中预警选哪一个预警设置走“功能→预警系统→条件预警设置”在“品种”里加入你的自选股或全部A股在“公式”里新增条件选到你刚保存的条件选股公式然后设置预警周期为日线。这里一个关键决策点如果你用日线周期预警通达信在盘中会持续刷新当日不完整的日K线CLOSE会随着盘中价格不断变化导致偏离率在 0 和 0.2 之间反复跳变预警会多次触发又多次消失。我建议对这个公式用“收盘后预警”也就是在 15:00 之后、数据做完收盘处理后再跑一次条件预警。如果你非要盘中预警要么把周期改成 60 分钟或 30 分钟要么在公式里加一个确认条件平台突破_确认:平台突破 AND (CLOSE REF(CLOSE,1));加这个条件后至少要求当天收盘价相对昨天是上涨的盘中反复跳变的概率会低很多但依然不能完全杜绝。对普通短线选手来说尾盘选股、次日择机进场比盘中追信号稳健。5. 避坑与调试平台突破信号消失的五个常见原因这个公式我前后在模拟盘上跑了两个多月也给别人排查过问题。下面五条是最容易踩的坑按“现象→原因→解决”写清楚免得你再试一遍。5.1 现象选股结果每天都有但总选不出“上一波突破的票”原因这不算故障而是信号瞬时性决定的。平台突破只在“平台走完的第一根K线”满足第二天之后REF(偏离率,1)0.2这个条件就不再成立选股器自然选不到。解决如果你要的是“最近5天内出现过平台突破信号”把选股条件改为COUNT(平台突破,5) 1;如果副图公式里没有单独输出“平台突破”这个变量先把它写成中间变量再引用。5.2 现象条件选股公式测试报错提示“未知标识符”或“绘图函数非法”原因把副图版源码整段复制进条件选股公式COLORYELLOW、LINETHICK0这些绘图指令在选股里不合法。解决删掉所有绘图后缀保留纯计算逻辑最终行用平台突破:输出布尔值。如果你不确定哪一行是绘图后缀按“含 COLOR 的行全部删掉、含 LINETHICK 的行只保留 MA 部分”来清理就行。5.3 现象盘中预警同一个票反复触发、消失、再触发原因日线周期里CLOSE是动态的盘中价格稍一波动PL2 结果就在 0 和 1 之间跳偏离率跟着在 0 和 0.2 之间反复REF对前一日的数据是固定的但今日数据一直在变。解决把预警周期改成 60 分钟或者加一条“确认今日收盘大于昨日收盘”的过滤条件再或者直接改成收盘后跑一次条件选股省心得多。5.4 现象股价快速拉升时平台突破信号反而没出现原因这个公式的平台突破只在“偏离率从 0.2 变成 0”时触发。如果一只票当天直接涨停收盘价一根大阳线冲出 MA10 上方 30% 以上PL2 直接从 0 变成 1不会——PL2 的条件是“偏离小于 30%”一旦超过PL2 变 0偏离率从 0.2 变成 0按说该触发。但问题在于这种跳变是“价格瞬间脱离平台”不是“缓慢走出平台”公式在两个状态之间没有中间态导致部分暴利K线反而触发不了。解决如果你专做强势突破把 PL2 的上限放宽到 0.5并把 PL1 的 0.1 上限放宽到 0.2公式就更偏向捕捉快速拉升票。反之想过滤暴涨收紧参数就行。5.5 现象副图里信号柱靠后看到信号时已经涨了好几天原因这跟 3.2 节说的一样REF把判断基点放在“上一根K线”等你在副图上看到信号已经是平台结束后的第二根K线。解决接受这个延迟并把它当作“确认信号”使用或者在副图里同时画一条偏离率的平滑线配合 MA10 和 MA54 的交叉让平台状态提前暴露。我一般在副图里加偏离率的柱状输出柱子从 0.2 跌到 0 的那一根才是最早的突破提示。6. 信号验证与进阶把“平台突破”用出更高胜率公式读懂了、坑也排了最后一步是验证和进阶。我的验证习惯很简单把选股结果拉出来找最近 30 天内的信号逐个回头看信号出现前 11 根K线的形态确认是不是真的横盘了很长一段时间。这个手动验证花不了多少时间但能让你对“平台内”的形态建立起直观感觉。验证通过后我给这个公式加了两层过滤。第一层是量能确认量能过滤:VOL MA(VOL,5); 最终信号:平台突破 AND 量能过滤;平台突破当天如果伴随放量成功概率明显高于缩量突破。第二层是位置过滤要求 MA54 在 MA10 下方即中期趋势还不太弱避免在下降趋势的半山腰抢反弹趋势过滤:MA54 MA10; 最终信号2:平台突破 AND 量能过滤 AND 趋势过滤;如果你想做更精细的进阶可以再做一个计数器统计过去 20 个交易日内平台突破触发的次数。次数越多说明这只票反复在做平台整理一旦放量突破短线爆发力往往更强。突破次数:COUNT(平台突破,20);把这些组合起来就是一套完整的短线出击预警体系副图看状态、选股找当日信号、预警盯临界点。从那以后我每次把一段源码转成副图或选股公式都强制走一遍“读变量中间值、确认时序、加过滤条件”这三个步骤不再拿来就贴。希望这篇拆解对你有用。本文还有配套的精品资源点击获取