亏损长什么样
在一本实盘账簿上,我们把每个完成的循环按成本排开,去看尾部。去掉最差的 1%,每百万成交量的成本就从 177 掉到 43。四分之三的伤害坐在一百个循环里的那一个上面。
那些循环长得都一样:仓位比设定的单笔规模大、拿了好几个小时、最后靠穿过价差出场。入场端没有任何特征能把它们区分出来。我们拿六种入场过滤器去打这条尾巴,六种全部失败——其中两种看起来像胜利,只是因为金属在上涨,把多头和空头拆开一看就露馅了。
- 亏损不是均匀分布的,它坐在一条很细的尾巴上。
- 尾巴的形状是库存,不是价格预测。
- 入场过滤器够不着它;出场和库存政策才能。
库存锁,以及它的代价
规则很简单:一旦有超过交易所最小单位的剩余仓位,会让它变大的那一侧就熄灭,只留缩减的一侧继续报价。仓位在构造上就不可能超过一个单笔规模,尾巴也就无从形成。
三个互相独立的信号确认了它有效:吃单出场从每小时 1.42 次降到 0.89 次;连续三个及以上仓位单元的比例从 7.5% 降到 4.1%;现场观察也看到了它要阻止的那个形态——连着三次买入,随后一次吃单出场,−6.6 个基点。
它有实实在在的代价,说清楚才诚实:成交量会下降,因为一半时间只有一条腿在报价。我们曾凭两次「看不出好处」的测量把锁关了四天。那两次测量对自己那个数字是对的,对问题是错的:锁的代价大约是 7.7 个每百万成本单位,而逐小时的噪声是正负 29——它根本淹没在里面。
- 锁在构造上就把仓位封在一个单笔规模内。
- 实测:吃单出场更少,连续堆仓更少。
- 它的代价是成交量,而它的收益小于逐小时噪声——所以需要机制上的论证,而不只是一次测量。
出场政策:对时间有耐心,对方向没有
人的直觉是拿住亏的、砍掉赚的;做市需要的是反过来的纪律,而且形式很具体。给出场一个很长的被动窗口,让它能以挂单方身份离场,而不是花钱穿过价差。但对一个价格持续朝不利方向漂移的仓位,要在那个窗口到期之前很久就砍掉。
在我们的黄金账簿上,这两个数字是 30 分钟的只走挂单宽限期,和 6 个基点的不利漂移上限。此前 14 个基点的上限实际上从不触发:这个市场典型的不利漂移在 0.4 到 1.8 个基点之间,14 个基点的天花板等于架在天上。
- 长的被动出场窗口:以挂单方离场比穿过价差便宜得多。
- 紧的不利漂移上限:一个持续与你为敌的仓位,不会按你的时间表回来。
- 检查你的上限是否真的会触发。一个市场永远够不到的阈值,不是保护。
常见问题
做市里的库存风险是什么?
指成交之后你被留下持有的那个仓位所承担的风险。方向不是你选的,你也不想要它;你每多拿一秒,市场就多一秒可能与你为敌。它是做市里仅次于逆向选择的第二大成本,而且两者会叠加。
做市商应该持仓多久?
在不必花钱穿过价差的前提下,越短越好。落到实处,就是一个长的被动窗口配上一个紧的不利漂移上限——对时间有耐心,对方向没有。
我该给库存封顶吗?
该,而且要用机制而不是靠自觉。可靠的形式是:只要仓位存在,就关掉会让它变大的那一侧,这样即使行情很快、你的注意力在别处,上限依然成立。
为什么我的止损老是被打掉?
多半是按更快的策略设的。一个会把库存拿满九十分钟的模式,在持有期间必然出现浮动盈亏的摆动。我们刚上线这种模式的头几天,凡是设了五美元止损的会话都在数小时内被打停,每一个都只超出阈值几美分;而设了更宽止损的会话跑了好几天。