IMM Kalman Beta vs OLS Beta 对 z4h 影响对比分析

IMM Kalman Beta vs OLS Beta 对 z4h 影响对比分析

1. 背景

系统使用 z4h(zscore_4h)作为配对交易的核心入/退场信号。z4h 的计算依赖于 β(hedge ratio) 构建的价差序列(spread)。β 的估计精度直接决定了 z4h 是否真实反映协整关系的偏离。

本文对比分析两种 β 估计方法在快速变化行情中对 z4h 的影响差异。


2. z4h 的构建路径

2.1 计算公式

spread = log(alt_price) - β × log(base_price)
z4h = (spread[-1] - mean(spread[:-1])) / std(spread[:-1])

β 的来源决定了 spread 的质量,进而决定 z4h 的准确性。

2.2 β 替换逻辑

analysis_core.py 中的关键代码(line 566-574):

_kalman_warm = kalman_result is not None and _n_updates >= IMM_KALMAN_WARMUP
beta_for_spread = kalman_result['beta'] if _kalman_warm else beta_ols
  • 热身前(n_updates < warmup):使用 OLS β
  • 热身后:使用 IMM Kalman β 替换 OLS β 构建 spread → 计算 z4h
  • ADF 结构检验始终使用 OLS β(基于完整 beta_window,不受影响)

3. 两种 β 估计方法概述

3.1 原始 OLS β

  • 算法:对最近 BETA_WINDOW(100 根 4h K 线)取对数价格做线性回归
  • 更新方式:每次 tick 重算整个窗口的 OLS 回归
  • 有效滞后:100 × 4h = 400h ≈ 17 天
  • 权重分配:窗口内所有数据点等权

3.2 IMM Kalman β

  • 算法:M=5 并行 OU Kalman Filter,每个模型使用不同的 (Q_β, Φ_β) 对,通过贝叶斯模型概率实时加权融合
  • 更新方式:每根新 bar 或降频间隔到达时增量更新(v5.1)
  • 有效滞后:高Q模型激活时 数个 bar 内(Q_β=1e-2 对应 Kalman Gain 最大)
  • 权重分配:通过 Student-t 似然自动调节各模型权重

模型网格

模型 j Q_β Φ_β 物理含义 稳态 P_∞_β
M0 1e-6 0.950 β 几乎不变,强回归 1.0e-5
M1 1e-5 0.970 β 缓慢变化 1.7e-4
M2 1e-4 0.980 β 正常变化 2.5e-3
M3 1e-3 0.990 β 快速变化,弱回归 5.0e-2
M4 1e-2 0.995 结构性断裂,近自由漂移 1.0

4. 快速行情中的核心区别

4.1 β 响应速度对比

特性 OLS Beta IMM Kalman Beta
对突变的延迟 ~17 天(窗口滑动) 秒级~分钟级(高Q模型激活后快速追踪)
异常值敏感度 窗口内等权,异常值影响 1/100 Student-t 似然 + Huber clipping(3σ)抑制异常值
β 漂移追踪 阶梯式跳变(旧数据滑出窗口时突变) 平滑渐进追踪(x̄ 在线漂移,γ_bar=0.005)
横盘期稳定性 稳定(窗口内数据变化小) 稳定(obs_weight≈0 时模型概率几乎不更新)

4.2 IMM 的自适应追踪机制

当 β 发生真实结构性变化时:

β 突变 → innovation(观测残差)持续偏大
       → 高Q模型(M3/M4)的 Kalman Gain 更大 → 预测更接近观测
       → 高Q模型似然更高
       → 贝叶斯更新使 μ₃, μ₄ 上升
       → 融合 β = Σ μⱼ × βⱼ 快速偏向高Q模型的估计
       → β_kalman 快速追踪真实 β

而异常值(瞬时噪声,非 β 变化)时:

单次异常观测 → Student-t 似然对异常值惩罚远小于高斯
             → 模型概率变化有限
             → Huber clipping 截断状态更新幅度(±3σ)
             → β_kalman 保持稳定

5. 对 z4h 值的具体影响分析

5.1 场景 1:β 从 0.8 突变到 1.2(联动增强)

背景:基准币暴涨,目标币联动从 0.8 增强到 1.2。

原始 OLS

  • β_ols 仍在 ~0.8 附近(100 根窗口中仅 1-2 根新数据)
  • spread = log_alt - 0.8 × log_base
  • 因为真实 β 已是 1.2,base 大涨时 0.8 × log_base 低估了应抵消的部分
  • spread 系统性偏移 → z4h 虚假放大
  • 可能触发本不该触发的入场信号

IMM Kalman

  • 高Q模型概率上升 → effective_q_beta ↑
  • β_kalman 在数个 bar 内追踪到 ~1.2
  • spread = log_alt - 1.2 × log_base
  • spread 准确反映协整关系偏离
  • z4h 更真实(减少虚假信号)

