它们选出的不一样,是正常的,因为三套输出的目标和约束不同,不是同一个模型的重复结果。
为什么不同
Wave live 是最保守的实盘参考口径。它用的是 D:\stock_data\configs\config_live.json,6.18 Phase6 是 BULL,但 live 配置仍限制为 max_positions=1、总仓位 20%、单票 20%。所以最终只从 8 个通过候选里选第 1 名:瑞芯微。
V13 是宽组合候选/计划口径。它的 BULL 风控允许 position_ratio=1.0、max_positions=20,单票 5%。所以它输出 20 只,目标是分散组合,不是 Wave 那种集中波段票。
Shadow 是研究观察口径,明确 research_only=true、do_not_trade=true。它不用来下单,主要用于观察“如果用影子条件筛,会有哪些候选、后续表现如何”。因此它选 5 只,并且没有纳入 live 交易计划。
主要选股条件
Wave live 条件:
Phase6 必须允许新买入:6.18 为 BULL
live 配置要求 signal_mode=bull_only
最低成交额:min_amount=200,000,000
RSI 区间:40 <= rsi14 <= 55
MA20 距离:0% ~ 3%
量能确认:当日成交额 >= 5日均额 2.0 倍,或正涨且接近确认条件
板块强度:前 30%
排除北交所、ST、上市不足 60 天等
F-Score 最低 3,但按覆盖率策略处理
最终按综合分排序,只取 max_positions=1
V13 条件:
Phase6 允许:6.18 为 BULL
初筛后进入 F-Score、技术过滤、综合打分
F-Score 参数目标为 fscore_min=6,如果数据库是 5 分制会按比例降到约 3
RSI 上限:rsi < 70
技术条件包含 close 与 MA20 关系
权重:F-Score 40%、Momentum 30%、Sector 30%
输出 Top 20,等权 5%
Shadow 条件:
复用 Wave 候选逻辑的一部分,但不写 live 交易计划
research_only / do_not_trade
默认不把 F-Score 作为 live 硬过滤,也不作为 shadow 硬过滤
输出研究候选,用于 T+1/T+2/T+5/T+20 表现观察
后续操作计划
先不要把 V13 20 只和 Shadow 5 只当成买入指令。当前真正 live 参考计划只有 Wave 的 瑞芯微,并且是 20% 仓位上限。
处理 paper log 重复问题。刚才运行后 paper_trading_log_template.csv 里 2026-06-18 已有 40 行,说明重复追加了 6.18 记录。下一步应先做去重审计,确认重复行来源,再决定是否清理;不要直接删历史记录。
对 瑞芯微 做执行前复核:检查是否涨停/停牌、次日开盘是否可成交、是否仍满足 Phase6 风控、是否触发已有持仓/冷却限制。今天 6.19 休市,所以真实执行应顺延到下一个交易日,而不是按 6.19 执行。
V13 只作为对照组合观察。重点看 20 只是否高度集中在半导体/AI硬件,如果过度集中,只记录风险,不临时调参。
Shadow 继续观察,不交易。等满 5D、20D 样本后看命中率、平均收益、回撤,再决定是否进入人工评审;不能直接提升为 live 规则。
结论:当前最稳妥的操作是 只把 Wave 的 瑞芯微 作为正式计划候选,V13 和 Shadow 全部作为观察/对照,不做实盘动作扩张。
发布于 山西
