第三章 高频因子设计原理:微观结构理论、信息冲击与订单流不平衡
各位同学,今天我们来聊聊高频因子的设计原理。
说实话,很多人一听到“高频”两个字,就觉得是拼速度、拼硬件、拼延迟。其实不然。高频因子的核心,是对市场微观结构的深刻理解。你想想看,价格是怎么形成的?订单是怎么匹配的?信息又是怎么被市场消化的?
我个人习惯把高频因子分为三大类:微观结构类、信息冲击类、订单流不平衡类。这三者层层递进,构成了高频交易策略的底层逻辑。
3.1 微观结构理论:市场的“骨骼”
微观结构,说白了就是市场的“骨架”。它决定了价格是怎么被发现的。
我在项目中遇到过不少新手,一上来就盯着K线图看,却忽略了订单簿里的信息。其实,订单簿才是真正的“战场”。
核心概念:微观结构理论关注的是交易机制如何影响价格形成过程。包括买卖价差、订单簿深度、交易频率等。
举个例子。假设某只股票的当前买一价是10.00元,卖一价是10.01元。价差是0.01元。这个价差本身就是一个因子——价差越小,流动性越好,交易成本越低。
但光看价差还不够。我们还要看订单簿的深度。比如:
- 买一到买五的总量是1000手
- 卖一到卖五的总量是200手
这说明什么?说明卖方力量相对薄弱。一旦有买入指令进来,价格很容易被推高。这就是微观结构因子的一种应用。
我的经验:我曾经用订单簿的“斜率”作为因子——即价格每变动一个tick,订单量的变化率。斜率陡峭的股票,往往更容易出现价格跳跃。
3.2 信息冲击:市场如何“消化”新闻
信息冲击,指的是新信息进入市场后,价格和订单流的变化过程。
你可能会问:信息不是公开的吗?为什么还会产生冲击?
嗯,这里要注意。信息的“公开”和“被市场消化”是两回事。比如某公司发布了一份超预期的财报,但市场可能需要几秒钟甚至几分钟才能完全吸收这个信息。在这段时间里,价格会剧烈波动。
我常用的信息冲击因子包括:
- 价格跳跃因子:单位时间内价格变动的幅度超过某个阈值(比如3个tick)的次数。
- 波动率冲击因子:用高频数据计算的瞬时波动率,与历史波动率的差值。
- 成交量冲击因子:某笔交易的成交量,相对于过去N笔平均成交量的倍数。
避坑指南:我曾经在回测中忽略了“信息冲击的衰减速度”。有些因子在信息发布后的前10秒有效,但30秒后就完全失效了。如果你用日线数据去回测,根本看不到这个效应。
信息冲击因子的设计,关键在于“时间窗口”的选择。我个人习惯用毫秒级的数据来捕捉冲击,然后用分钟级的数据来观察衰减。这样既能抓住机会,又能控制风险。
3.3 订单流不平衡:谁在“偷偷”买入?
订单流不平衡,是我个人最喜欢的因子之一。它反映的是买卖双方的力量对比。
简单来说,如果主动买入的订单量远大于主动卖出的订单量,说明有人在“偷偷”吸筹。反之,则有人在出货。
订单流不平衡的计算公式其实很简单:
# 订单流不平衡因子
def order_flow_imbalance(buy_volume, sell_volume):
"""
buy_volume: 主动买入成交量
sell_volume: 主动卖出成交量
"""
if buy_volume + sell_volume == 0:
return 0
return (buy_volume - sell_volume) / (buy_volume + sell_volume)
这个值在-1到1之间。正值表示买方力量强,负值表示卖方力量强。
但光看这个还不够。我建议你结合“订单簿的恢复速度”来看。比如:
| 场景 | 订单流不平衡 | 订单簿恢复速度 | 信号 |
|---|---|---|---|
| 1 | +0.8 | 快(<1秒) | 可能是散户跟风,信号弱 |
| 2 | +0.8 | 慢(>5秒) | 可能是机构吸筹,信号强 |
| 3 | -0.6 | 快 | 可能是程序化交易,信号中性 |
| 4 | -0.6 | 慢 | 可能是机构出货,信号强 |
你看,同样的订单流不平衡值,结合不同的订单簿恢复速度,得出的结论完全不同。这就是微观结构因子的魅力所在——它让你看到“表面”之下的“暗流”。
核心要点:订单流不平衡因子,必须结合时间维度和订单簿维度来使用。单独看一个维度,很容易被误导。
3.4 三大因子的融合:从高频到低频
好了,现在我们有三个维度的因子:微观结构、信息冲击、订单流不平衡。怎么把它们融合到低频交易策略中?
我常用的方法是“降频聚合”。具体来说:
- 用毫秒级数据计算因子值
- 然后按分钟、小时或日线进行聚合(取均值、标准差、最大值等)
- 最后把这些聚合后的因子,作为低频模型的输入
举个例子。我曾在某项目中,用订单流不平衡的“分钟级标准差”作为因子。标准差越大,说明这一分钟内买卖双方博弈越激烈。这种因子在日线级别的选股模型中,表现非常稳定。
我的建议:不要试图把高频因子直接用到高频交易中。那样做,你拼不过那些硬件大厂。相反,把高频因子“降频”后用到低频策略中,反而能获得稳定的超额收益。
下面这张图,是我对本章知识体系的总结:
最后,我想强调一点:高频因子不是万能的。它只是给你提供了一个更精细的视角。真正赚钱的策略,往往是把高频因子和基本面因子、技术面因子结合起来使用。
好了,这一章就到这里。记住:微观结构是骨架,信息冲击是血液,订单流不平衡是心跳。三者缺一不可。