
每天9点15分到9点25分很多股票已经提前暴露资金态度。盯着涨幅榜追高往往买在情绪顶点只看竞价涨幅又容易被虚假挂单误导。真正有用的集合竞价选股需要把价格、成交额、未匹配量和开盘后承接放在一起判断。集合竞价不是预测涨停而是用有限信息筛出“值得继续观察”的股票。一、集合竞价到底在看什么集合竞价阶段买卖双方提交订单交易系统按照最大成交量原则撮合。9点15分到9点20分可以撤单9点20分之后撤单限制增加9点25分形成开盘价。实战中我会重点观察四个字段字段含义实战用法jjzf竞价涨幅判断资金愿意把价格抬到什么位置jje竞价金额判断参与资金是否足够真实noe未匹配金额判断买卖盘哪一方更拥挤trend交易方向-1为主动性卖0为中性盘1为主动性买单看竞价涨幅很容易踩坑。竞价涨幅达到8%但成交额只有几十万元可能只是流动性不足竞价涨幅3%成交额超过1000万元同时未匹配金额持续偏向买方参考价值更高。二、我的集合竞价四层筛选法1. 先做基础排雷剔除退市整理、风险警示、上市时间过短、成交额长期低迷的股票。涨停价附近的股票还要注意是否存在一字板无法成交的情况。建议把竞价涨幅控制在2%至6%。涨幅太低资金关注度不足涨幅超过8%开盘后容易出现获利兑现。2. 看竞价金额是否达标竞价金额是过滤“虚假强势”的核心指标。中小盘股可以设置1000万元起步大盘股则需要结合流通市值提高门槛。一个简单的标准是竞价金额占昨日成交额比例 jje / 昨日成交额这个比例不宜一刀切。市场活跃时可以放宽缩量行情则要提高要求。3. 观察未匹配金额方向noe大于0通常代表买方未匹配金额占优noe小于0代表卖方压力更明显。单个时点的未匹配量可能变化很快最好连续读取9点20分、9点24分和9点25分附近的数据。真正有参考价值的不是某一刻的买单而是买方优势能否持续到竞价结束。4. 等待开盘确认竞价筛选只是建立候选池不能直接当作买入信号。开盘后观察前5分钟价格是否站在竞价价之上成交量是否快速放大回踩时是否跌破竞价价所属板块是否同步走强。如果个股高开后快速跌破竞价价且卖单持续增加即使竞价数据漂亮也应放弃追涨。三、用XTick接口获取竞价数据XTick文档提供了“竞价数据-实时接口”地址为/doc/core/bidtime竞价时间段覆盖9点15分至9点25分。接口支持单只股票、最多100只股票批量查询也支持codeall获取全市场数据。请求地址格式如下http://api.xtick.top/doc/core/bidtime?type1codealltokenYOUR_TOKEN其中type1代表沪深京A股token需要登录XTick网站后获取。接口返回的核心字段示例{ type: 1, code: 000001, time: 1725845100000, seq: 12, price: 11.26, close: 10.92, jjzf: 3.11, jjl: 86500, jje: 9736900, nol: 12000, noe: 1351200, trend: 1 }jjzf表示竞价涨幅jje表示竞价金额noe表示未匹配金额trend1代表主动性买盘。时间字段为毫秒级时间戳使用时要转换为北京时间。四、把筛选条件写成程序下面是一段可以直接改造的Python示例。代码只负责筛选候选股不构成自动交易指令。import requests from urllib.parse import quote API http://api.xtick.top/doc/core/bidtime TOKEN YOUR_TOKEN option { filter: jjzf2;jjzf6;jje10000000;noe0, sort: noe, asc: 0, limit: 100 } params { type: 1, code: all, option: quote(str(option).replace(, )), token: TOKEN } resp requests.get(API, paramsparams, timeout10) resp.raise_for_status() rows resp.json() for row in rows: print( row[code], f竞价涨幅{row[jjzf]:.2f}%, f竞价金额{row[jje]:.0f}, f未匹配金额{row[noe]:.0f}, f方向{row[trend]} )接口文档中的option参数支持过滤、排序和数量限制。例如{ filter: jjzf5;jje10000000, sort: noe, asc: 0, limit: 100 }通过这个参数可以直接筛选竞价涨幅超过5%、竞价金额不低于1000万元的股票并按未匹配金额从大到小排列。在生产环境中建议使用标准JSON编码import json params[option] quote(json.dumps(option, ensure_asciiFalse))五、如何做历史回测XTick还提供“竞价数据-历史接口”/doc/hot/bidhistory。该接口保留集合竞价阶段最后一条数据和开盘数据可用于构建历史样本。示例请求http://api.xtick.top/doc/hot/bidhistory?type1codeallstartDate2026-09-09endDate2026-09-09tokenYOUR_TOKEN历史接口中的序列字段需要特别注意seq值含义0开盘数据1集合竞价最后一条数据通常对应9点25分回测时不能拿收盘后的数据参与当天选股。正确流程是使用seq1的数据生成候选池再用seq0确认开盘表现最后计算买入后5分钟、30分钟或收盘收益。六、一个更稳健的实战模板可以把策略拆成“竞价初筛”和“开盘确认”两步阶段条件动作9:20前竞价涨幅2%至6%竞价金额达标建立观察名单9:24后noe持续为正trend多次为1保留强势标的9:25竞价价格没有明显跳水等待开盘9:30至9:35价格站上竞价价成交量放大评估是否参与跌破竞价价卖压增加、板块转弱取消计划这里的“参与”也要结合仓位管理。单只股票的试错仓位可以控制在总资金的10%以内连续出现两次开盘破位时暂停策略并检查市场环境。七、常见误区误区一竞价涨幅越高越好高开并不等于强势。超过7%的竞价涨幅往往意味着更高的兑现压力尤其是前一交易日已经大涨的股票。误区二看到大额买单就立即下单竞价订单可能在规则允许的时间内撤销单笔大单不能代表全天资金态度。应结合成交额、未匹配金额变化和开盘后承接判断。误区三忽视流动性小市值、低成交量股票即使满足筛选条件也可能出现滑点大、无法成交的问题。回测必须加入手续费、印花税、滑点和涨跌停无法成交等因素。误区四把回测结果当成收益承诺集合竞价策略对市场风格非常敏感。震荡市、主升市和退潮期的表现差异明显任何参数都需要滚动验证。结语把竞价信号变成交易纪律集合竞价选股的核心不是寻找一个“百分百上涨”的神奇指标而是建立一套可重复执行的流程用jjzf识别价格意愿用jje确认资金规模用noe观察买卖失衡再用开盘后的价格和成交量完成确认。竞价负责缩小范围开盘负责验证逻辑仓位负责控制结果。实盘接入前请先用历史数据和模拟账户验证参数。股市有风险策略只能提高决策一致性不能消除亏损可能。开源项目https://github.com/xticktop/skills