4、市场深度概念:深度的定义、深度图的绘制、深度与价格滑点
好,咱们进入第四讲。这一节聊的是市场深度,说白了就是——这个市场到底能扛得住多大的单子。
我做市商这些年,见过太多人一上来就问“这个币流动性好不好?”其实流动性是个很模糊的词。真正干活的人,看的是深度。深度够不够,直接决定了你挂单能不能成交,成交了会不会把价格打飞。
4.1 深度的定义:到底什么是“深度”?
先给个严谨的说法:市场深度,是指在当前价格附近,不同价位上挂单的总量。
你可以把它想象成一个水池。深度大,你扔块大石头进去,水面只是微微波动;深度小,扔个石子都能溅起大水花。
具体到订单簿上,深度由两部分组成:
- 买盘深度(Bid Depth):所有买单挂单的总和,从最高买价往下数。
- 卖盘深度(Ask Depth):所有卖单挂单的总和,从最低卖价往上数。
我个人习惯把深度分成三个层级来看:
- 表层深度:买卖盘口前5档,这是散户和普通交易者最常接触的。
- 中层深度:前10-20档,做市商和机构通常看这个。
- 全量深度:整个订单簿所有挂单,这个数据量很大,一般用来做策略回测。
核心公式:
深度 = Σ (每个价位上的挂单数量 × 该价位价格)
但实际分析时,我们更常用的是累计深度,也就是从当前价格开始,往某个方向累加的总量。
嗯,这里要注意:深度不是一成不变的。我见过有些币种,白天深度好得不得了,一到凌晨两点,盘口薄得像纸一样。所以做策略时,一定要考虑时间维度。
4.2 深度图的绘制:把数据变成直觉
光看数字不够直观。我们做市商最常用的工具就是深度图。它能把订单簿的挂单情况,用一条曲线画出来。
怎么画?其实很简单:
- 从当前价格开始,往左(买盘)或往右(卖盘)累加挂单量。
- 横轴是累计挂单量,纵轴是价格。
- 把每个价位上的累计量点连起来,就是深度曲线。
我给大家写个简单的Python代码,用模拟数据画一下:
import matplotlib.pyplot as plt
import numpy as np
# 模拟订单簿数据
prices = np.arange(100, 110, 0.1) # 价格从100到110
bid_volumes = np.random.exponential(scale=10, size=len(prices)) # 买盘挂单量
ask_volumes = np.random.exponential(scale=10, size=len(prices)) # 卖盘挂单量
# 计算累计深度
cum_bid = np.cumsum(bid_volumes[::-1]) # 从高价往低价累加
cum_ask = np.cumsum(ask_volumes)
# 绘制深度图
plt.figure(figsize=(10, 6))
plt.plot(cum_bid, prices[::-1], label='买盘深度', color='green')
plt.plot(cum_ask, prices, label='卖盘深度', color='red')
plt.xlabel('累计挂单量')
plt.ylabel('价格')
plt.title('市场深度图示例')
plt.legend()
plt.grid(True, alpha=0.3)
plt.show()
这段代码跑出来,你会看到两条曲线。买盘曲线从左下往右上延伸,卖盘曲线从右下往左上延伸。两条曲线中间的空隙,就是当前成交价附近的情况。
我的经验:真正专业的深度图,不会只看原始数据。我会把深度图分成三个区域:
- 绿色区域(买盘):曲线越陡,说明买盘越密集,支撑越强。
- 红色区域(卖盘):曲线越陡,说明卖盘越密集,阻力越大。
- 中间缺口:如果缺口很大,说明这个价位附近流动性很差,容易产生滑点。
我曾经在分析一个山寨币时,发现它的深度图在某个价位上突然出现一个“悬崖”——挂单量从1000个BTC瞬间掉到10个。这就是典型的深度断层。遇到这种情况,我一般会建议客户:要么别在这个价位附近挂大单,要么拆成小单慢慢吃。
4.3 深度与价格滑点:深度不够,滑点来凑
滑点,是每个交易者都讨厌的东西。你明明看到买一价是100,结果一买进去,成交价变成了100.5。这0.5的差价,就是滑点。
滑点和深度是什么关系?说白了就是:深度越浅,滑点越大。
咱们用一个简单的模型来理解:
| 订单簿档位 | 价格 | 挂单量 | 累计量 |
|---|---|---|---|
| 卖1 | 100.0 | 10 BTC | 10 BTC |
| 卖2 | 100.1 | 5 BTC | 15 BTC |
| 卖3 | 100.2 | 2 BTC | 17 BTC |
| 卖4 | 100.5 | 1 BTC | 18 BTC |
假设你想买入20个BTC。从卖1开始吃:
- 吃卖1的10个,成交价100.0
- 吃卖2的5个,成交价100.1
- 吃卖3的2个,成交价100.2
- 吃卖4的1个,成交价100.5
- 还差2个?对不起,卖5可能更贵了
你的平均成交价是:(10×100 + 5×100.1 + 2×100.2 + 1×100.5) / 18 ≈ 100.13
相比买一价100.0,滑点了0.13%。
你想想看,如果深度足够大,比如卖1就有100个BTC,那你20个BTC全部在100.0成交,滑点就是0。
避坑指南:我曾经在某个新上线的交易所做市,发现它的深度图看起来不错,但实际成交时滑点特别大。后来一查,原来是它的订单簿数据是“伪深度”——很多挂单是虚假的,根本不会成交。所以,看深度图一定要结合真实成交数据,别被表面数据骗了。
这里我给大家一个实用的滑点估算公式:
滑点 ≈ (你的订单量 / 当前深度) × 价差
举个例子:如果当前深度是100个BTC,价差是0.1,你想买10个BTC:
滑点 ≈ (10 / 100) × 0.1 = 0.01
也就是说,你的成交价会比当前价格高0.01左右。
当然,这个公式是简化版。实际交易中,滑点还受市场波动、订单簿更新速度、网络延迟等因素影响。但作为快速估算,够用了。
4.4 小结:深度分析的三个关键点
好了,这一章的内容就这些。我总结一下:
- 深度是流动性的量化指标,看的是订单簿上各个价位的挂单总量。
- 深度图是分析工具,能帮你直观判断市场的支撑和阻力位。
- 滑点是深度的直接体现,深度越浅,大单成交的成本越高。
下一章,我会讲如何用深度数据来设计做市策略。到时候咱们会聊到“深度曲线斜率”这个概念,很有意思。
嗯,今天就到这儿。有问题随时找我。