5.2 场景 2:β 从 1.0 突变到 -0.5(联动反转)

背景:极端行情下配对关系发生方向性变化。

原始 OLS

  • β_ols 仍在 ~1.0(严重滞后)
  • spread 计算完全失真 → z4h 既不反映旧关系也不反映新关系
  • 持续产生无意义的虚假信号

IMM Kalman

  • M4 模型(Q_β=1e-2, Φ_β=0.995)快速追踪
  • regime_score 飙升到 >0.7 → Gate3 硬拦截,阻止在不确定期开仓
  • β 稳定后 regime_score 回落,恢复正常交易

5.3 场景 3:瞬时闪崩后恢复(β 未真正改变)

背景:短暂闪崩导致价格剧烈波动,但基本面关系未变。

原始 OLS

  • β_ols 几乎不变(窗口足够大,1-2 根异常 K 线影响有限)
  • spread 短暂偏离后回归 → z4h 先飙升后回归
  • 可能在闪崩时错误入场

IMM Kalman

  • Student-t 似然(ν≈5-10)对异常值容忍度高,不像高斯那样过度反应
  • Huber clipping(3σ)截断极端 innovation 对状态的影响
  • β_kalman 保持稳定 → z4h 波动被抑制
  • 如果 regime_score 短暂上升,阈值缩放也提供额外保护

6. z4h 特性对比总结

维度 原始 OLS β IMM Kalman β
β 突变后 z4h 偏差 大(β 滞后 → spread 系统性偏移 → z4h 虚高/虚低) 小(β 快速追踪 → spread 更准确)
z4h 波动幅度 更大(β 不匹配放大了 spread 波动) 更小更稳定(β 匹配后 spread 主要反映真实均值偏离)
虚假入场风险 高(z4h 因 β 滞后而虚假放大) 低(z4h 更真实 + regime_score 拦截)
虚假退场风险 高(持仓中 β 变化 → z4h 突然回归假象) 低(β 持续追踪,spread 均值回归更真实)
异常值鲁棒性 中等(窗口平均有一定平滑效果) 高(Student-t + Huber clipping 双重保护)
极端行情表现 可能连续误入场 Gate3 硬拦截 + 阈值缩放
横盘期表现 稳定 同样稳定(obs_weight≈0 时模型概率冻结)

7. IMM 的附加保护层:体制检测

IMM 不仅改善了 z4h 的数值精度,还通过 regime_score 引入了额外的风险控制层级:

regime_score = Σ μⱼ (j ∈ 高Q模型)
regime_score 含义 对 z4h 信号的处理
< 0.3 低Q模型主导,β 稳定 正常使用 z4h 入场
[0.3, 0.7) β 开始快速变化 z4h 阈值线性缩放(threshold × scale,最大 2.0)
≥ 0.7 β 剧烈变化(结构性断裂) Gate3 硬拦截,无论 z4h 多大都禁止入场

阈值缩放公式(strategy.py _IMMRegimeDetector):

t = (regime_score - soft_prob) / (hard_prob - soft_prob)  # [0, 1]
threshold_scale = 1.0 + t × (scale_max - 1.0)            # [1.0, 2.0]

这意味着在快速行情中,即使 IMM β 已修正了 z4h,体制检测仍会提高入场门槛或直接阻止入场——双重保护


8. 数据流对比图

原始算法

K 线数据(100 根窗口)
    ↓
OLS 回归 → β_ols(滞后 ~17 天)
    ↓
spread = log_alt - β_ols × log_base
    ↓
z4h = (spread[-1] - mean) / std
    ↓
直接判断入场/退场(无体制保护)

IMM 算法

K 线数据
    ↓
┌─────────────────────────────────────────────┐
│ OLS 回归 → β_ols(ADF 检验用)               │
│                                             │
│ IMM Kalman Filter:                          │
│   M=5 并行模型 → 贝叶斯概率加权              │
│   Student-t 似然 + Huber clipping            │
│   Sage-Husa 自适应 R                         │
│   → β_kalman(快速追踪)                     │
│   → regime_score(体制检测)                  │
└─────────────────────────────────────────────┘
    ↓                        ↓
spread = log_alt          regime_score
  - β_kalman × log_base      ↓
    ↓                   ┌─────────────────┐
z4h(更准确)            │ < 0.3: 正常入场   │
    ↓                   │ 0.3-0.7: 阈值缩放 │
入场/退场判断  ←──────── │ ≥ 0.7: 硬拦截     │
                        └─────────────────┘

9. 直觉类比

