OFI 与Lead-Lag 关系、流动性指标、成交量簇模式...一起参与策略组合

一、核心结论(先给你一句话)

OFI 是“力”的测量,不是“方向”的完整解释
  • 它测的是:当前订单簿中,买卖哪一边更用力
  • 但它不回答:
    • 这股力会不会持续?
    • 会不会被对手盘吸收?
    • 是否值得立刻交易?

所以在专业系统中:

OFI = 条件信号 / 权重因子 / 执行调节器
❌ 很少作为 “if OFI>0 就买” 的完整策略

二、专业量化系统的分层结构(非常关键)

一个成熟的高频 / 微观结构系统,通常是分层设计的:

┌──────────────────────────┐
│   风险 & 组合层 (Risk)   │
├──────────────────────────┤
│   Alpha / Signal Layer   │  ← OFI 在这里
├──────────────────────────┤
│   状态识别 (Regime)      │
├──────────────────────────┤
│   执行层 (Execution)     │
├──────────────────────────┤
│   数据 & 微结构层        │
└──────────────────────────┘

OFI 只占中间一层


三、OFI 在系统中的三种“正确角色”

① OFI 作为「确认因子」(Confirmation)

场景

你已经有一个方向性信号,比如:

  • Lead-Lag(A 市场先动,B 市场后动)
  • 统计套利残差
  • 短周期动量

此时系统问的是:

“现在下单,盘口是否支持这个方向?”

用法

Trade only if:
    Direction_signal = +1
    AND OFI_z > threshold

📌 直觉:

  • Lead-Lag 给你“方向”
  • OFI 给你“是否顺势有人推”

没有 OFI:

  • 很多交易会被对手盘瞬间吃掉

② OFI 作为「权重因子」(Strength / Sizing)

场景

方向已经确定,但仓位大小不确定。

position_size ∝ f(alpha_strength, OFI)

例如:

size = base_size × tanh(OFI_scaled)

📌 含义:

  • OFI 不决定“做不做”
  • 只决定“做多重”

这是 执行型 alpha 的典型用法。


③ OFI 作为「执行调节器」(Execution Control)

场景

策略已经决定交易,但:

  • 是 aggressive(吃单)
  • 还是 passive(挂单)
  • 还是等待?

用法

if OFI >> 0:
    use market / IOC
elif OFI ≈ 0:
    use limit
else:
    delay / cancel

📌 这是做市和大资金执行中 OFI 最重要的用途


四、OFI 如何与 Lead-Lag 组合(重点)

1️⃣ 为什么 Lead-Lag 需要 OFI?

Lead-Lag 的问题是:

  • 它通常基于 价格或成交
  • 但价格变化 可能已被消化

OFI 提供的是:

“有没有新的订单流正在接力”

2️⃣ 典型结构(专业)

Alpha_Lag = return(A) over Δt
OFI_B = order_flow(B)

Trade B if:
    Alpha_Lag > 0
    AND OFI_B > 0

📌 直觉:

  • A 已经动了(信息先到)
  • B 的盘口正在被买盘推动
  • 这才是真正的可交易窗口

3️⃣ 时间尺度区分(非常重要)

信号时间尺度
Lead-Lagms ~ s
OFItick ~ ms
执行μs ~ ms

OFI 的作用是 缩短 lag 的反应窗口


五、OFI + 流动性指标(防止“假信号”)

1️⃣ OFI 最大的问题:假突破

OFI 很容易被:

  • spoof
  • 大额撤单
  • 薄盘口放大

所以必须配合流动性状态

常用指标:

  • Bid-Ask Spread
  • Order Book Depth
  • Order Book Resiliency(恢复速度)

2️⃣ 专业过滤方式

Trade only if:
    OFI_signal
    AND spread < spread_quantile_80
    AND depth > depth_quantile_30

📌 否则:

  • 即使 OFI 很强,也可能是“虚假流动性”

六、OFI + 成交量簇(Volume Clustering)

1️⃣ 成交量簇告诉你什么?

“有没有真正的钱在打”

OFI 看的是:

  • 订单变化(意图)

成交量簇看的是:

  • 实际成交(兑现)

2️⃣ 组合逻辑

if OFI > 0
AND aggressive_buy_volume spike:
    confidence ↑

📌 若:

  • OFI 强
  • 但成交跟不上

→ 很可能是挂单诱导 / spoof


七、真实系统是:

✔ Lead-Lag:方向信息
✔ OFI:盘口状态
✔ 流动性:是否可执行
✔ 风险层:是否允许暴露
✔ 执行层:如何下单


八、真实系统中的一个“简化但正确”的组合示意

if Risk_OK
and Regime_OK
and LeadLag_signal == +1
and OFI_z > 1.5
and Depth > min_depth
then:
    size = base × tanh(OFI_scaled)
    execution = aggressive if OFI_z > 3 else passive

注意:

  • OFI 永远不是唯一条件
  • 也几乎不决定方向本身

九、一句话给你的“系统级认知”

OFI 是“市场是否配合你”的探针
不是“你该做什么”的答案

Read more

跑步的技巧(滚动落地)

“滚动落地(rolling contact / rolling foot strike)”不是一种教条式的“脚法”,而是一种 让冲击沿着整只脚、整条后链逐级传递的落地机制。 它的核心不是“你先用哪儿着地”,而是: 你的脚落地之后,冲击是不是像轮子一样滚过去,而不是像锤子一样砸下去。 这就是滚动落地的本质。 一、什么叫“滚动落地”? 你可以把它理解成两种完全不同的落地方式: 1. 砸地(撞击式) 脚像锤子一样拍到地上: * 要么后跟先砸 * 要么前掌先戳 * 冲击集中在一个点 * 一个结构瞬间吃掉大部分载荷 结果就是: * 后跟砸 → 膝盖难受 * 前掌戳 → 前脚掌磨烂 * 都不是长跑友好模式 这叫 撞击式着地(impact strike)。 2. 滚地(滚动式) 脚像轮胎一样“滚”过地面: * 不是某一点硬砸 * 而是外侧中足先轻触 * 再向前滚到前掌 * 最后从大脚趾蹬离

By SHI XIAOLONG

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