3. 流动性提供机制:限价单与市价单、订单簿结构、买卖盘口深度分析
做市商的核心工作,说白了就是「两边挂单,赚取价差」。但怎么挂、挂多少、什么时候撤,这背后是一整套机制在支撑。今天我们就来拆解这套机制的核心——流动性提供。
3.1 限价单与市价单:做市商的两把刷子
先问个问题:你作为做市商,凭什么能赚到钱?
答案很简单——你提供了流动性,市场给你奖励。而提供流动性的主要方式,就是挂限价单。
限价单(Limit Order)
限价单是指你指定一个价格,只有市场价到了这个位置,你的单子才会成交。比如你在买一挂100元,那只有卖单愿意以100元卖给你时,才会成交。
做市商为什么偏爱限价单?
- 赚取价差:你在买一和卖一同时挂单,只要市场来回波动,你就能吃到价差。
- 控制成本:你可以精确控制买入和卖出的价格,不会出现「滑点」问题。
- 提供流动性:你的挂单就是市场的「深度」,别人能直接跟你成交。
核心要点:限价单是做市商的主要工具。我个人习惯把限价单称为「被动单」——你被动等待成交,但赚的是确定性收益。
市价单(Market Order)
市价单就简单了——你不管价格,直接按当前最优价成交。比如你想买,就直接吃掉卖一的价格。
做市商什么时候用市价单?
- 紧急调整仓位:比如市场突然暴跌,你手里的库存太多,需要立刻平仓。
- 套利机会:当不同交易所出现价差时,市价单能帮你快速抓住机会。
- 对冲风险:你挂了大量限价单,但市场方向突变,你需要用市价单来对冲。
避坑指南:我曾经在ETH上吃过亏。当时市场波动剧烈,我用市价单平仓,结果滑点直接吃掉了我一整天赚的价差。所以,市价单要慎用,尤其是流动性差的时候。
3.2 订单簿结构:市场的「实时地图」
订单簿(Order Book)就是所有限价单的集合。它分为两部分:买盘(Bid)和卖盘(Ask)。
你想想看,一个典型的订单簿长什么样?
| 价格 | 买盘数量 | 卖盘数量 | 价格 |
|---|---|---|---|
| 100.10 | 500 | 100.10 | |
| 100.05 | 300 | 100.05 | |
| 100.00 | 200 | 100.00 | |
| 99.95 | 400 | 99.95 | |
| 99.90 | 600 | 99.90 |
这个表格里,买盘和卖盘是「背靠背」排列的。中间那条线就是当前的市场价格。买一(最高买价)是100.00,卖一(最低卖价)是100.05,价差就是0.05。
订单簿的三个关键指标:
- 价差(Spread):卖一价减去买一价。价差越小,流动性越好。
- 深度(Depth):每个价格上的挂单数量。深度越厚,大单对市场的影响越小。
- 斜率(Slope):价格越远离中间价,挂单量通常越大。这个斜率反映了市场的「承压能力」。
个人经验:我在做BTC做市时,发现一个规律——如果某个价格上的挂单量突然暴增,大概率是某个大机构在「筑墙」。这时候我会选择避开那个价格,免得被「墙」砸到。
3.3 买卖盘口深度分析:看懂市场的「底气」
盘口深度(Depth of Market)就是订单簿的可视化呈现。它能告诉你:市场到底有多少「子弹」。
我习惯用深度图来分析。横轴是价格,纵轴是累计挂单量。买盘从中间价往左延伸,卖盘往右延伸。
这张图里,买盘和卖盘在中间价处「交汇」。买盘越往左,累计量越大;卖盘越往右,累计量越大。如果买盘比卖盘「厚」,说明市场买盘支撑强,价格不容易跌。
深度分析的三个实战技巧
- 看「墙」:如果某个价格上突然出现大量挂单(比如1000个BTC),那就是一堵「墙」。墙的作用是阻挡价格突破。做市商可以利用墙来「搭便车」——在墙前面挂单,等市场吃掉墙之后,你的单子就能成交。
- 看「缺口」:如果某个价格区间几乎没有挂单,那就是「缺口」。缺口意味着价格可以快速通过。做市商要小心——如果市场突然冲向缺口,你的限价单可能会被「秒杀」。
- 看「斜率变化」:如果深度曲线的斜率突然变陡,说明有人在集中挂单。这可能是机构在布局,也可能是算法在「刷单」。我一般会暂停挂单,观察一下再决定。
核心要点:深度分析不是看「有多少单」,而是看「单是怎么分布的」。分布决定了市场的「韧性」——韧性强的市场,大单进来也不会引起剧烈波动。
3.4 实战中的流动性提供策略
理论讲完了,咱们聊聊实战。我做市商这些年,总结了一套「流动性提供三板斧」:
第一板斧:价差管理
价差不是固定的。流动性好的时候,价差可以收窄到0.01%;流动性差的时候,价差要放宽到0.1%以上。我习惯用动态价差——根据订单簿的实时状态自动调整。
# 动态价差计算示例
def calculate_spread(order_book):
bid_depth = sum(order_book['bids'][:5]) # 前5档买盘深度
ask_depth = sum(order_book['asks'][:5]) # 前5档卖盘深度
# 深度越厚,价差越小
base_spread = 0.0001 # 0.01%
depth_factor = min(bid_depth, ask_depth) / 1000 # 归一化
spread = base_spread * (1 + 1 / depth_factor)
return spread
第二板斧:挂单位置
挂单不是随便挂的。我一般会挂在买一和卖一,但也会在买二、卖二挂一些「备胎单」。这样如果市场波动,我的单子能「接力」成交。
第三板斧:撤单时机
撤单比挂单更重要。我见过太多做市商因为「舍不得撤单」而亏钱。我的原则是:如果市场方向变了,立刻撤单,不要犹豫。
避坑指南:我曾经在某个山寨币上挂了一堆限价单,结果项目方发了个利空消息,价格直接跳水。我因为「想等等看」,结果所有单子都被吃掉了,亏了十几万。从那以后,我给自己定了个规矩:市场波动超过2%,所有限价单全部撤掉。
3.5 总结
流动性提供机制,说白了就是「用限价单赚价差,用市价单控风险」。订单簿是你的「战场地图」,深度分析是你的「侦察兵」。做市商不是靠「猜方向」赚钱,而是靠「管理流动性」赚钱。
嗯,这一章的内容就到这里。记住:流动性是市场的血液,而做市商就是那个「输血」的人。