第一章:微观结构基础

做量化这些年,我越来越觉得,市场微观结构就像交易世界的「原子结构」。你不懂它,策略就是空中楼阁。今天咱们就从头捋一捋这些最基础、也最容易被忽视的东西。

核心观点:订单簿是市场的「心电图」,价差是流动性的「体温」,成交量是市场的「脉搏」。这三样搞不明白,因子挖掘就是瞎蒙。

1.1 订单簿结构与限价订单簿

说白了,订单簿就是一个「买家 vs 卖家」的实时擂台。左边是买单,右边是卖单,中间是当前成交价。我刚开始做高频策略时,总觉得这东西太简单,结果第一次回测就吃了大亏——忽略了订单簿的「厚度」变化。

限价订单簿(LOB)的核心要素就这几个:

  • 价格档位:每个价格上的挂单量
  • 买卖方向:Bid(买方)和 Ask(卖方)
  • 订单类型:限价单、市价单、冰山订单等
  • 时间优先级:先到先得,价格优先

嗯,这里要注意一点:很多新手只看最优买卖价(Top of Book),但真正的微观结构信息藏在「深度」里。我曾经踩过一个坑——某只股票最优价差只有1分钱,但第二档深度差了10倍,结果一进去就被滑点吃掉了利润。

我的习惯:构建因子时,至少看3-5档深度。单看Top of Book就像只看冰山一角,会漏掉大量信息。

来,我画个图帮你理解订单簿的结构:

限价订单簿结构示意图 卖单 (Ask Side) 价格: 10.05 量: 2000 价格: 10.04 量: 1500 价格: 10.03 量: 800 价格: 10.02 量: 300 价差 0.01 买单 (Bid Side) 价格: 10.01 量: 500 价格: 10.00 量: 1200 价格: 9.99 量: 1800 价格: 9.98 量: 2500 价格向下移动 价格向上移动 最优卖价(Ask) = 10.02 | 最优买价(Bid) = 10.01 | 价差 = 0.01 市场深度 = 各档位挂单量之和(本例买单深度=6000,卖单深度=4600)

1.2 买卖价差与市场深度

价差(Spread)就是最优卖价减去最优买价。你想想看,如果价差是0.01元,你一买一卖就亏了1分钱——这还没算手续费。我见过有些小盘股,价差能到5%以上,那基本就是「流动性荒漠」。

市场深度(Market Depth)则衡量的是「抗冲击能力」。深度越大,大单进去价格波动越小。我习惯用这个公式来量化:

# 计算加权平均深度
def calc_weighted_depth(order_book, n_levels=5):
    """
    计算前n档的加权市场深度
    权重按距离最优价的距离递减
    """
    total_depth = 0
    total_weight = 0
    
    for i in range(n_levels):
        bid_vol = order_book['bids'][i]['volume']
        ask_vol = order_book['asks'][i]['volume']
        weight = 1 / (i + 1)  # 越近权重越大
        
        total_depth += (bid_vol + ask_vol) * weight
        total_weight += weight
    
    return total_depth / total_weight

我曾经踩过的坑:只看价差不看深度。有一次我发现某只股票价差只有0.01,以为流动性很好,结果一进去发现深度只有几百股,大单直接打穿了3个档位。从那以后,我构建因子时一定把「价差×深度」结合起来看。

1.3 交易量与成交额

交易量是「股数」,成交额是「金额」。这两个指标看似简单,但用法大有讲究。

指标 含义 我的用法
交易量 成交的股票数量 判断市场活跃度,配合价格变化看
成交额 成交的总金额 衡量资金流向,比交易量更准确
量比 当前量 / 过去5日均量 发现异常放量,往往是信号

我个人习惯把成交额拆成「大单」和「小单」来看。为什么?因为大单往往是机构行为,小单是散户行为。这两者的比例变化,能提前反映资金动向。

一个小技巧:用成交额除以交易量,得到「平均成交价」。如果这个价格偏离了当前市价,说明有大资金在「吃单」——这是很好的微观结构因子。

1.4 交易频率与时间间隔

交易频率就是「单位时间内的交易笔数」。高频交易看毫秒级,日频交易看分钟级。你选什么频率,决定了你能捕捉到什么级别的信号。

我记得有一次做因子测试,发现一个因子在5分钟K线上效果很好,但换到1分钟K线上就完全失效。后来一查,原来是这个因子捕捉的是「订单簿恢复速度」——5分钟足够恢复了,1分钟还在波动中。

时间间隔的选择,我建议遵循这个原则:

  • 高频策略(< 1秒):关注订单簿变化、价差波动
  • 日内策略(1秒-1小时):关注成交量变化、大单流向
  • 日频策略(> 1天):关注日间价差变化、流动性指标

嗯,这里要特别提醒一下:时间间隔越短,噪音越大。我刚开始做高频时,恨不得看微秒级数据,结果发现大部分都是市场噪音。后来我学乖了——先看大周期确定方向,再看小周期找入场点。

总结一下:微观结构的基础,说白了就是「谁在什么时候、以什么价格、买了多少」。订单簿告诉你「挂单情况」,价差和深度告诉你「交易成本」,成交量和频率告诉你「市场热度」。这四个维度组合起来,就能构建出很多有效的因子。

好了,这一章的内容就到这里。记住,微观结构不是死记硬背的概念,而是你每天盯盘时能「看到」的东西。多观察、多思考,这些基础会变成你的直觉。


专注资料整理