#22118 混合 免费

ID-1016_结构韧性蓄势突破选股研究报告

公式说明 AI生成

一句话概括:用"过去40天创新高的天数多不多、跌破20日线的天数少不少"来判断一支股票是不是被资金密实推着走、结构够韧,再挑没追到顶的时机买入。 核心买入逻辑:算两个计数——40天内创新高天数NHC≥5、跌破20日线天数BRK≤12,韧性评分RESIL=NHC×10÷(BRK+5)≥8且比5天前高;再加四道过滤:收盘价在20日线上且20日线在60日线上、距40日高点还差3%以上、成交量在20日均量0.8到2.5倍之间、当天没涨停。 适合环境:震荡市,专挑结构密实、反复抬台阶却没追顶的慢牛股,不适合单边暴涨或暴跌反弹。 风险提示:跌破60日线或韧性评分塌到4以下就离场,实盘需另挂止损。

研究报告
# ID-1016 结构韧性蓄势突破选股 研究报告 - **公式ID**: FORMULA-1016 - **生成时间**: 2026-08-10 03:12-04:10 (Asia/Shanghai) - **提示词版本**: v4.5(统一合并版) - **通道**: Step 0 发散通道(next_id 1016,1016 mod 5 = 1 落在 {0,1,2}) - **信号家族**: 趋势跟随 trend_follow(全库可操作家族中覆盖最低,31条) - **信号原型**: 结构韧性 structural resilience(新高密度 / 破位次数 计数型路径统计) - **Warmup**: 100 根 K 线 - **执行假设**: T 日收盘计算信号,T+1 日开盘执行 - **核心结论**: ⚠️ **原假设被证伪,但在证伪过程中发现并验证了一个反向结构性边缘** --- ## 逻辑链说明(Step 1) **市场背景**:当前市场状态检测为震荡市(sideways)。震荡市里幅度类指标(涨幅/突破/量比)极易被单根消息刺激的大阳线点亮,次日回吞。真正稀缺的信息不是"涨了多少",而是"这段上涨的结构有多密实、被打断过几次"。一个由资金持续吸纳推动的健康趋势,其价格路径特征应当是:新高像台阶一样反复出现(高频),且每次回踩都不跌破中期支撑(低破位)。而脉冲式假趋势的路径特征相反:只有一两个孤立新高,中间频繁跌破支撑。二者可能拥有完全相同的区间涨幅,却是完全不同的结构质量。 **信号设计**:构造两个计数型统计量: - `NHC = COUNT(HIGH >= REF(HHV(HIGH,20),1), 40)` —— 过去40日创出"前20日最高价"新高的天数(新高密度) - `BRK = COUNT(CLOSE < MA(CLOSE,20), 40)` —— 过去40日收盘跌破20日均线的天数(结构损伤) - `RESIL = NHC*10/(BRK+5)` —— 韧性评分,分母加5为平滑项,避免 BRK=0 时评分爆炸 买入要求:NHC>=5 且 BRK<=12 且 RESIL>=8 且 RESIL>=REF(RESIL,5)(评分改善态)。 **确认机制**:G1 趋势方向(CLOSE>MA20 且 MA20>MA60)排除下降通道内的技术性密集反弹;G2 位置(CLOSE<HHV(HIGH,40)*0.97)买中继不追顶;G3 量能带通(0.8×VMA20 < VOL < 2.5×VMA20)既排除无人问津的缩量,也排除单日爆量(爆量常是结构终结而非密实推进);G4 非涨停(当日涨幅<9%)保证可成交。 **风险控制**:卖出为二择一——跌破60日均线(结构彻底损坏)或 RESIL<4(密实度消失)。入场端 G2 位置上限 + G3 量能上限构成前置风控边界。通达信选股公式框架不内嵌逐笔止损,实盘需外挂 ATR 止损。 --- ## A. 实现细节(Implementation Details) ### A1 公式逻辑 | 层 | 组件 | 表达式要点 | 设计意图 | |---|---|---|---| | 核心 | NHC | `COUNT(HIGH>=REF(HHV(HIGH,20),1),40)` | 新高密度,路径事件计数 | | 核心 | BRK | `COUNT(CLOSE<MA(CLOSE,20),40)` | 破位次数,结构损伤计数 | | 核心 | RESIL | `NHC*10/(BRK+5)` | 韧性评分(比值型结构度量) | | 投票 S1 | DENSE | NHC>=5 | 新高密度达标 | | 投票 S2 | INTACT | BRK<=12 | 破位次数受控 | | 投票 S3 | STRONG | RESIL>=8 | 评分绝对水平 | | 投票 S4 | IMPROVE | RESIL>=REF(RESIL,5) | 评分一阶导(改善态) | | 门控 G1 | 趋势 | CLOSE>MA20 AND MA20>MA60 | 排除下降通道 | | 门控 G2 | 位置 | CLOSE<HHV(HIGH,40)*0.97 | 买中继不追顶 | | 门控 G3 | 量能 | 0.8×VMA20 < VOL < 2.5×VMA20 | 带通,双向排除 | | 门控 G4 | 涨幅 | CLOSE/REF(CLOSE,1)<1.09 | 可成交性 | ### A2 与已覆盖原型的数学差异(选向合规性论证) 方向选择器本次输出"基于时变贝塔与条件风险价值(CVaR)的尾部防护选股",但该家族在库内已有 8 条(F338/F643/F651/F672/F771/F812/F925/F952),属**密集覆盖**。依 v4.5 修复A 选向铁律,已主动否决该输出并改选覆盖最低的可操作家族。家族覆盖扫描结果:`calendar 4 / pairs 4 / liquidity_micro 17 / trend_follow 31 / tail 47`——其中 calendar/pairs 需外部数据管道(v4.5 标注为 ⏳ 未就绪),故选定 **trend_follow(31)**。 在 trend_follow 家族内部,本公式与已覆盖原型的本质差异: | 已覆盖原型 | 数学本质 | 本公式差异 | |---|---|---| | 唐奇安/箱体突破 F618/F740/F776/F791/F907 | 判断"是否突破某一个点"(单点阈值) | 本公式统计"新高出现得有多密"(事件频次) | | Aroon F292/F817/F891 | 取最近一次极值的时间距离(单点时间) | 本公式统计整段窗口内的事件计数(路径统计) | | TIME-UNDERWATER F975 | 单一回撤水下时长时钟 | 本公式为新高密度与破位次数的比值型评分 | 全库 780 条历史索引中,关键词"新高密度/创新高频率/破位次数/结构韧性"命中数均为 **0**,确认为空白维度。 ### A3 执行时点与 Warmup 信号在 T 日收盘后计算,T+1 日开盘执行。所有引用均为当日及历史值(REF/HHV/LLV/COUNT/MA 全为回看窗口),无 `REF(X,-1)` 类未来函数。 Warmup = 100 根 K 线:`COUNT(...,40)` 嵌套 `REF(HHV(HIGH,20),1)` 需 40+20+1=61 根,`MA(CLOSE,60)` 需 60 根,取 100 为安全冗余。所有评估指标均在 Warmup 切片之后计算。 ### A4 回测结果 **官方双引擎交叉验证(Step 3 强制,未清洗 10027 代码全市场)** | 项 | 方案A `backtest_cli.py` | 方案B `backtest_planb.py` | 差异 | |---|---|---|---| | valid_stocks | 4126 | 4126 | 0 | | avg_win_rate | 46.30% | 46.34% | **0.04pp**(<5% 一致) | | positive_stocks | 1996 | 1996 | 0 | | 耗时 | 1040.8s | ~1050s | — | | errors | 289 | — | — | 双引擎在有效股票数、正收益股票数上**完全相同**,胜率差 0.04pp,交叉验证**强一致**,公式解析无歧义。 ⚠️ **污染警告(延续 F1014/F1015 已证结论)**:方案A top5 为 `880863(+1121.3%)`、`880774(+686.2%)`、`880812(+627.3%)` ——均为**板块指数**而非个股。未清洗 universe 的 `avg_return 4.3%` **不可引用**。所有收益数字改用下方清洗口径。 **清洗口径回测(复用 F1014 已验证清洗器 `_diag1014d.py` 规则)** 清洗规则:仅保留 000/001/002/003/300/301/600/601/603/605/688 开头6位真实A股 + 剔除存在单日涨跌幅>35%的标的 + 前瞻收益 winsor ±30% + 至少130根K线。得 **5259 个真实A股代码 / 5061 只通过过滤 / 4662 只产生信号**。 | 指标 | 信号组 | 基准(全bar) | 差值 | |---|---|---|---| | 样本量 n | 60,376 | 3,697,203 | — | | 胜率 | **42.84%** | 47.41% | **-4.57pp** | | 单笔均值 | **-0.4455%** | +0.1691% | -0.6146pp | | 盈利因子 PF | 0.880 | 1.072 | — | | 每笔夏普 | -0.047 | +0.024 | — | | VaR95 | -14.45% | -9.98% | 更差 | | CVaR95 | -18.95% | -14.83% | 更差 | | 安慰剂 percentile | **0.0** | — | 显著跑输 | **结论:原假设被证伪。** 6万笔样本上,"结构韧性高"的股票不仅没有超额,反而系统性跑输基准 4.57pp,且尾部风险(VaR/CVaR)全面更差。安慰剂 percentile=0.0 意味着在 2000 次计数匹配的随机抽样中,**没有任何一次**比该信号更差——这是一个强度极高的反向显著结果,而非噪声。 ### A5 消融实验:定位负边缘来源 单次遍历清洗全样本,同时评估 12 个变体: | 变体 | n | 胜率 | 单笔均值 | PF | vs基准 | |---|---|---|---|---|---| | BENCH 基准 | 3,697,203 | 47.410% | +0.1691 | 1.072 | 0 | | **FULL 完整公式** | 60,376 | 42.843% | -0.4455 | 0.880 | -4.57pp | | LOO_DENSE 删新高密度 | 60,427 | 42.829% | -0.4458 | 0.880 | -4.58pp | | LOO_INTACT 删破位约束 | 60,556 | 42.826% | -0.4464 | 0.880 | -4.58pp | | LOO_STRONG 删评分阈值 | 143,330 | 42.987% | -0.3704 | 0.891 | -4.42pp | | LOO_IMPROVE 删改善态 | 75,537 | 43.089% | -0.4067 | 0.890 | -4.32pp | | LOO_G1trend 删趋势门 | 69,655 | 44.136% | -0.2698 | 0.923 | -3.27pp | | LOO_G2pos 删位置门 | 89,810 | 43.603% | -0.3221 | 0.904 | -3.81pp | | LOO_G3vol 删量能门 | 97,037 | 42.546% | -0.4777 | 0.867 | -4.86pp | | CORE_ONLY 仅韧性核心 | 164,557 | 44.368% | -0.1996 | 0.939 | -3.04pp | | GATES_ONLY 仅门控 | 453,567 | 45.814% | +0.0627 | 1.022 | -1.60pp | | INV_RESIL 反转评分 | 377,722 | 46.367% | +0.1570 | 1.057 | -1.04pp | | **INV_FULL 完全反转** | 766,326 | **48.805%** | **+0.3820** | **1.177** | **+1.40pp** | 关键读数: 1. **删除任何单一组件都无法救回负边缘**(LOO 全部仍在 -3.3 ~ -4.9pp),说明负边缘不是某个参数没调好,而是**假设本身方向错了**。 2. **CORE_ONLY(-3.04pp) 比 GATES_ONLY(-1.60pp) 更差**,证明拖累项是韧性核心本身,而非门控层。 3. **INV_FULL(低新高密度 nhc<=2 + 高破位 brk>=20 + 原门控)反而跑赢基准 +1.40pp,PF 1.177**——反向结构才是有信息量的一侧。 ### A6 反向发现的严格样本外验证 对 A5 的反向发现必须做时间切分,否则等同于在同一批数据上二次挖掘。训练段 2023-01~2025-03 仅用于确认方向,测试段 2025-04~2026-07 完全独立: | 组 | n | 胜率 | 单笔均值 | PF | 每笔夏普 | VaR95 | CVaR95 | |---|---|---|---|---|---|---|---| | 训练段 INV 信号 | 493,864 | 48.052% | +0.3822 | 1.166 | 0.0513 | -9.79% | -16.12% | | 训练段 基准 | 2,142,576 | 46.023% | +0.0642 | 1.026 | 0.0090 | -10.18% | -15.29% | | **测试段 INV 信号** | 272,462 | **50.170%** | **+0.3818** | **1.203** | 0.0645 | -8.05% | -11.79% | | 测试段 基准 | 1,554,627 | 49.321% | +0.3137 | 1.141 | 0.0455 | -9.72% | -14.18% | | 测试段 FULL(原韧性) | 34,825 | 44.718% | -0.0169 | 0.995 | -0.0017 | -14.41% | -19.13% | | 测试段 GATES_ONLY | 213,371 | 46.617% | +0.1587 | 1.054 | 0.0187 | -12.18% | -16.75% | - 测试段安慰剂 percentile = **100.0**(2000 次计数匹配抽样中无一次超过该信号均值) - 测试段超额:胜率 **+0.85pp**、单笔均值 **+0.068pp**、PF 1.203 vs 1.141 - **该检验具备区分力**:同一框架下 FULL(原韧性假设)在测试段掉到 44.72%/PF 0.995,GATES_ONLY 掉到 46.62%——说明测试段不是"什么都能过",而是确实把错误假设筛掉了。 - 反向信号的 VaR95/CVaR95 **优于**基准(-8.05% vs -9.72%,-11.79% vs -14.18%),风险侧同向改善,非靠承担更多尾部风险换取收益。 ### A7 强制自检 4 步 1. **是否使用未来数据**:✅ 无。全部为 REF/HHV/LLV/COUNT/MA 回看窗口,无 `REF(X,-1)`。前瞻收益仅用于事后评估,不参与信号构造。信号 T 日收盘生成、T+1 开盘执行。 2. **Warmup 之后才判断**:✅ 是。代码内 Warmup=100 已标注,清洗口径脚本内 `buy[:WARMUP]=False` 强制屏蔽,所有指标在 Warmup 切片后计算。 3. **参数过拟合检查**:✅ 已排除且结论反向加强。LOO 消融显示删除任一组件负边缘依然存在(-3.3~-4.9pp),不存在"某个参数调对就能翻正"的过拟合甜点。反向发现经独立时间切分验证,训练段与测试段单笔均值几乎一致(+0.3822 vs +0.3818),无参数漂移。 4. **是否夸大宣传**:✅ 无。原假设的失败被如实完整记录并作为主结论;反向发现明确标注为"样本外验证通过但幅度有限(+0.85pp)",未写成样本内数字,未把未清洗口径的 4.3% 当作收益。 ### A8 适用市场 A股全市场(沪深主板/中小板/创业板/科创板,清洗后 5259 只)。当前形态**不建议**实盘使用(见 C 段)。 --- ## B. 已知偏差(Limitations and Bias) ### B1 数据源与污染偏差 官方 `--multi` 使用的 10027 代码 universe 混入板块指数(880xxx)、ETF、可转债等非个股品种,这些品种的"收益"在跳变点上完全失真(top5 中 880863 报 +1121%)。本报告所有收益结论均基于清洗后 5259 只真实A股,未清洗口径仅用于双引擎一致性校验(胜率差 0.04pp)。**任何引用本公式收益数字时必须使用清洗口径。** ### B2 持有期假设偏差 清洗口径统一采用 5 交易日固定前瞻收益,与引擎实测 `avg_hold_days 6.0` 接近但不完全相同。公式定义的卖出条件(跌破MA60 或 RESIL<4)是状态触发而非固定持有期,真实持有期分布更长且离散。因此清洗口径衡量的是"信号发出后5日的短期前瞻表现",不等同于完整策略的持仓损益。这一口径对 FULL 和 INV 一视同仁,故**组间比较有效,绝对水平需保留**。 ### B3 反向发现的经济含义未确证 INV_FULL 在测试段的 +0.85pp 超额,其经济解释最可能是**短期均值回归**(低新高密度+高破位=近期超跌,5日窗口内技术性反弹),而非本研究原本要找的"结构质量"因子。这意味着它很可能与库内已有的 meanrev_heavy 家族(268条)存在重叠,**不应作为新维度直接注册配方**。它的价值在于证伪证据,而非独立alpha。 ### B4 市场适应性 测试段(2025-04~2026-07)基准胜率 49.32%,明显高于训练段的 46.02%,说明测试段整体是更友好的市场环境。INV 信号的超额在两段都存在(训练+2.03pp、测试+0.85pp)但**测试段明显衰减**,提示该效应在强势市中被压缩。震荡/弱势市可能是其主要生效环境,尚未单独验证。 --- ## C. 结果解读(Result Interpretation) ### C1 逻辑质量 原假设"新高密集且少破位=结构健康=未来更好"在经济学直觉上高度可信,这正是它值得被严格检验的原因。6万笔样本给出的答案是**方向性错误**:这类股票在信号发出时已经完成了大部分上涨,5日窗口内更可能进入获利了结与均值回归。换言之,"路径密实"是一个**滞后的、已实现的**属性,不是前瞻信息。这与 F1014 的教训同构——结构越"漂亮"的形态,往往越是买在中后段。 ### C2 创新点 本公式的创新在**度量方式**而非结论:把趋势质量从"幅度/斜率"改写为"事件计数比值(新高密度÷破位次数)",这是全库 780 条中未出现过的路径统计视角。虽然结论是负的,但该度量本身作为材料节点入库后,可与其他维度组合(依 v4.5 拓扑自进化原则,差公式亦是组合材料,不删)。 ### C3 风险点 最大风险是**如果不做清洗就会得出完全相反的结论**:未清洗口径显示 avg_return +4.3%、best +1121%,看起来是个成功策略;清洗后真实表现为 -0.4455%/笔。这是本次任务最重要的操作性警示,也第三次独立复现了 F1014 的污染发现。 ### C4 适用场景 当前形态**不建议任何实盘使用**。FULL 版本在样本外测试段 PF 0.995、单笔均值 -0.0169%,扣除交易成本后确定为负期望。本公式的定位是:**入库作为反向材料节点 + 为"路径统计"这一度量方式提供已验证的失败基线**。 ### C5 改进方向 1. 反向信号(INV_FULL)应先与 meanrev_heavy 家族的 268 条做正交性检验,确认是否只是均值回归的换皮,再决定是否注册配方(B3)。 2. 若要挽救正向假设,应把 RESIL 从"绝对水平"改为"**横截面分位**"——绝对高韧性=已涨完,但同期同行业中相对韧性突然跃升可能才是前瞻信号。这需要 D 计划的 `cross_sectional_rs()` 支持。 3. 持有期从固定 5 日改为按公式自身卖出条件的事件驱动口径重测(B2),验证结论是否对持有期稳健。 ### C6 对抗式审查 我主动怀疑了以下 5 个点,并逐一排除: 1. **怀疑:负结果是不是公式写错了/解析器误读?** 排除:方案A与方案B两个**独立解析器**在 4126 只有效股票上给出完全相同的 valid_stocks 与 positive_stocks,胜率差仅 0.04pp。单股 000001 调试也正常产生 2 笔交易(胜率50%、PF 2.39)。公式被两套引擎一致地正确解析,负结果不是解析bug。 2. **怀疑:负结果是不是样本量不足的偶然?** 排除:清洗口径信号组 n=60,376 笔,安慰剂检验 2000 次计数匹配抽样中 percentile=0.0(无一次更差)。这是显著性极强的结论,不是小样本噪声。 3. **怀疑:是不是某个门控参数没调好,调一下就翻正?** 排除:做了 8 个 leave-one-out 变体,删除任意单一组件后负边缘依然维持在 -3.27 ~ -4.86pp,无任何组件的移除能使其转正。CORE_ONLY(-3.04pp) 差于 GATES_ONLY(-1.60pp),定位到拖累项是核心假设本身而非可调参数。 4. **怀疑:反向发现(+1.40pp)会不会是同一批数据上的二次挖掘(data snooping)?** 排除:这个怀疑是成立的,因此**没有直接采信**,而是补做了严格时间切分(训练 2023-01~2025-03 / 测试 2025-04~2026-07)。测试段独立复现 50.17%/PF 1.203/placebo 100.0,且同框架下 FULL 在测试段被正确筛掉(44.72%/PF 0.995),证明该检验具备区分力而非放水。同时在 B3 中明确标注其经济含义可能只是均值回归,未夸大为新alpha。 5. **怀疑:是否和现有公式重复?** 排除:语义去重相似度 **15.53%** < 60%(exit 0);对抗式新颖性评分 **1.00** ≥ 0.7;全库 780 条索引中"新高密度/创新高频率/破位次数/结构韧性"关键词命中数为 0。数学本质上与唐奇安(单点突破)、Aroon(单点时间距离)、TIME-UNDERWATER(单一水下时钟)均不同(见 A2)。 --- ## 质量门检查表 | 检查项 | 门槛 | 本公式 | 结论 | |---|---|---|---| | R01-R05 规则验证 | 全部通过 | 通过 OK,复杂度5星 | ✅ | | 逻辑链说明 | ≥100字,4要素齐全 | 市场背景/信号设计/确认机制/风险控制齐全 | ✅ | | 多样性得分 | ≥3分(3类以上指标) | 时间计数统计+趋势+量能+位置 四类正交 | ✅ | | 语义去重相似度 | <60% | 15.53% | ✅ | | 对抗式新颖性 | ≥0.7 | 1.00 | ✅ | | Warmup 标注 | 已标注 | 100根,公式头部已注明 | ✅ | | 对抗式审查怀疑点 | ≥3个 | 5个 | ✅ | | 报告结构 | A/B/C三段 | 齐全 | ✅ | | 双引擎交叉验证 | 差异<5% | 0.04pp | ✅ | --- ## 结论 **FORMULA-1016 的原始假设(结构韧性正向选股)已被 6 万笔清洗样本明确证伪**:胜率 42.84% vs 基准 47.41%,安慰剂 percentile 0.0,且 8 个消融变体均无法翻正,证明是假设方向错误而非参数问题。 **证伪过程中发现的反向结构(低新高密度 + 高破位)通过了严格样本外验证**:测试段 50.17% / PF 1.203 / placebo percentile 100.0,超额 +0.85pp,且风险侧(VaR/CVaR)同向改善。但其经济含义很可能是短期均值回归而非新维度,需先与 meanrev_heavy 家族做正交性检验后再决定是否注册配方。 本公式按 v4.5 拓扑自进化原则**入库为材料节点(不删差公式)**,作为"路径统计度量"的首个已验证失败基线,供后续组合实验调用。
公式源码
登录后可查看

回测数据已公开,完整源码仅对已购买用户开放

查看定价
回测统计
胜率
---
平均收益
---
夏普比率
待验证
最大回撤
-0.0%
按市场状态分段表现

暂无市场状态数据