🎯 学习目标

  • 掌握做市算法原理
  • 学会报价模型设计
  • 理解库存管理
  • 能够设计做市算法
做市算法设计

做市算法设计

本节介绍做市算法的设计方法和核心逻辑。

⚙️ 报价模型

class MarketMakerStrategy:
    """
    做市策略
    """

    def __init__(self, config):
        self.config = config
        self.inventory = 0

    def calculate_quotes(self, order_book, mid_price):
        """
        计算报价
        """
        # 基础价差
        base_spread = self.config['base_spread']

        # 库存调整
        inventory_skew = self.calculate_inventory_skew()

        # 波动率调整
        vol_adjustment = self.calculate_volatility_adjustment(order_book)

        # 计算买卖价
        bid_price = mid_price - base_spread/2 + inventory_skew + vol_adjustment
        ask_price = mid_price + base_spread/2 + inventory_skew - vol_adjustment

        return bid_price, ask_price

    def calculate_inventory_skew(self):
        """
        计算库存偏移
        """
        gamma = self.config['inventory_gamma']
        return -gamma * self.inventory

    def calculate_volatility_adjustment(self, order_book):
        """
        计算波动率调整
        """
        # 订单簿不平衡
        imbalance = self.calculate_order_imbalance(order_book)

        # 波动率调整
        vol_adjustment = self.config['vol_alpha'] * imbalance

        return vol_adjustment

    def calculate_order_imbalance(self, order_book):
        """
        计算订单不平衡
        """
        bid_volume = order_book['bid_volume']
        ask_volume = order_book['ask_volume']
        return (bid_volume - ask_volume) / (bid_volume + ask_volume)

📊 算法类型

Avellaneda-Stoikov

  • 理论模型
  • 库存管理
  • 最优报价

Guo-Zhang

  • 改进模型
  • 深度考虑
  • 实用性强
做市关键

1)动态报价;2)库存管理;3)风险控制;4)快速响应。

📝 本节小结

  • • 掌握了做市算法原理
  • • 学会了报价模型设计
  • • 理解了库存管理
  • • 能够设计做市算法