三、核心参数解析(一):报价宽度(Spread)、报价深度(Depth)、订单生命周期(TTL)
做市策略里,参数调优是最磨人的活。没有之一。
今天咱们先啃三块硬骨头:报价宽度、报价深度、订单生命周期。这三个参数,说白了就是做市商的「定价权」、「库存量」和「耐心」。
一句话总结:Spread 决定你赚多少,Depth 决定你扛多少,TTL 决定你等多久。
3.1 报价宽度(Spread)——你的利润空间
Spread 就是买一价和卖一价之间的差值。做市商赚的就是这个差价。
我个人习惯把 Spread 拆成两部分看:基础价差 + 风险溢价。
- 基础价差:覆盖交易手续费、滑点成本。比如交易所手续费是 0.1%,那基础价差至少得 0.2% 以上,不然就是白干。
- 风险溢价:补偿你承担的库存风险。波动越大,溢价越高。
我在项目中遇到过最典型的错误:新手把 Spread 设得太窄,以为薄利多销能跑量。结果波动一来,库存方向做反,一次亏损吃掉十天的利润。
⚠️ 避坑指南:我曾经在 ETH 上设了 0.05% 的 Spread,想着流动性好没事。结果一个插针,库存全砸在最低点。后来我学乖了——波动率每上升 10%,Spread 至少加 0.02%。
Spread 的设定,我建议用动态方式:
# 动态 Spread 计算示例
base_spread = 0.002 # 0.2%
volatility = get_volatility(symbol, window=20)
vol_adjustment = volatility * 0.5
current_spread = base_spread + vol_adjustment
# 限制范围
current_spread = max(0.001, min(0.01, current_spread))
嗯,这里要注意:Spread 不是越宽越好。太宽了,订单成交不了,你就在那挂单干瞪眼。我一般控制在 0.1% ~ 1% 之间,具体看币种流动性。
3.2 报价深度(Depth)——你的库存容量
Depth 指的是你在每个价位上挂多少量。说白了,就是「你敢接多大的单子」。
Depth 设得大,你能吃到大单,但库存风险也大。设得小,安全但赚得少。
我个人习惯把 Depth 和账户总资产挂钩:
| 账户规模 | 建议单边 Depth | 说明 |
|---|---|---|
| < 10 ETH | 0.1 ~ 0.5 ETH | 小资金,求稳为主 |
| 10 ~ 100 ETH | 0.5 ~ 2 ETH | 中等规模,可适当激进 |
| > 100 ETH | 2 ~ 5 ETH | 大资金,注意分散风险 |
你想想看,如果 Depth 设得比市场深度还大,那你就成了「接盘侠」。大单砸过来,你一个人全吃了,库存瞬间失衡。
💡 我的经验:Depth 最好设为市场平均深度的 20% ~ 30%。既能吃到单,又不会成为靶子。
还有一个细节:Depth 要和 Spread 联动。Spread 越宽,Depth 可以适当放大,因为利润空间大,能扛更多库存风险。反之亦然。
3.3 订单生命周期(TTL)——你的耐心值
TTL 就是订单在订单簿上存活的时间。到期不成交,自动撤单。
TTL 设得太短,订单频繁撤挂,浪费手续费。设得太长,订单挂在那边,价格变了你还不知道。
我记得有一次,TTL 设了 60 秒,结果行情突变,我的买单还挂在原地。价格跌了 2%,我还在那傻等成交。嗯,那次亏了不少。
TTL 的设定,我建议分场景:
- 高波动行情:TTL 设短,5 ~ 15 秒。价格变化快,挂久了没意义。
- 低波动行情:TTL 设长,30 ~ 60 秒。价格稳定,可以多等一会。
- 开盘/收盘:TTL 设更短,3 ~ 10 秒。这两个时间段流动性最不稳定。
核心逻辑:TTL 的本质是「你愿意为这个价格等多久」。价格合理,多等一会;价格不合理,赶紧撤。
我曾经犯过一个错:把 TTL 设成固定值 30 秒,不管什么行情都这样。结果在剧烈波动时,订单要么成交在很差的价格,要么一直挂在那不成交。后来我改成动态 TTL:
# 动态 TTL 示例
def get_ttl(volatility):
if volatility > 0.05: # 高波动
return 10 # 秒
elif volatility > 0.02: # 中波动
return 25
else: # 低波动
return 45
嗯,这样就好多了。TTL 和波动率挂钩,逻辑上说得通。
3.4 三个参数的联动关系
这三个参数不是孤立的。它们互相影响,牵一发而动全身。
我画了一张图,帮你理清关系:
从图上你能看到:
- Spread 和 Depth:正相关。利润空间大,你才敢接更多单。
- Depth 和 TTL:负相关。深度越大,订单越难完全成交,TTL 可以适当放长。
- Spread 和 TTL:间接相关。Spread 宽说明你要求高利润,那 TTL 可以短一些,等不到就撤。
💡 调参顺序:我建议先定 Spread,再调 Depth,最后微调 TTL。Spread 是利润来源,是核心中的核心。
3.5 实战中的常见误区
做市策略调参,我踩过的坑不少。列几个典型的:
- Spread 设得太小:以为能靠量取胜,结果一次波动就亏回去。
- Depth 设得太大:库存风险失控,方向做反时欲哭无泪。
- TTL 设得太长:订单挂在过时的价格上,成交即亏损。
- 三个参数独立调:不考虑联动关系,调完一个发现另一个崩了。
我曾经在 BTC 上同时犯了 1 和 3 的错误。Spread 设 0.03%,TTL 设 60 秒。结果行情一波动,订单全成交在不利价格,库存瞬间爆仓。那次教训让我明白:参数调优不是孤立的,要整体看。
⚠️ 最后提醒:别迷信固定参数。市场在变,你的参数也得跟着变。我每周都会复盘一次参数表现,该调就调,别手软。
好了,Spread、Depth、TTL 这三个参数,今天就聊到这。记住一句话:Spread 是矛,Depth 是盾,TTL 是节奏。三者配合好了,做市策略才能稳定盈利。
公众号:蓝海资料掘金营,微信deep3321