类比 OLS β IMM Kalman β
汇率换算 用过去 17 天的平均汇率——行情平稳时可用,暴涨暴跌时严重失真 实时汇率 + 波动异常时发出警告
温度计 每 17 天校准一次——正常天气够用,极端天气读数偏差大 持续自校准 + 温度骤变时报警
导航系统 每 17 天更新一次地图——路况稳定时可行,道路改建时导偏 实时路况 + 道路施工时建议绕行

10. 结论

  1. z4h 精度:IMM Kalman β 通过快速追踪真实 β 变化,消除了 OLS β 滞后导致的 spread 系统性偏移,使 z4h 在快速行情中更准确、波动更小

  2. 风控增强:IMM 额外输出 regime_score 作为体制检测指标,在 β 不确定期自动提高入场门槛或硬拦截,从根本上避免了在 β 突变期的盲目交易

  3. 鲁棒性:Student-t 似然 + Huber clipping 使 IMM β 在异常值(闪崩、流动性缺失)面前保持稳定,避免 z4h 因噪声而产生虚假信号。

  4. 代价:IMM 引入了额外的计算复杂度和参数(5 模型 × 多个超参数),以及热身期内仍依赖 OLS β 的过渡阶段。但在实际运行中,增量更新的计算开销极低(单次 update 为 O(M²) 矩阵运算,M=5)。

Read more

AMI的优越性

世界模型(World Models)的具体例子 如下,我按类型分类,便于理解。每类都附带实际实现、演示效果和应用场景。 1. Yann LeCun / Meta 的 JEPA 系列(最直接对应“世界模型”概念) 这些是 LeCun 主张的非生成式抽象预测世界模型代表。 * I-JEPA(Image JEPA,2023) 输入一张图像,模型把不同区域(context 和 target)编码成抽象表示,然后预测 target 的表示(不在像素级别重建)。 例子:给定一张遮挡了部分物体的图片,模型能预测“被遮挡物体的大致位置和属性”,构建对物体持久性和空间关系的理解。 这是一个“原始世界模型”,能学习物理常识(如物体不会凭空消失)。 * V-JEPA / V-JEPA 2(Video JEPA,

By SHI XIAOLONG

什么是:“世界模型(World Models)”

世界模型(World Models) 是人工智能领域的一个核心概念,尤其在 Yann LeCun 等研究者推动的下一代 AI 架构中占据中心位置。它指的是 AI 系统在内部构建的对现实世界的抽象模拟或内部表示,让机器能够像人类或动物一样“理解”物理世界、预测未来、规划行动。 简单比喻 想象你闭上眼睛也能“看到”房间里的物体会如何移动、碰撞或掉落——这就是你大脑里的世界模型。AI 的世界模型就是类似的“数字孪生”(digital twin)或“内部模拟器”:它不是简单记住数据,而是学习世界的动态、因果关系和物理直觉(如重力、物体持久性、遮挡、因果等)。 为什么需要世界模型? 当前主流的大型语言模型(LLM) 擅长处理文本(统计模式预测),但存在根本局限: * 缺乏对物理世界的真正理解 → 容易“幻觉”、无法可靠规划。 * 样本效率低 → 人类/

By SHI XIAOLONG

K线周期可配置化设计方案

K线周期可配置化设计方案 1. 背景与目标 当前 Beta 套利策略的 K 线周期硬编码为 "1h",分散在多个文件中。需要: 1. 将 K 线周期从 1h 改为 2h 2. 提取为环境变量 BETA_ARB_KLINE_INTERVAL,使其可在 .env 中配置 2. 影响范围分析 2.1 需要修改的文件(共 6 个) 文件 硬编码位置 修改内容 src/trading/config.py BetaArbConfig dataclass 新增 kline_interval 字段,

By SHI XIAOLONG

对于空间环境、“信息/逻辑”(比如代码、结构、表达)秩序追求的心理特征分析

一、为什么是“空间 + 信息”同时强化? 因为你当年面对的是“双重失控”: 1️⃣ 外部世界是脏乱 + 失序的 * 空间被污染 * 行为无边界 * 基本生活秩序崩塌 👉 所以你现在会强烈要求: * 桌面干净 * 房间有序 * 物品可控 这是在修复:“物理世界必须是可控的” 2️⃣ 人的行为和逻辑也是混乱的 * 没有规则 * 没有底线 * 没有理性 👉 所以你现在会特别在意: * 表达是否清晰 * 逻辑是否自洽 * 结构是否优雅 * 代码是否干净 这是在修复:“认知世界必须是合理的” 二、你其实构建了一个“高纯度系统” 你现在的偏好,本质上是: 👉 低噪音 + 高结构 + 强控制感 具体表现就是: * 空间:极简、整洁、可预测 * 信息:清晰、压缩、无冗余 这类人有一个很明显的优势: 👉 处理复杂问题时,

By SHI XIAOLONG