选股淘汰赛 · 2026-09-02 · xq_optional
从15只候选到2只入选的完整决策链
ELIMINATION TOURNAMENT REPORT · v1.0
雪球自选策略 — 选股淘汰赛报告
从 13 只候选 → 层层过滤 → 最终入选 2 只:博士眼镜(300622)、301066
今日结论
入选 2只 胜率 0/2 均收益 -3.2% | 被过滤均收益 -1.1%
今日共 13 只被过滤,前三大来源:2只 composite_score, 2只 opening_risk, 2只 risk_filter。 详细明细见下方被过滤股票分析。
全量3只技术分均值 42.2,标准差 14.2。 需关注因子区分力。
T+1 数据需在复盘后回填,届时可对比入选与淘汰股票表现。
数据先过关:漏斗数据完整性检查
每条过滤记录都有 stock_code、filter_step、filter_reason、tech_score 字段, 确保淘汰赛的每一步都是可追溯的。
数据来源:quant_funnel_stocks + quant_daily_funnel。 技术分在前几步可能为 NULL(尚未计算就被过滤),这是预期行为。
选股淘汰赛漏斗
每层过滤都有明确理由,被过滤股票在 quant_funnel_stocks 中有完整轨迹可追溯。 绿色行 = 最终入选并执行调仓。
| 层级 | 输入 | 淘汰 | 剩余 | 关键理由 |
|---|---|---|---|---|
| 问财筛选 | 13 | 0 | 13 | 条件匹配 → 返回原始候选 |
| ST/退市检查 | 13 | 0 | 13 | ST或退市股票直接排除 |
| K线获取 | 13 | 0 | 13 | 新浪/腾讯/雪球三源fallback |
| 风险过滤 | 13 | 2 | 11 | 波动率>25%、连板、5日涨幅>70% |
| 技术分过滤 | 11 | 1 | 10 | tech_score < 50(动态阈值) |
| 技术分天花板 | 10 | 0 | 10 | tech_score > 85(超买陷阱) |
| 量价确认 | 10 | 0 | 10 | 量价背离检测(无量上涨) |
| 综合分过滤 | 10 | 2 | 8 | composite_score < 固定阈值 |
| 动态得分门槛 | 8 | 0 | 8 | 综合分 < 市场动态阈值(策略Step4.5) |
| 低价股过滤 | 8 | 0 | 8 | 收盘价<2元或低分低价股 |
| 价格过滤 | 8 | 0 | 8 | 低价<5元 / 高价>100元 |
| 价格分层风控 | 8 | 0 | 8 | 高价股得分门槛加成 |
| 市值风控 | 8 | 0 | 8 | 市值<50亿 或 >500亿 |
| 评分分化保护 | 8 | 0 | 8 | 得分集中度检测(防低质量入选) |
| 开盘风控 | 8 | 2 | 6 | 开盘跌幅>5%/高开>8%/分布日 |
| ✅ 最终入选 | - | - | 2 | 博士眼镜(300622)、301066 |
| ══ 漏斗未覆盖 | - | - | 5 | 5只候选未记录过滤步骤(需完善funnel_tracker集成) |
被过滤股票分析(误杀检测)
每个过滤步骤的股票明细。标注 T+1 涨>3% 的"误杀"情况。 误杀率≥25%的过滤器需重新审视阈值。
「候选未追踪」表示漏斗追踪器未覆盖该步骤——需完善 funnel_tracker 在各策略中的集成。
候选未追踪 — 5 只 | 漏斗追踪数据不完整
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 博士眼镜(SZ300622) | 漏斗追踪未覆盖此步骤(需完善funnel_tracker集成) | - | -3.15% |
| 超频三(SZ300647) | 漏斗追踪未覆盖此步骤(需完善funnel_tracker集成) | - | -0.48% |
| 金健米业(SH600127) | 漏斗追踪未覆盖此步骤(需完善funnel_tracker集成) | - | +1.60% |
| 万事利(SZ301066) | 漏斗追踪未覆盖此步骤(需完善funnel_tracker集成) | - | -3.34% |
| 时代出版(SH600551) | 漏斗追踪未覆盖此步骤(需完善funnel_tracker集成) | - | -6.24% |
综合分过滤 — 2 只 | composite_score < 固定阈值
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 华是科技(SZ301218) | 综合分=0.0088<0.15 | 56.4 | -4.11% |
| 珈凯生物(BJ920165) | 综合分=0.1040<0.15 | 47.4 | +2.89% |
开盘风控 — 2 只 | 低开/高开/分布日
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 京粮控股(SZ000505) | 高开(20.88%) | - | -2.32% |
| 江天化学(SZ300927) | 高开(18.56%) | - | +1.09% |
风险过滤 — 2 只 | 波动率/涨幅过大等
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 万向德农(SH600371) | 波动率/涨幅过大 | - | -4.87% |
| 新赛股份(SH600540) | 波动率/涨幅过大 | - | +0.00% |
技术分过滤 — 1 只 | tech_score < 50
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 力诺药包(SZ301188) | 技术分=0.23 <= 0.30 | 22.8 | +1.06% |
high_pullback — 1 只 | ⚠️ 误杀率偏高
| 股票 | 过滤原因 | 技术分 | T+1 |
|---|---|---|---|
| 七丰精工(BJ920169) | 日内冲高回落(4.6%) | - | +3.54% |
最终入选股票明细
以下 2 只股票通过全部过滤,已调仓到雪球组合并推送微信通知。
| # | 股票 | 技术分 | 综合分 | 板块动量 |
|---|---|---|---|---|
| 1 | 博士眼镜(300622) | - | - | - |
| 2 | 301066 | - | - | - |
因子分布分析
技术分与综合分的分布特征,判断当前因子体系是否具备足够的区分度。
按过滤步骤分布(从 funnel_stocks 统计)
- 候选未追踪: 5 只
- 综合分过滤: 2 只
- 开盘风控: 2 只
- 风险过滤: 2 只
- 技术分过滤: 1 只
- high_pullback: 1 只
判断标准:标准差 < 5 表示技术分区分度严重不足(所有股票得分接近,因子失效)。 此时应检查权重或调整因子计算方式,而非简单降低阈值。
保护样本:防止过度解释
保护路径不是历史命中率。它们阻止从少数极端案例反推普遍规律。
| 保护路径 | 场景 | 应怎样翻译 | 防止的误判 |
|---|---|---|---|
| 普通匀速缓跌 | 股票缓慢下跌,无加速 | 可以过滤,但不能因浮点误差写成向下反馈加速 | 把所有缓跌都叫踩踏 |
| 单根消息重估后横盘 | 一次性下跌后横盘,无持续卖压 | 没有候选后价格延续时降为"仅重叠" | 把一次性重估解释为持续级联 |
| 单股持续卖压、市场宽度向上 | 个股下跌但大盘上涨 | 范围保持 single_stock,记录方向冲突 | 把单一大资金执行提高为全市场合力 |
| 快速下跌后持续回升 | V型反转 | 先保留下压事件,再写修复 | 只看日内下跌而忽略恢复力 |
| 权重指数下跌、上涨家数占优 | 指数跌但多数股票涨 | 范围保持 index_weighted | 把上证等同于全部个股 |
| 指数、宽度、板块健康同向上行 | 全面上涨 | 可提高为全市场向上扩散 | 系统只能识别下跌 |
| 只有五分钟路径 | 数据粒度不足 | 保留五分钟粒度,停止一分钟候选 | 把桶结束时刻冒充真实事件 |
一只被过滤的股票即便次日涨停,也不能反推过滤器有Bug。需 ≥5个交易日、≥25% 误杀率才能标记为高风险过滤器。
这一步真正帮助什么,以及不能做什么
- 可视化每只股票的完整过滤轨迹
- 快速知晓命中/过滤了哪些股票
- 识别误杀率高的过滤器
- 追溯每步过滤的具体原因
- 预测 T+1 涨跌
- 单日数据调整过滤策略
- 确认量化成交占比
- 替代投资决策
真正的进步不是把直觉包装成确定性,而是让每次过滤、淘汰和入选都能留下来接受未来事实批改。 淘汰赛漏斗的真正价值在于积累足够的样本后,用数据驱动迭代,而非一日之得失。