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-Lag | ms ~ s |
| OFI | tick ~ 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 是“市场是否配合你”的探针
不是“你该做什么”的答案