别让 HMM「概率」骗了你 —— 一种前向安全的 prob_bull 校准方法论

别让 HMM「概率」骗了你 —— 一种前向安全的 prob_bull 校准方法论

2026-06-28 · 重庆


一个价值 100 倍的问题

我在做一个 A 股 HMM 量化策略:三状态(BULL/SIDEWAYS/BEAR),Walk-Forward 回测,每窗口 1700 天训练、60 天测试。

prob_bull = 0.7 —— HMM 说 70% 概率是牛市。直觉上:做多。

直觉错了。

打开数据。同一只股票,两个不同窗口:

窗口 3:  prob_bull=0.7 → 次日涨 +2.3%
窗口 23: prob_bull=0.7 → 次日跌 -0.8%

0.7 在不同窗口不是同一个"0.7"。HMM 输出的概率是状态概率,不是收益预测。用它做大类资产配置?想多了。用来做 T+1 做多?准确率看天。

但你不能扔掉它。HMM 对市场结构的感知能力有很高的 Sharpe。你需要的是:把 prob_bull 映射到期望收益,然后用期望收益做决策。

这就是保序回归(Isotonic Regression)校准。


看似简单,实则暗坑密布

保序回归很简单:收集一堆 (prob_bull, next_day_pct_chg) 配对,拟合一条单调递增曲线,f(0.3) = -0.2%f(0.5) = +0.3%f(0.9) = +1.2%。然后用 f(prob_bull) > 0.5% 替代 prob_bull > 0.5

问题来了:测试集第一天,你没有任何本窗口的 (prob, ret) 数据对。 回测里你可以拿窗口里全部 59 天去拟合——效果极好,从 +84% 飙到 +206%(000001.SZ),Sharpe 从 1.29 到 5.93。但实盘第一天你一个 pair 都没有。

这不是一个技术问题。这是一个信息时序约束问题


我们试了四种方案,全失败了

方案 1:跨窗口连续滚动校准

拼接所有窗口到一条时间线,逐日增量更新校准曲线。

结果:000001.SZ 收益跌到 +15%(还不如不校准的 +84%),26 个窗口里有 20 个零持仓。

根因:W3 的 HMM 和 W23 的 HMM 参数不同,prob_bull=0.7 在这两个模型里的语义完全不一样。把它们塞进同一个 IsotonicRegression,PAVA 算法被迫取平均——结果就是 f(0.7) ≈ +0.7%,高于阈值是运气,低于阈值也是运气。

单一校准曲线无法同时适配多个 HMM 模型的概率语义。 这是今天最重要的一条教训。

方案 2:窗口内 min_samples=3 滚动校准

每窗口从第 4 天开始,用前 3 天数据拟合,逐日增量。最低 3 个点就能跑 PAVA,对吧?

结果:000001.SZ 收益 +20%(连不校准的 +84% 都不如),330 天持仓 vs 批校准的 121 天——多出来的都是假信号。

根因:3 天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MUKAMO

你的鼓励是我们创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值