4、交易成本与滑点:佣金、印花税、冲击成本、滑点对套利利润的影响
做跨市场套利,最怕什么?
不是行情判断错,也不是模型不够准。我最怕的是——算账算漏了成本。
你想想看,两边市场同时下单,价差明明有0.3%,你觉得稳了。结果一算账,佣金、印花税、冲击成本全扣完,利润只剩0.05%。要是再碰上滑点,直接亏钱。
这不是段子。我早年做ETF期现套利时,就吃过这个亏。今天咱们把这笔账,一笔一笔算清楚。
4.1 佣金与印花税——看得见的“出血点”
佣金和印花税,是交易成本里最直观的部分。很多新手只盯着价差,却忽略了这些“小钱”。
我习惯把佣金分成两类:
- 固定佣金:按笔收费,比如每笔5元。适合大单,摊薄后成本低。
- 比例佣金:按成交金额的万分之几收。比如万1.5,小单更划算。
印花税呢?A股市场是卖出时收,千分之一。期货市场没有印花税,但有交易所手续费。
关键点:跨市场套利涉及双边交易,成本要算两遍。
比如你在A股买ETF,在期货市场卖空股指。买入ETF要付佣金,卖出期货要付手续费。两边加起来,可能吃掉你0.1%的利润。
我建议你做个表格,把每个市场的费率列清楚:
| 市场 | 佣金费率 | 印花税 | 其他费用 |
|---|---|---|---|
| A股(买入) | 万1.5 | 无 | 过户费万0.2 |
| A股(卖出) | 万1.5 | 千1 | 过户费万0.2 |
| 股指期货 | 万分之0.23 | 无 | 平今仓手续费更高 |
你看,光A股卖出这一项,印花税就千分之一。如果你做的是高频套利,这个成本占比会非常大。
我的习惯:每次回测时,我都会把佣金和印花税设成“保守值”。比如实际是万1.5,我按万2算。多出来的0.5个万分点,就当安全垫。
4.2 冲击成本——大单的隐形杀手
冲击成本,说白了就是你下单时,把价格“推”走了多少。
举个例子。你想买100手某ETF,当前卖一价是1.000元。但你一单下去,卖一到卖五全被吃掉,成交均价变成了1.002元。这多出来的0.002元,就是冲击成本。
为什么会这样?
因为市场深度不够。你想想看,盘口上每个价位的挂单量是有限的。你的单子越大,吃掉的价位就越多,成交均价就越偏离你的预期。
注意:冲击成本不是固定的。它取决于:
- 你的订单规模
- 市场的流动性
- 当时的波动率
我见过有人做跨品种套利,单子太大,直接把价差打没了。嗯,那叫一个惨。
怎么估算冲击成本?
我常用的方法是看“市场深度图”。简单说,就是统计每个价位的挂单量,然后算你的订单会吃掉几个价位。
# 一个简单的冲击成本估算函数
def estimate_impact_cost(order_size, order_book):
"""
order_size: 你的订单数量
order_book: 盘口数据,格式为 [(price, volume), ...]
"""
remaining = order_size
total_cost = 0
for price, volume in order_book:
if remaining <= 0:
break
trade_volume = min(remaining, volume)
total_cost += trade_volume * price
remaining -= trade_volume
avg_price = total_cost / order_size
return avg_price
这个代码很简单,但很实用。你把它跑一遍,就能知道你的订单大概会以什么价格成交。
4.3 滑点——你永远无法完全控制的变量
滑点,是交易成本里最让人头疼的。
它和冲击成本有点像,但本质不同。冲击成本是你主动“推”出来的,滑点是被动“吃”进去的。
什么意思?
你下单时,行情在动。从你看到价差、到手指点下鼠标、再到订单到达交易所,这中间可能已经过了几百毫秒。这几百毫秒里,价格可能已经变了。
我做过一个统计:在股指期货和ETF之间做套利,平均滑点在0.5个tick左右。别小看这0.5个tick,换算成利润,可能就是一笔单子的全部收益。
避坑指南:我曾经在2015年股灾期间做期现套利,那会儿市场波动极大。我按正常滑点估算,结果实际滑点比预期大了3倍。为什么?因为市场深度变浅了,流动性枯竭了。
从那以后,我养成了一个习惯:在回测时,把滑点设成“正常值的2倍”。如果回测还能赚钱,实盘才敢上。
滑点怎么量化?
我建议你用历史数据做模拟。比如,取过去30天的tick数据,统计每个订单从发出到成交的价差变化。然后取一个中位数或90分位数,作为你的滑点参数。
4.4 综合成本模型——把账算清楚
好了,现在我们把所有成本加在一起,看看套利到底能赚多少。
一个完整的成本模型,至少包含这几项:
- 佣金(双边)
- 印花税(如有)
- 冲击成本(估算值)
- 滑点(历史统计值)
- 资金成本(如果涉及隔夜持仓)
我习惯用这个公式:
总成本 = 佣金 + 印花税 + 冲击成本 + 滑点 + 资金成本
净利润 = 理论价差 - 总成本
如果净利润小于0,这笔交易就不该做。
我的经验:很多套利机会,理论价差看着有0.5%,但扣完所有成本,可能只剩0.1%。这0.1%还要考虑胜率和频率。如果一个月只能做10次,每次赚0.1%,那还不如买理财。
所以,我一般只做理论价差在1%以上的机会。低于这个数,风险收益比不划算。
4.5 一张图看懂交易成本的影响
下面这张图,是我自己总结的。它展示了不同成本项对套利利润的侵蚀路径。
你看,理论价差1.0%,扣完佣金、印花税、冲击成本和滑点,最后只剩0.6%。这还算好的。如果市场流动性差,冲击成本翻倍,净利润可能直接变成负数。
所以,做套利的核心不是找价差,而是控成本。成本控不住,再大的价差也是白搭。
好了,这一章的内容就到这里。交易成本这东西,说复杂也复杂,说简单也简单。你只要记住一句话:算账时,永远往坏处想。
公众号:蓝海资料掘金营,微信deep3321