第一章:佣金与税费模型
做量化交易这么多年,我越来越觉得一个道理:交易成本才是真正的对手盘。你策略再牛,回测夏普比再高,只要没把佣金和税费算清楚,实盘一跑,利润可能直接打对折。今天我们就来聊聊这个看似基础、实则要命的话题。
1.1 不同市场的佣金结构
每个市场的游戏规则都不一样。我最早做A股,后来扩展到港股和美股,每个市场都踩过坑。先看个总览:
| 市场 | 佣金结构 | 最低收费 | 特殊说明 |
|---|---|---|---|
| A股 | 万分之2.5 ~ 万分之3 | 5元/笔 | 买卖双向收取 |
| 港股 | 万分之2.5 ~ 万分之8 | 100港元/笔 | 含交易征费、交易费 |
| 美股 | 每股0.005美元 或 交易额的万分之5 | 1美元/笔 | 不同券商差异大 |
这里有个细节很多人会忽略——最低收费。我见过一个做高频的哥们,在A股做小单交易,每笔赚3块钱,结果佣金扣5块,倒亏。嗯,这就是典型的「策略赚钱,成本亏钱」。
1.2 印花税与过户费
印花税这东西,说白了就是国家收的「交易税」。A股目前是卖出时收千分之一,港股更狠,买卖双向都收千分之一。美股呢?没有印花税。这也是为什么很多做长线的朋友喜欢美股的原因之一。
过户费相对小众,但也不能忽视。A股的过户费是万分之零点二,买卖都收。我算过一笔账:如果你每天做10次全仓交易,一年下来过户费就能吃掉你本金的1%以上。你想想看,年化收益才多少?
单笔交易总成本 = 佣金 + 印花税 + 过户费 + 其他杂费
其中佣金 = max(成交额 × 佣金率, 最低佣金)
1.3 佣金模型的数学表达
做量化的人,习惯用数学说话。佣金模型其实可以抽象成这样一个分段函数:
# 佣金计算函数(Python示例)
def calc_commission(trade_value, rate=0.00025, min_fee=5.0):
"""
trade_value: 成交金额(元)
rate: 佣金率(默认万2.5)
min_fee: 最低佣金(默认5元)
"""
fee = trade_value * rate
return max(fee, min_fee)
# 总交易成本
def calc_total_cost(buy_value, sell_value):
commission_buy = calc_commission(buy_value)
commission_sell = calc_commission(sell_value)
stamp_tax = sell_value * 0.001 # 印花税,卖出收千分之一
transfer_fee = (buy_value + sell_value) * 0.00002 # 过户费
return commission_buy + commission_sell + stamp_tax + transfer_fee
这个模型看着简单,但实际应用时有个坑——最低佣金的存在让成本函数变成了非线性的。我曾在一次回测中忽略了这一点,结果实盘时发现小单交易的亏损率比预期高了30%。
1.4 佣金对策略净收益的影响
咱们用数据说话。假设你有一个策略,年化收益20%,换手率200%(即每年买卖各一次)。不同佣金率下的净收益对比如下:
| 佣金率 | 年化毛收益 | 交易成本 | 年化净收益 | 成本占比 |
|---|---|---|---|---|
| 万2.5 | 20% | 0.75% | 19.25% | 3.75% |
| 万5 | 20% | 1.5% | 18.5% | 7.5% |
| 万8 | 20% | 2.4% | 17.6% | 12% |
看到没?佣金率从万2.5涨到万8,成本占比从3.75%飙升到12%。说白了,佣金率翻3倍,净收益损失超过10%。这还只是换手率200%的情况。如果你做高频,换手率500%甚至1000%,那成本占比会高到让你怀疑人生。
1.5 知识体系总览
为了让你更直观地理解本章的知识结构,我画了一张图:
这张图把本章的核心逻辑串起来了。从三大市场的佣金结构,到成本构成,再到数学模型,最后落到对策略收益的影响。你顺着这个思路走,就能建立起完整的交易成本分析框架。
好了,第一章就到这里。记住一句话:交易成本不是小数目,它是你策略的隐形杀手。下一章我们会深入讨论滑点模型,那又是另一个大坑。
公众号:蓝海资料掘金营,微信deep3321