流動性測量指標:量化市場深度的完整指南

流動性測量指標是量化市場質量的核心工具。了解Amihud、Roll measure、Kyle's lambda等關鍵指標的計算方法和實戰應用。

Algo Lab 量化團隊發布於 2026-08-11 19:11

流動性測量指標:量化市場質量的完整指南

流動性係金融市場的核心概念之一,但佢並唔係可以直觀感測的單一維度。要真正理解同比較不同資產的流動性,需要依靠一系列量化指標。呢篇文章詳細介紹最主要的流動性測量指標,包括計算方法、適用場景同實戰應用。

流動性指標的分類

流動性指標可以分為三類:價格基礎指標(Price-based)、成交量基礎指標(Volume-based)、訂單簿基礎指標(Order Book-based)。

價格基礎指標

價格基礎指標使用價格數據(收益率、價差等)計算流動性:

  • 買賣價差:最直接的流動性指標
  • Roll measure:基於價格自相關的隱性價差估計
  • High-Low Range:基於每日高低點的流動性指標
  • Garman-Klass Volatility:考慮開盤、收盤、最高、最低的波動率估計

成交量基礎指標

成交量基礎指標使用成交量數據衡量流動性:

  • 成交量:最基本的流動性指標
  • 轉手率:成交量除以流通股本
  • Amihud 非流動性指標:考慮價格變動同成交量的關係

訂單簿基礎指標

訂單簿基礎指標使用訂單簿數據衡量流動性:

  • 訂單簿深度:各價格檔位的掛單量
  • 訂單簿斜率:深度隨價格的衰減速度
  • 訂單簿不平衡:買賣深度的相對差異
  • 市場衝擊成本:特定成交量導致的價格變動

主要流動性指標详解

1. 買賣價差(Bid-Ask Spread)

定義:最佳賣出價同最佳買入價之間的差額。

計算

絕對價差 = Ask Price - Bid Price
相對價差 = (Ask Price - Bid Price) / Mid Price
其中 Mid Price = (Ask Price + Bid Price) / 2

優點

  • 計算簡單,數據容易獲取
  • 直觀易懂
  • 反映即時的交易成本

缺點

  • 只反映掛單成本,不反映實際成交成本
  • 對低頻數據不敏感
  • 無法捕捉隱性成本

適用場景

  • 即時流動性評估
  • 交易執行優化
  • 做市商報價監測

2. Amihud 非流動性指標

定義:衡量單位成交量引起的價格變動幅度。

計算

Illiq_i = (1/D) * Σ(|R_id| / Volume_id)

其中:

  • R_id = 股票 i 在日 d 的收益率
  • Volume_id = 股票 i 在日 d 的成交量(美元)
  • D = 計算期間的天數

解讀

  • Illiq 值越大,流動性越差
  • 通常取對數後使用:Ln(Illiq + 1)

優點

  • 使用日級數據即可計算
  • 考慮了價格變動同成交量的關係
  • 廣泛應用於學術研究

缺點

  • 假設價格變動完全由流動性引起
  • 對外生衝擊敏感
  • 不區分買方驅動同賣方驅動

實戰應用

  • 股票篩選:排除高 Amihud 值的股票
  • 因子投資:流動性因子
  • 組合優化:將流動性成本納入優化目標

3. Roll Measure

定義:基於價格自相關估計隱性價差。

計算

σ_ε² = Cov(ΔP_t, ΔP_{t-1})
Roll Spread = 2 * √|σ_ε²|

其中 ΔP_t = P_t - P_{t-1}(價格變動)

原理

  • 如果價差為正,價格會在中間價兩側交替變動
  • 價格變動的自相關係數為負
  • 自相關的絕對值越大,價差越大

優點

  • 不需要訂單簿數據
  • 估計隱性價差
  • 可以捕捉買賣雙方力量

缺點

  • 假設價格變動僅由價差引起
  • 對市場波動敏感
  • 需要較高頻的數據

4. Kyle's Lambda

定義:衡量訂單流對價格的影響程度。

計算

ΔP_t = λ * Ω_t + ε_t

其中:

  • ΔP_t = 價格變動
  • Ω_t = 訂單流(成交量 * 訂單方向)
  • λ = Kyle's lambda(流動性指標)
  • ε_t = 誤差項

解讀

  • λ 越大,表示單位訂單流引起的價格變動越大,流動性越差
  • λ 反映市場對信息的反應速度

優點

  • 直接衡量訂單流對價格的影響
  • 理論基礎紮實
  • 可以區分信息交易同流動性交易

缺點

  • 需要逐筆交易數據
  • 計算複雜
  • 對數據質量要求高

5. 訂單簿深度

定義:訂單簿中所有掛單的總量。

計算

Total Depth = Σ(Bid Volume_i) + Σ(Ask Volume_i)
Bid Depth = Σ(Bid Volume_i)
Ask Depth = Σ(Ask Volume_i)
Depth Ratio = Bid Depth / Ask Depth

優點

  • 最直接嘅流動性衡量
  • 反映即時的市場狀況
  • 可以細分到各價格檔位

缺點

  • 數據獲取困難(需要 Level 2 數據)
  • 掛單可能隨時撤銷
  • 不反映實際成交成本

不同市場環境下的指標表現

正常市場環境

在正常市場環境中:

指標典型值(大型科技股)典型值(小型股)
相對價差0.01-0.05%0.5-2%
Amihud Illiq0.001-0.010.1-10
Roll Spread0.02-0.1%0.5-2%
Kyle's Lambda0.001-0.010.1-1

