简介:通达信集合竞价选股指标源码文档,面向熟悉通达信公式的短线交易者,解决盘前竞价阶段快速锁定放量起爆个股的需求。文档以docx格式提供,整包仅1个文件、约60KB,内容为竞价量比选股的完整源码及使用说明,可直接复制到通达信公式管理器中使用。目前已有572人学习下载。资源价值在于:不仅给出选股公式,还配有适用条件与操作提示,比如只适合盘前竞价短线操作、尽量挑选低点刚起爆个股,并内置流通盘限制、换手率及其均线、涨停回调区间、竞价量比等组合过滤逻辑,帮助用户避开高位追涨风险,提高竞价选股效率。文档中源码注释清晰,参数阈值可在公式中直接调整,便于根据个股流通盘与活跃度微调策略,适合有一定公式基础、希望将竞价策略量化的投资者参考。
1. 集合竞价选股源码:开盘前五分钟把全市场的意图筛一遍
集合竞价选股大概是A股所有短线思路里最“反直觉”的一种:它不看盘中资金、不追分时异动,只用9:25那一秒钟撮合出来的开盘价和成交量,去推演全市场当天的态度。这个窗口里能用的数据极少——一个价格、一个量、一段高开幅度,再加昨天留下的基准数据,而通达信公式恰恰能把这几样东西组合成一张可筛选的网。这里不打算给你什么“国宝级”包赚源码,而是把集合竞价选股真正可复现的部分讲清楚:选股指标公式怎么写、参数怎么设、9:25到9:30之间怎么跑、以及最容易把结果带偏的五个坑。适合短线交易者,也适合想用通达信公式把交易思路固化的量化入门者。
2. 通达信集合竞价公式的数据边界与选股时间窗
2.1 从9:15到9:25:撮合规则决定了公式取数的最小粒度
A股集合竞价分成三段:9:15到9:20可以挂单也可以撤单,9:20到9:25只能挂单不能撤单,9:25到9:30可以挂单但不参与撮合,沪深两地在9:25统一按最大成交量原则产生开盘价。这三段规则对公式选股的最大影响不是你能不能买到,而是公式取到的数据什么时候才是“今天”的。
9:15到9:20之间,通达信行情端会推送实时匹配的虚拟撮合价和对应量,但这一阶段的挂单随时可能被撤,量价关系很容易被大资金用撤单手法做出来;9:20之后无法撤单,这个阶段的虚拟量价才有博弈意义,但也只是“虚拟”的,最终价格和量仍由9:25那一瞬间决定。对公式而言,9:25之前的任何取值都处在漂移状态,OPEN、VOL这两个最核心的字段在9:25之前还停留在上一交易日的数据上,这一点是新手最容易踩的坑。
所以一套正经的集合竞价选股公式,在逻辑上不关心9:15到9:20这一段的表演,只关心9:25之后开盘价、竞价量落定那一刻的静态快照。理解了这一点,后面所有参数设计都不会跑偏。
2.2 OPEN、VOL、REF:通达信里与竞价数据直接相关的函数
通达信公式并不需要像编程语言那样订阅“集合竞价专用数据源”,日线周期下第一个数据快照本身就是竞价结果。与竞价选股强相关的函数与字段是下面这一组:
| 函数/字段 | 含义 | 在9:25-9:30的取值状态 |
|---|---|---|
| OPEN | 当日开盘价 | 9:25后刷新为集合竞价撮合价 |
| VOL | 当日成交量 | 9:25后第一笔成交量为竞价总量 |
| AMOUNT | 当日成交金额 | 对应竞价金额,可用来辅助验证量级 |
| REF(CLOSE,1) | 昨日收盘价 | 静态基准,不随行情变化 |
| REF(VOL,1) | 昨日全天成交量 | 静态基准,用于计算竞价量占比 |
| MA(CLOSE,5) | 5日均线 | 判断开盘价是否站在短期趋势上方 |
| BARSCOUNT(CLOSE) | 上市以来的K线数 | 过滤次新股 |
| NAMELIKE / CODELIKE | 按名称或代码过滤 | 剔除ST、特定板块 |
在此基础上,量比这类“动态函数”在竞价阶段要慎用。很多通达信版本里DYNAINFO(17)是量比,但它依赖盘中实时成交速率,9:25到9:30之间数据源没有完整成交数据,算出来的值不稳定,直接拿去选股容易选出伪信号。我一般会在竞价公式里用手工折算的方式代替它:用今日竞价量对昨日全天量做比例折算,虽然不精确,但至少每个交易日用的都是同一把尺子。折算骨架就是下面两行:
量占:=(VOL/REF(VOL,1))*100; 高开幅度:=(OPEN-REF(CLOSE,1))/REF(CLOSE,1)*100;这两行是整个竞价公式的地基。第一行用今日第一笔成交量除以昨日全天量,得到“竞价量占昨日全天量的百分比”;第二行用开盘价相对昨日收盘价算高开百分比。单独跑它们只是中间变量,放进条件选股公式后才有筛选含义。
2.3 为什么竞价选股窗口要卡在9:25到9:30
9:30开盘之后,连续竞价会在几秒内重建盘口,集合竞价里的挂单意向会被打散,量比、涨速、委比这些动态指标开始剧烈跳变,公式选出来的结果每刷新一次就不一样。9:25到9:30之间是全天唯一一个“数据已定、盘口未动”的真空期,适合做条件选股和预警。
实际执行时要注意版本差异。通达信官方版和券商定制版在9:25后对行情快照的刷新速度不同,某些券商版要手动点“行情→刷新行情”或者重新进入连线状态才会推送竞价快照;如果你的公式在9:25后跑出来还是昨天的数据,先检查行情连接的刷新时间,而不是怀疑公式写错。这个细节直接影响选股结果,后面第五章还会回到数据快照的真实性问题。
3. 可复现的集合竞价选股指标公式源码与参数拆解
3.1 可直接复制的通达信集合竞价选股源码(条件选股型)
下面这套源码按“开盘价温和高开、竞价量明显放大、股价站在5日均线上方、排除ST与非常规板块”四个条件构建。把它保存成条件选股公式,而不是主图或副图指标,这样才能进通达信的条件选股器和预警系统。
{竞价遴选A股-通达信条件选股公式} {适用周期:日线;推荐运行时段:9:25-9:30} 昨日收盘:=REF(CLOSE,1); 高开幅度:=(OPEN-昨日收盘)/昨日收盘*100; 竞价量:=VOL; 昨量:=REF(VOL,1); 量占:=竞价量/昨量*100; {用竞价量折算成分钟均量的倍数,替代不稳定的动态量比} 量比折:=竞价量/(昨量/240); 上市天数:=BARSCOUNT(CLOSE); 幅度合格:=高开幅度>1 AND 高开幅度<5; 量能合格:=量占>2 AND 量比折<20; 趋势合格:=OPEN>MA(CLOSE,5); 次新过滤:=上市天数>60; 名称过滤:=NOT(NAMELIKE('ST')); {过滤科创板、创业板与北交所,只聚焦10%涨跌幅主板} 板块过滤:=NOT(CODELIKE('688')) AND NOT(CODELIKE('300')) AND NOT(CODELIKE('8')) AND NOT(CODELIKE('4')); 选股:幅度合格 AND 量能合格 AND 趋势合格 AND 次新过滤 AND 名称过滤 AND 板块过滤;通达信条件选股公式要求至少一个非赋值输出,最后一行“选股”就是那个输出;输出为真,则股票进入选股结果。建议在公式管理器里先点“测试公式”,确认没有语法错误再保存。需要注意:第3行之后的“:=”都只是中间变量,不会在界面上显示图表;如果你把中间变量改成“:”,它会变成一条绘图线,影响选股器的执行效率。
3.2 高开幅度、竞价量、量比折算:三个核心参数的逐行解释
高开幅度最容易理解,也最容易用死。大于1%是为了过滤掉平开和低开,小于5%是为了避开开盘就接近涨停的票。高开7%以上的票通常是一字板或接近一字板,9:30你根本买不进,选出来也只是自欺欺人;如果做的是打板逻辑,再单独放开这条边界。1%到5%这个范围适合大部分低吸和弱转强思路,实盘时按自己的风险偏好调整。
竞价量占昨日全天成交量的比例,是判断“今天资金是否提前表态”的关键。2%这个下限对应的是:如果昨天全天成交10万手,今天竞价就要放出2000手以上。这里有个反直觉点:竞价量不是越大越好。量占超过某个阈值后,往往是高开出货的信号,主力借竞价对倒吸引跟风盘,9:30后反手砸盘,所以源码里加了“量比折<20”作为上界。
量比折是一个手工折算式,把竞价量除以“昨日成交量/240”,约等于“今天的竞价量相当于昨天每分钟均量的多少倍”。它比直接看量占比更有实战意义:同样量占3%,昨天是缩量阴线的票和昨天是放量长阳的票,竞价含金量完全不同。这套公式里没有用DYNAINFO(17)的动态量比,就是为了让9:25到9:30之间的选股结果保持稳定,不至于每次刷新都变。三个参数按以下表格理解即可:
| 参数 | 推荐值 | 当前公式中的作用 | 调整方向 |
|---|---|---|---|
| 高开幅度 | 1% ~ 5% | 过滤低开与追高开盘 | 打板思路可放宽到7% |
| 量占 | >2% | 确认竞价真实放量 | 缩量市道可提高到3% |
| 量比折 | <20 | 过滤极端放量对倒 | 次新股需同步收紧 |
| 上市天数 | >60 | 剔除次新削弱昨量基准 | 短线接力可降到30 |
参数调整时,一次只动一个变量。很多人把高开幅度和量占同时改,选出来的结果变了,但根本不知道是哪一条边界起的作用,这种调试方式在竞价公式里尤其致命。
3.3 用通达信DRAWICON画竞价信号副图,顺便解决排序依据
条件选股公式只能输出“是或否”,你要是想看全市场所有票的竞价强弱排名,还得有个排序型指标。下面这个副图公式把高开幅度、量占、量比折都显示出来,并且用DRAWICON在满足条件的K线上打标记:
{竞价监控副图-通达信} 高开:=100*(OPEN-REF(CLOSE,1))/REF(CLOSE,1); 量占:=(VOL/REF(VOL,1))*100; 量比折:=VOL/(REF(VOL,1)/240); STICKLINE(量占>=0,0,量占,1,0),COLORRED; STICKLINE(高开>=0,0,高开,1,0),COLORYELLOW; DRAWICON(高开>1 AND 高开<5 AND 量比折>1.5 AND 量占>2,高开,1);把它挂到分时图或日线副图后,红色柱是量占,黄色柱是高开幅度。DRAWICON函数的第3个参数是图标编号,1号图标是黄色笑脸,也可以改成其他编号试看效果;在分时图窗口下,副图会跟着当日最新数据重画,9:25后就能看到竞价信号图标。用“指标排序”时,排序依据直接选“高开”或者“量占”,不用管DRAWICON,因为它只是视觉标记,不参与排序计算。
这个公式跟条件选股公式共用同一组过滤边界,所以你在副图上看到的信号和条件选股结果是一致的。要注意副图公式里的“量比折”与选股公式里的完全相同,别为了好看在两端各写一套参数,否则又会变成两套筛选标准。
4. 通达信公式管理器导入、条件选股与竞价预警联动
4.1 在通达信公式管理器6.06里新建条件选股公式
打开通达信客户端,按Ctrl+F或者从菜单“功能→公式系统→公式管理器”进入公式管理器6.06界面。新版里公式分类为“技术指标公式”“条件选股公式”“五彩K线公式”等,集合竞价选股必须建在“条件选股公式”分类下,否则后面预警和选股器里找不到它。
操作顺序是:点“新建”→公式类型选“条件选股公式”→公式名称写“竞价遴选”→粘贴源码→“测试公式”→保存。测试通过后,在公式管理器右侧列表里找到“竞价遴选”,右键还能看到“导出公式”选项。这里要提醒一下:导出成.tn6格式是加密封装格式,相当于编译结果,这个文件不能直接改后缀名变成txt源码;你想要的是在公式编辑框里全选复制,另存为普通txt文本,别人拿到才能粘贴使用。想知道一份指标公式到底是源码还是封装,就看文件开头是否是明文函数名,名称乱码的基本就是tn6封装。
公式名的规范也要注意:不要用纯数字开头,不要带空格,否则公式管理器的语法检查不会报错,但选股器加载时会找不到对象。我一般把版本号留空,把日期写在注释里,比如“{2025-06竞价版}”,方便后续迭代时追溯。
4.2 9:25后快速执行条件选股并将结果加入自选板块
公式建好后的日常流程是这样的:每个交易日9:25准时盯盘,看到竞价数据刷新后,打开“功能→选股器→条件选股”,左侧选中“竞价遴选”,范围默认“沪深A股”,点“执行选股”。执行完的结果不要直接看两眼就关掉,先存入选股结果,把它并入一个固定板块,比如“竞价股票池”。
更高效的操作是提前在“功能→板块”里建好用户板块,选股完成后全选结果,右键“加入到板块”,省去每次重新命名。还有个细节:条件选股的结果默认按代码排序,没有强弱顺序,不方便快速盯盘。这时候在“综合排名”或“历史行情.排序”里切换“指标排序”,排序依据选上一章副图公式里的“高开”或“量占”,就能按竞价强度从高到低查看。主要操作路径对照如下:
| 操作 | 路径 |
|---|---|
| 打开公式管理器 | Ctrl+F 或 功能→公式系统→公式管理器 |
| 执行条件选股 | 功能→选股器→条件选股 |
| 加入自选板块 | 选股结果右键→加入到板块 |
| 设置条件预警 | 功能→预警系统→条件预警设置 |
选股器跑出来的只是静态结果。9:25到9:30之间的数据快照不带实时成交,全市场几千只票做一次条件筛选通常只需几十秒,如果客户端是老版本,时间会慢一些。这个时间段如果发现选股结果为空,先别急着改公式,打开几只票的分时图看竞价量是否已经刷新;部分券商定制版通达信9:25后仍然显示旧快照,等30秒左右再刷新。
4.3 用条件预警自动触发竞价信号,替代手工刷选股
手工选股有个问题:9:25之后你只有5分钟,还要重复执行选股器,手忙脚乱。成熟的做法是把同一套公式挂到“功能→预警系统→条件预警设置”里,让客户端自动监控全市场,公式条件一旦满足就弹窗报警,省掉手工点选股器的时间。
在条件预警设置里点“添加品种”,范围选“沪深A股”或自选板块;再点“添加条件”,公式类型务必选“条件选股公式”,找到“竞价遴选”,周期选“日线”。保持条件预警窗口处于启动状态,这样9:25竞价快照到位后,预警会在几秒到几十秒内弹出信号列表。注意:条件预警不是开盘前自动开始的,你要在9:20左右先点“启动预警”,让它进入监控状态,否则9:25之后才开始启动会错过第一时间。
用预警方式还隐含着一个容易被忽视的好处:条件预警会实时检测最新数据推送,相当于变相帮你确认了行情快照已经更新。如果预警一直不触发而报价面板里价格已经变了,先检查预警的“监控品种”是否把股票池范围勾全,再看“公式类型”是否错选成了技术指标公式。错选成副图指标,预警系统一样会报错,这是公式管理器6.06最常见的误操作。
5. 集合竞价选股公式的参数陷阱、过滤边界与历史验证
5.1 高开与量比折的常见误用:为什么选出来的票次日容易回撤
很多分享出来的集合竞价指标会把高开幅度放宽到7%,理由是“越高越强”,但忽略了开盘价越高、竞价量越大的组合,越接近主力借竞价出货的形态。盘中虽然可能冲高,次日回撤的概率也同步放大。把高开幅度上限从5%收到3%,选出来的票数量会少一半,但开盘后5分钟内的稳定性明显更好。量比折大于20的上界也有讲究:如果用昨量/240做基准,遇到昨天因停牌或缩量到极致的票,这个值会被放大到几十倍,不设上界等于给停牌复牌股放行。
5.2 一字涨停、次新股、ST与20%涨跌幅板块的过滤边界
源码里的“板块过滤”直接剔除了创业板、科创板、北交所,只保留10%涨跌幅的主板。如果你做的是创业板强势票,就把30开头的过滤注释掉,但高开上限要相应调整到8%以下,因为20%涨跌幅下高开5%的强度语义完全不同于主板。ST股票的5%涨停限制也会干扰高开幅度的判断,所以名称过滤必须保留;BARSCOUNT(CLOSE)>60这个次新过滤则是为了防止次新股“昨量”极小而让量占虚高。这里还有一层隐性陷阱:通达信对部分北交所股票代码的代码匹配比较特殊,如果版本过旧,最稳妥的方式是在选股器范围里直接去掉北交所品种。
5.3 用通达信历史回忆复盘竞价图,反向校准参数
参数是不是合适,别拿一天的结果说事。通达信分时图里右键选择“历史回忆”,可以翻看任意交易日的竞价分时走势,包括9:15到9:25每一分钟的虚拟撮合价和量柱。用历史回忆去核对每个信号,重点看两个时刻:9:20和9:25。9:20的虚拟量价是否被撤单扭曲,9:25的最终竞价量是否比虚拟量突然放大,如果连续多天的信号都是9:25量能骤增、开盘后秒变出货,就说明量占下限给得太低,把对倒盘也选进来了。
建议维护一张简单的复盘表:日期、代码、高开幅度、量占、量比折、9:30后10分钟股价方向、全天收盘方向。记录20个交易日以上,回看止跌企稳的概率和次日溢价情况。这个动作比任何二次优化都有效,也能帮你在介入度净占比、主力追踪分时指标这类进阶资金面指标出现时,快速判断它能不能替代现有竞价量条件。
本文还有配套的精品资源,点击获取