第1章:冲击成本度量——实现价差、VWAP偏离、TWAP偏离
各位同学,咱们今天聊一个实打实的问题:大单交易到底亏了多少?
我刚开始做量化那会儿,接过一个任务——帮机构拆单。当时我天真地以为,只要把大单切成小单,市场就会温柔待我。结果呢?回测跑得漂亮,实盘一上去,滑点直接吃掉一半利润。嗯,从那以后,我老老实实研究冲击成本度量。
说白了,冲击成本就是你下单那一刻,市场给你的「惩罚」。你买得急,价格就涨;你卖得狠,价格就跌。这个惩罚怎么算?今天咱们讲三个最常用的度量方法。
核心观点:冲击成本不是玄学,是可以用数学量化的。你选哪个指标,取决于你的交易目标和时间窗口。
1.1 实现价差(Implementation Shortfall)
这是我最喜欢用的指标,没有之一。为什么?因为它最贴近真实交易场景。
实现价差的概念很简单:你实际成交的价格,跟你「理想价格」之间的差距。这个理想价格,通常取决策时刻的买卖中间价,或者前一日收盘价。
公式长这样:
IS = (实际成交均价 - 决策价格) × 成交数量
如果IS是正数,说明你买贵了(或者卖便宜了),亏了。如果是负数,恭喜你,你抄到底了——但这种情况在实盘中很少见。
我在项目中遇到过一个大客户,要求一天内买入某只股票总市值的5%。我算了一下,按当时的流动性,IS至少是30个基点。客户不信,觉得我危言耸听。结果实盘跑完,IS是28个基点。嗯,从那以后,客户对我的模型信任度直接拉满。
我的习惯:做回测时,我会把IS拆成两部分——「固定成本」(佣金、税费)和「可变成本」(滑点、冲击)。这样能清楚看到,到底是市场在跟你作对,还是券商在割你韭菜。
1.2 VWAP偏离(成交量加权平均价偏离)
VWAP,全称Volume Weighted Average Price。很多机构交易员拿它当基准。
VWAP偏离的计算方式:
VWAP偏离 = (你的成交均价 - 市场VWAP) / 市场VWAP × 10000 (单位:基点)
为什么用VWAP?因为它考虑了成交量分布。市场在放量的时候,价格往往更「真实」。你想想看,如果一只股票全天成交了1亿股,其中5000万股是在某个价格区间成交的,那这个价格区间就很有参考价值。
我个人觉得,VWAP偏离适合做被动型交易的评估。比如你接了一个任务:在一天内完成某只股票的建仓,目标是尽量不引起市场注意。这时候,VWAP就是你的「隐形斗篷」。
但要注意一点:VWAP偏离有个坑。我曾经吃过这个亏——某天市场剧烈波动,VWAP本身就在大幅漂移。你用VWAP做基准,就像在颠簸的船上量身高,根本不准。所以,VWAP偏离更适合平稳市场。
避坑指南:我曾经用VWAP偏离评估一个高频策略,结果发现偏离值很小,但实际亏损很大。后来才意识到,VWAP是全天平均值,而高频交易只做几分钟的波段。用VWAP去衡量高频交易,就像用年降雨量去判断今天要不要带伞——完全不对路。
1.3 TWAP偏离(时间加权平均价偏离)
TWAP,Time Weighted Average Price。这个指标比VWAP更「佛系」——它不考虑成交量,只考虑时间。
公式:
TWAP偏离 = (你的成交均价 - 市场TWAP) / 市场TWAP × 10000
TWAP的逻辑是:如果你把大单均匀地切成N份,每隔固定时间下一单,那么你的成交价应该接近这段时间的平均价。偏离越大,说明你的交易行为对市场产生了冲击。
什么时候用TWAP?我建议在以下场景:
- 流动性不足的股票——VWAP可能被少数大单扭曲,TWAP更稳定
- 你不知道成交量分布——比如盘前或盘后交易
- 你想隐藏交易意图——TWAP的节奏固定,不容易被算法识别
但TWAP也有硬伤。你想想看,如果某只股票在上午成交了90%的量,下午只有10%,你用TWAP均匀下单,下午那部分单子就会「吃大亏」。因为流动性差,你的单子会推高价格。
我记得有一次,我用TWAP拆单做一只小盘股。上午还好好的,下午突然流动性枯竭,我的单子直接把价格拉高了2%。TWAP偏离显示只有5个基点,但实际冲击成本远不止这个数。嗯,这就是TWAP的局限性——它不「看」成交量。
1.4 三个指标的对比
咱们用一张表来总结:
| 指标 | 基准 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|---|
| 实现价差(IS) | 决策时的价格 | 所有场景,尤其是大单 | 最真实,反映全部成本 | 需要定义「决策价格」 |
| VWAP偏离 | 成交量加权均价 | 被动交易、日间交易 | 考虑流动性分布 | 受极端成交量影响 |
| TWAP偏离 | 时间加权均价 | 流动性差、隐藏意图 | 简单、稳定 | 忽略成交量分布 |
我个人习惯是:大单用IS,中单用VWAP,小单用TWAP。当然,这不是铁律。具体用哪个,取决于你的交易策略和市场环境。
1.5 知识体系框架
下面这张图,帮你理清三个指标的关系:
这张图把三个指标的关系讲清楚了。它们不是互斥的,而是互补的。在实际项目中,我经常同时计算三个指标,然后取一个加权值。比如,流动性好的时候,VWAP偏离权重高一些;流动性差的时候,TWAP偏离权重高一些。
一个小技巧:如果你用Python做回测,可以这样同时计算三个指标:
# 伪代码示例
is_cost = (avg_price - decision_price) * volume
vwap_dev = (avg_price / vwap - 1) * 10000
twap_dev = (avg_price / twap - 1) * 10000
嗯,代码很简单,但背后的逻辑值得反复琢磨。
好了,这一章的内容就到这里。三个指标——IS、VWAP偏离、TWAP偏离——是冲击成本度量的基本功。你不需要一开始就精通所有,但至少要理解它们的适用场景和局限性。下一章,咱们会深入讲如何用这些指标去优化你的交易算法。
公众号:蓝海资料掘金营,微信deep3321