高波動市場環境

在高波動環境中,所有流動性指標都會惡化:

  • 價差擴大 2-5 倍
  • Amihud Illiq 上升 5-10 倍
  • 深度減少 50-80%
  • Kyle's Lambda 上升 3-5 倍

流動性危機期間

流動性危機期間,指標可能達到極端值:

  • 價差可能擴大 10-50 倍
  • 深度可能減少 90% 以上
  • 成交量可能萎縮 50-80%

Python 實現示例

Amihud 指標計算

import pandas as pd
import numpy as np

def calculate_amihud(df, period=30):
    """
    計算 Amihud 非流動性指標
    
    參數:
    df: DataFrame,包含 'return'(日收益率)同 'volume_usd'(成交量美元)
    period: 計算期間的天數
    
    返回:
    Series: Amihud 指標值
    """
    df = df.copy()
    
    # 計算每日 Amihud 值
    df['daily_illiq'] = np.abs(df['return']) / df['volume_usd']
    
    # 計算滾動平均
    illiq = df['daily_illiq'].rolling(window=period).mean()
    
    return illiq

訂單簿深度計算

def calculate_order_book_metrics(bid_levels, ask_levels):
    """
    計算訂單簿流動性指標
    
    參數:
    bid_levels: DataFrame,包含 'price' 同 'volume' 的買盤數據
    ask_levels: DataFrame,包含 'price' 同 'volume' 的賣盤數據
    
    返回:
    dict: 流動性指標
    """
    # 總深度
    bid_depth = bid_levels['volume'].sum()
    ask_depth = ask_levels['volume'].sum()
    total_depth = bid_depth + ask_depth
    
    # 深度比率
    depth_ratio = bid_depth / ask_depth if ask_depth > 0 else float('inf')
    
    # 價差
    spread = ask_levels['price'].min() - bid_levels['price'].max()
    mid_price = (ask_levels['price'].min() + bid_levels['price'].max()) / 2
    relative_spread = spread / mid_price if mid_price > 0 else 0
    
    # 訂單簿斜率(買盤)
    bid_slope = bid_levels['volume'].diff().mean()
    
    return {
        'bid_depth': bid_depth,
        'ask_depth': ask_depth,
        'total_depth': total_depth,
        'depth_ratio': depth_ratio,
        'spread': spread,
        'relative_spread': relative_spread,
        'bid_slope': bid_slope
    }

實戰應用:流動性篩選

选股中的流動性篩選

在使用流動性指標進行选股時,可以採用以下方法:

  1. 流動性閾值篩選

    • 排除 Amihud Illiq > 閾值的股票
    • 排除相對價差 > 閾值的股票
    • 排除日均成交量 < 閾值的股票
  2. 流動性因子

    • 將 Amihud Illiq 作為獨立因子
    • 納入多因子模型
    • 研究流動性溢價
  3. 流動性變化追蹤

    • 追蹤 Amihud Illiq 的變化趨勢
    • 識別流動性改善或惡化的股票
    • 作為交易信號

組合層面的流動性管理

  1. 組合流動性衡量

    • 計算加權平均 Amihud Illiq
    • 評估組合在壓力情景下的變現能力
    • 監控組合的總交易成本
  2. 流動性約束

    • 設定單一資產的最大持倉比例(相對於成交量)
    • 設定組合的總流動性風險閾值
    • 定期進行壓力測試

總結

流動性測量指標為量化市場質量提供咗系統化的工具。從簡單的買賣價差到複雜的 Kyle's lambda,每種指標都有其獨特的同適用場景。交易者需要根據自身的數據可得性、研究目的同市場環境選擇合適的指標。

將流動性分析納入你嘅投資框架,可以更好地評估交易成本、優化執行策略、管理流動性風險。加入 Algo Lab VIP,獲取專業流動性分析工具。


常見問題

最常用的流動性指標有啲咩?

最常用嘅流動性指標包括:(1) 買賣價差(Bid-Ask Spread):最直接嘅流動性指標;(2) Amihud 非流動性指標:基於價格變動同成交量的關係;(3) Roll measure:基於價格自相關計算隱性價差;(4) Kyle's lambda:衡量訂單流對價格的影響;(5) 訂單簿深度:訂單簿中掛單的總量。

點樣選擇合適的流動性指標?

選擇指標需要考慮以下因素:(1) 數據頻率:日級數據適合Amihud,高頻數據適合Order Book metrics;(2) 研究目的:选股篩選適合Amihud,執行優化適合Order Book metrics;(3) 計算複雜度:Amihud 計算簡單,Kyle's lambda 需要高頻數據;(4) 市場類型:不同市場適用的指標可能不同。

流動性指標點樣應用於选股?

流動性指標應用於選股的常見方法:(1) 流動性篩選:排除低於特定流動性閾值的股票;(2) 流動性因子:將流動性作為獨立因子納入多因子模型;(3) 流動性變化:追蹤流動性的變化趨勢,識別流動性改善或惡化的股票;(4) 流動性異象:研究低流動性股票是否確實存在溢價。

🚀 升級到 VIP 會員,獲取 Algo Lab 專業市場微結構分析工具。加入 VIP 享受實時訂單簿數據、暗池成交量監控同流動性風險評估。

#流動性指標#liquidity metrics#Amihud指標#Roll measure#Kyle's lambda#market microstructure

想要每日接收高勝率信號?

訂閱 VIP 會員,每日 TOP 20 信號推送,形態識別 + AI 選股,助你做出明智投資決策。

延伸閱讀

文章相關問題