Market Making (做市)
🧩 定义
做市(Market Making)是指交易者(做市商)同时在市场上报出买价(Bid)和卖价(Ask),持续为其他参与者提供买入和卖出的机会,从中赚取买卖价差(Spread)的利润。
核心概念
1. 买卖价格
| 名称 | 中文 | 含义 | 例子 |
|---|---|---|---|
| Bid | 买价 | 做市商买入的价格 | $99.50 |
| Ask | 卖价 | 做市商卖出的价格 | $100.00 |
| Spread | 价差 | 卖价 - 买价(做市商的利润来源) | $0.50 |
2. 做市商的角色
- 📥 买入:当其他人卖出时,做市商以自己的买价买入
- 📤 卖出:当其他人买入时,做市商以自己的卖价卖出
- 💰 赚取价差:做市商从买卖价差中赚取利润
经济功能
| 职能 | 作用 |
|---|---|
| 提供流动性 | 让其他人随时可以买卖,而不必等待对手方出现 |
| 稳定价格 | 报价双边,使价格不至于剧烈波动 |
| 价格发现 | 持续出价帮助市场形成“公平”价格 |
算法化做市
现代做市实践:
- ⚡ 实时监控订单簿深度、成交速度和波动率
- 🔄 动态调整报价(毫秒级)
- ⚖️ 控制库存风险
例子策略
BTC 价格 ≈ $60,000
买价:$59,995
卖价:$60,005
价差:$10
利润来源
| 来源 | 描述 |
|---|---|
| 价差收入 | 主要利润来源 |
| 交易所返佣 | 提供流动性的奖励 |
| 库存管理 | 优化持仓、降低风险带来的额外收益 |
关键风险
| 风险类型 | 描述 |
|---|---|
| 库存风险 | 价格单边波动导致持仓亏损 |
| 信息劣势 | 被比自己更快的交易者“挑单”吃掉 |
| 延迟风险 | 报价更新不及时导致亏损 |
| 系统风险 | 算法或连接故障可能导致巨额损失 |
做市与投机的区别
| 方面 | 做市商 | 投机者 |
|---|---|---|
| 目标 | 赚取价差 | 预测方向、赚趋势 |
| 时间尺度 | 毫秒级 | 分钟/天 |
| 市场角色 | 流动性提供者 | 流动性需求者 |
利润公式
利润 = (价差 - 成本) × 成交量 - 库存风险成本
✅ 总结:持续报双边价,为市场提供流动性,赚取价差与返佣,同时控制库存风险的交易方式。
扩展概念
订单簿动态
| 概念 | 中文 | 解释 |
|---|---|---|
| 中间价 | (买价 + 卖价)/2(公平价格) | |
| 订单深度 | 某个价位上挂单的数量 | |
| 最优买卖价 | 当前市场上最高的买价和最低的卖价 | |
| 最小报价单位 | 价格能变化的最小步长 |
价差特征
| 类型 | 含义 |
|---|---|
| 窄价差 | 高流动性/竞争 |
| 宽价差 | 低流动性/高风险 |
| 实际价差 | 实际交易成本 |
订单类型
| 类型 | 中文 | 功能 |
|---|---|---|
| 限价单 | 限价单 | 价格控制执行 |
| 市价单 | 市价单 | 立即执行 |
| 止损单 | 止损单 | 触发执行 |
市场指标
| 指标 | 描述 |
|---|---|
| 订单流 | 买卖量不平衡 |
| 流动性 | 执行速度不影响价格 |
| 波动率 | 价格波动强度 |
| 滑点 | 执行价与预期价差距 |
高频交易与做市
详见:高频交易
什么是做市(Market Making)
做市商通过持续报出买价(bid)和卖价(ask)来提供市场流动性。
他们赚的是:
买卖差价(spread)
或者短期价格波动带来的套利
做市商的难点在于:
如何快速调整报价;
如何控制库存风险;
如何应对竞争者。
🔄 三、HFT 与 做市 的关系
现代市场中,大多数做市行为是由高频交易系统完成的。
项目 做市传统定义 高频做市(HFT Market Making) 执行方式 人工或半自动 完全自动、低延迟 调整速度 秒级、分钟级 微秒级或毫秒级 报价数量 几个价位 数百个价位同时挂单 收益来源 Spread Spread + 统计套利 + 流动性补贴 风险控制 人工监控 算法化库存管理、对冲系统
一句话总结:
高频做市是“用机器在微秒级别持续调整 Bid/Ask 的智能做市商”。
🧮 四、HFT 做市的核心逻辑
高频做市算法通常包含以下模块:
报价生成模块 根据市场价格、波动率、库存、竞争对手报价等因素,计算最优的 bid / ask。
库存管理模块 如果买入太多资产,会自动调低 bid、提高 ask(鼓励卖出)。
风险控制模块 对冲风险(hedging),防止价格波动导致损失。
延迟优化(Latency Optimization) 尽量靠近交易所机房,使用专线或 FPGA 加速,争夺毫秒优势。
订单流预测(Order Flow Prediction) 根据市场数据预测未来的买卖方向,以调整报价。
⚖️ 五、为什么 HFT 与 做市密不可分 原因 说明 速度决定盈亏 做市利润(spread)极小,只有足够快才能抢在别人之前成交。 价格发现效率高 高频做市让市场价更接近“真实价值”,提高流动性。 风险可控 算法能在毫秒级别平仓或调整仓位。 交易所激励 很多交易所给做市商返佣(rebate),HFT 做市算法专门吃这类激励。 💣 六、潜在风险与争议
虽然 HFT 做市带来流动性,但也有一些争议:
问题 说明 闪崩(Flash Crash) 高频算法集体撤单可能造成价格瞬间暴跌。 公平性问题 高频机构利用延迟优势“抢跑”(latency arbitrage)。 流动性幻觉 某些挂单只是“伪流动性”(quote stuffing),不会真正成交。 🧠 七、一个形象类比
想象市场像一个“水果市场”:
普通交易者:走到摊位上看看价,买一个苹果。
做市商:自己开摊,负责挂价买苹果、卖苹果。
高频做市商:带着超级计算器和秒表的机器人摊主, 每毫秒更新一次价格表,根据别人动作立刻改价!
算法做市
算法做市(Algorithmic Market Making, AMM),是理解现代金融市场(尤其是高频交易和加密市场)的核心之一。
它既是传统做市商的自动化进化版,也是HFT(高频交易)最重要的应用之一。 下面我会系统地帮你讲清楚:算法做市是什么、怎么工作、有哪些类型与数学逻辑。👇
🧭 一、什么是算法做市(Algorithmic Market Making)
简单定义:
算法做市是指由计算机程序(算法)自动决定何时、以什么价格、挂多少买单和卖单,从而为市场提供流动性的行为。
也就是说:
传统做市商由人工挂 bid / ask;
而算法做市商(AMM)由程序动态调整报价、控制库存、计算风险。
⚙️ 二、算法做市的核心目标
一个算法做市商的目标通常是:
提供流动性(保持市场有买有卖);
赚取价差(spread);
控制库存风险(避免价格波动带来的亏损);
在不同市场之间套利(如双交易所间价格差)。
🧩 三、算法做市的工作流程
算法做市通常包含以下逻辑模块 👇:
模块 功能 1️⃣ 市场数据接收 从交易所实时读取行情数据(价格、订单簿、成交量、波动率等)。 2️⃣ 报价算法(Quote Generator) 根据市场状况计算当前最优的 bid / ask 价格。 3️⃣ 库存管理(Inventory Management) 根据当前持仓(多 or 空)调整报价(偏买或偏卖)。 4️⃣ 风险管理(Risk Control) 限制最大仓位、限制每秒下单次数、控制回撤。 5️⃣ 订单执行引擎(Execution Engine) 将订单提交到交易所,并在必要时取消或修改。 6️⃣ 延迟与对手分析 监控其他做市商行为,优化响应速度。 📈 四、算法做市的主要类型 类型 说明 应用场景 1️⃣ 传统订单簿做市 算法在中心化交易所挂 bid/ask(CEX, 股票、期货等) 高频交易、股票、期权 2️⃣ 去中心化自动做市(AMM, Automated Market Maker) 用智能合约计算价格,例如 Uniswap、Curve 加密货币 DEX 3️⃣ 统计套利型做市 报价基于统计模型(如协整、均值回归) 对冲基金、量化公司 4️⃣ 跨市场做市 同时在多个交易所挂单,利用价差套利 高频交易、套利策略 🧮 五、做市算法的基本数学逻辑 🧠 Avellaneda–Stoikov 模型(经典模型)
它是学术界和实务中最著名的算法做市模型之一。 该模型认为做市商要在以下目标之间权衡:
盈利目标:赚取 spread;
风险目标:控制库存风险;
流动性风险:不被抢单。
模型结论(简化形式):
𝑝 𝑏 𝑖 𝑑 = 𝑆 − 𝛿 − 𝛾 𝑞 p bid
=S−δ−γq 𝑝 𝑎 𝑠 𝑘 = 𝑆 + 𝛿 − 𝛾 𝑞 p ask
=S+δ−γq
其中:
𝑆 S:市场中间价(mid price)
𝛿 δ:由波动率与风险厌恶系数决定的最优价差
𝛾 γ:库存风险权重
𝑞 q:当前库存数量
👉 意思是:
当库存太多时(q > 0),算法会降低 bid(不想再买)、提高 ask(想多卖);
当库存太少时(q < 0),算法会反向操作。
🧮 六、价格与波动率的关系
在算法做市中,波动率(Volatility)越高,spread 越大,因为风险更高。
常用经验公式:
𝑠 𝑝 𝑟 𝑒 𝑎 𝑑 ∝ 𝜎 × 𝑇 spread∝σ× T
其中:
𝜎 σ:市场波动率
𝑇 T:报价有效时间长度(挂单保持时间)
⚖️ 七、算法做市的收益与风险 收益来源 风险来源 赚取 spread 市场单边行情(价格持续单方向移动) 交易所返佣(maker rebate) 库存积压(持仓风险) 统计套利 高频竞争(抢单、延迟) 价格预测精度 技术或网络故障 🧱 八、与 HFT(高频交易)的区别与联系 项目 算法做市(AMM) 高频交易(HFT) 目标 提供流动性、赚 spread 利用速度差或价格信号套利 时间尺度 毫秒到秒 微秒到毫秒 风险结构 库存风险 执行风险、信号风险 典型算法 Avellaneda-Stoikov、Mean Reversion Momentum、Latency Arbitrage
✅ 可以理解为: 高频交易是“速度”驱动的策略集合; 算法做市是其中的一种核心类别。
🧠 九、一个直觉例子
假设算法做市商在 BTC 市场上运行:
当前中间价 𝑆 = $ 60 , 000 S=$60,000
波动率高,算法决定 spread = $100
当前库存偏多(q > 0),算法下调买价
于是系统挂出:
Bid: $59,930 Ask: $60,070 Spread: $140
如果价格平稳,bid/ask 都成交,算法赚取价差; 若价格上冲,算法卖出库存并获利;若价格暴跌,则会动态调价或对冲。
🔮 十、在加密领域的“AMM”不一样!
在 DeFi(去中心化金融) 里,“AMM” 通常指 Automated Market Maker(自动做市商), 例如 Uniswap、Curve 等智能合约,它用数学公式而不是订单簿做市。
最常见的公式是:
𝑥 × 𝑦 = 𝑘 x×y=k
即“恒定乘积做市商”,代表流动池中两种代币数量的乘积恒定。 但注意:这个 AMM 和传统的 Algorithmic Market Making 是 不同概念,只是名字相似。
✅ 总结一句话
算法做市是利用数学模型 + 实时数据 + 自动下单系统, 在毫秒级别内动态报出买卖价,从而赚取价差并维持市场流动性。