
上一篇写贝叶斯定理时,有读者追问:「这套东西能变成真正可执行的策略吗,还是只停留在投资理念层面?」
这个问题问到了点子上。
贝叶斯 + 凯利的框架,描述的是「该怎么想」——用先验、用证据、持续更新、据此调整仓位。但从「怎么想」到「怎么做」,中间还差三个工具:卡尔曼滤波、隐马尔可夫模型(HMM)、信号强度显式建模。
它们合在一起,才能把「应对思维」装进可以跑代码、可以回测的交易系统。
核心问题是: 你看到的价格是含噪声的观测值,背后有一个你看不见的「真实状态」。
比如配对交易里两只相关股票的价差。价差每天都在抖动,但你真正关心的不是今天的数字,而是它偏离「真实均衡值」多少——那才是交易信号。
卡尔曼滤波做两件事循环往复:
预测步:根据上一时刻的估计,预测当前状态(先验)
更新步:看到新数据后,修正预测(后验)
更新的公式是:
\[\hat{x}_t = \hat{x}_{t|t-1} + K \cdot (z_t - \hat{x}_{t|t-1})\]其中 $K$ 是卡尔曼增益,由过程噪声和观测噪声的比值自动计算,决定「新数据」和「先验估计」各信多少。这正是贝叶斯更新在线性高斯系统下的最优实现——只不过不再靠人工拍感觉,而是数学上的最优解。
实际应用中,卡尔曼滤波被广泛用于估计随时间变化的因子暴露(beta)、追踪均值回归信号的强度,以及过滤价格序列里的短期噪声。
核心问题是: 牛市、熊市、震荡市的统计特征完全不同,但你无法直接「观测」到当前处于哪个状态——它是隐藏的。
HMM 的结构正好对应这个问题:
隐藏状态(你看不见):牛市 / 熊市 / 震荡市
可观测量(你能看到):每日收益率、波动率、成交量
模型从历史数据里学到两类信息:每个状态下收益率的统计特征(均值、方差),以及状态之间的转移概率——比如牛市转入熊市的概率是多少,熊市自我延续的概率是多少。
训练完成后,每天喂入新数据,模型输出「当前各状态的概率」:
牛市概率:72%
熊市概率:18%
震荡概率:10%
这个概率输出就是贝叶斯框架里的先验 $P(A)$——是机器算出来的,不是人拍脑袋估的。不同市场状态下,信号的有效性、仓位的合理水位都应该不同,HMM 提供了这个切换的依据。
凯利公式 $f = \frac{p \cdot b - (1-p)}{b}$ 需要两个输入:胜率 $p$ 和赔率 $b$。
问题在于,这两个数从哪里来?
胜率 $p$ 的建模: 把多个来源的信号合并成一个经过校准的概率。比如动量因子、估值信号、HMM 输出的市场状态,用逻辑回归或贝叶斯模型平均整合,输出一个数字,比如 $p = 0.63$。
「校准」是关键——模型输出 63% 的时候,历史上真实胜率也得接近 63%,不能只是名义上的数字。
赔率 $b$ 的建模: 从历史数据统计,当这类信号出现时,平均盈利幅度和平均亏损幅度的比值:
\[b = \frac{\text{平均盈利幅度}}{\text{平均亏损幅度}} = \frac{8\%}{4\%} = 2\]两个数都有了,凯利公式才真正可以执行:
\[f = \frac{0.63 \times 2 - 0.37}{2} = 44.5\%\]实际操作往往取半凯利(约 22%),为模型误差留出缓冲。
单独看每个工具都是抽象的,串起来才是一套完整的系统:
HMM 识别市场状态(先验:现在是牛市还是熊市?)
↓
卡尔曼滤波追踪因子信号的真实强度(过滤噪声)
↓
多信号合并 → 输出校准概率 p
↓
历史统计得出赔率 b
↓
凯利公式计算仓位 f
↓
执行
这条链的每一个箭头,对应的正是《贝叶斯定理:最被误解的应对工具》里描述的那个更新过程:
新证据出现 → 贝叶斯更新胜率 → 凯利重新计算仓位 → 执行调整
区别只在于:文章描述的是逻辑结构,量化系统是把每个环节都换成了可以跑代码、可以回测的具体实现。
这套工具大多数人不会亲手实现,但理解它的结构有两个现实意义。
第一, 评估量化产品时有了参照系。市面上的量化基金、量化 ETF,背后大概率在跑类似的逻辑。知道这条链的结构,就能判断它的假设是否合理,风险在哪里——比如 HMM 在市场状态切换时往往有滞后,卡尔曼滤波的参数选错会过度平滑信号,Kelly 的输入误差会被杠杆放大。
第二, 主观投资也可以借鉴框架。你不需要写代码,但可以问自己:我对当前市场状态的判断是什么(HMM 的逻辑),这个信号的历史胜率和赔率我是否统计过(Kelly 的输入),我的仓位和胜率是否匹配(Kelly 的输出)。把这三个问题显式地回答出来,决策质量就已经高过大多数人了。
贝叶斯给了你思维的框架,这三个工具把框架装进了机器。理解链条的结构,是站在两者之间最有价值的位置。
关联阅读:只应对不预测 · 贝叶斯定理:最被误解的应对工具