首页/指南/交易成本

回测中的交易成本:为什么它比你想象的更重要

交易成本是每笔交易都要付出的摩擦,包括佣金、买卖价差、滑点、市场冲击,以及做空时的融券成本。年度成本拖累约等于往返交易次数乘以每次往返成本:每年 200 次往返、每次 10 个基点,约占资金的 20%。

回测过的策略在实盘中失败,最常见的原因不是策略逻辑,而是交易成本。佣金、价差、滑点和市场冲击会随着每一笔交易不断累积。一个在无摩擦回测中年化收益 15% 的策略,在计入真实成本后很容易变成净亏损。理解并建模这些成本不是可选项,而是必需的。

交易成本的类型

交易成本有多种形式,而大多数交易者只考虑了最显眼的那一种:

  • 佣金:按每笔交易或每股收取的显性费用。折扣券商的佣金从零(Robinhood、Webull)到每股 $0.005(Interactive Brokers)不等。期货通常为每张合约每边 $0.50-$2.50。
  • 买卖价差(bid-ask spread):最优买价与最优卖价之间的差额。SPY 的价差通常为 $0.01(约 0.2 个基点)。小盘股可能是 $0.05-$0.20(10-50 个基点)。你在入场时支付一半价差,出场时再支付另一半。
  • 滑点(slippage):预期价格与实际成交价格之间的差额。由订单处理延迟、执行期间的市场变动和部分成交造成。在流动性好的市场使用限价单时几乎为零,在波动大或流动性差的情况下使用市价单时则可能相当可观。
  • 市场冲击(market impact):你自己的订单引起的价格变动。在流动性好的品种上,散户规模的订单可以忽略不计,但对较大的仓位影响显著。在一只日成交额 $5M 的股票上下一笔 $500K 的市价单,会明显推动价格朝对你不利的方向移动。
  • 融券成本:做空时,你需要为借入股票支付费用。容易借入的大盘股年费率低至 0.25%,难以借入的股票则可达每年 50% 以上。许多回测完全忽略融券成本,从而夸大了所有做空策略的表面盈利能力。

成本如何累积

交易成本是乘法式的,而不是加法式的。设想一个策略每年进行 200 次往返交易,每次往返总成本为 10 个基点(包括价差、滑点和佣金)。那就是 200 x 0.10% = 每年 20% 的资金损失在摩擦上。这个策略至少要产生 20% 的毛收益才能保本。

这就是为什么交易频率是决定成本影响的最大单一因素。同样每笔 10 个基点,按月调仓的策略每年只因成本损失 1.2%。按日交易的策略损失 25%。每天交易 10 次的日内策略损失 250%——这显然是不可能的,意味着该策略在这种频率下每笔交易必须赚得多得多才能可行。

年度成本拖累 = 往返交易次数 x 每次往返成本

按资产类别的现实估计

在回测中加入交易成本时,请使用以下现实的往返成本估计:

  • 美国大盘股(S&P 100):合计 3-8 个基点(价差 + 滑点)。折扣券商的佣金接近零。
  • 美国中小盘股:10-30 个基点。价差更宽,滑点更多。
  • 主要外汇货币对(EUR/USD、GBP/USD):流动性充足时段为 1-3 个基点。新闻事件期间可能扩大到 10 个以上。
  • 主流加密货币(BTC、ETH):在主要交易所含交易所手续费为 10-20 个基点。山寨币:20-60 个基点。
  • 美国股票期权:每张合约 5-15 美分佣金,另加价差成本,对流动性差的行权价可能达到期权价格的 2-10%。
  • 期货(ES、NQ):1-2 个基点价差 + 每张合约每边 $2-5 佣金。对大名义规模非常高效。

如何在回测中为成本建模

最简单的方法是每笔交易设置固定百分比成本。入场时计一半、出场时计一半,或在每个平仓的仓位上计入完整的往返成本。虽然不精确,但总比完全忽略成本要好。

更现实的方法是分别为每个成本组成部分建模:

  • 每股或每笔交易的固定佣金
  • 以平均买卖价差的一半作为成交成本
  • 与波动率成比例的滑点系数(例如平均真实波幅的 10%)
  • 对于做空策略,按比例扣除年度融券成本

黄金标准是使用逐笔订单簿数据来模拟真实成交——但这需要专门的基础设施,对大多数策略开发来说过于复杂。按你所在资产类别的现实估计校准的固定百分比方法,能捕捉到绝大多数与成本相关的问题。

对策略选择的影响

交易成本从根本上改变了哪些策略是可行的。单笔优势很小的高频策略对成本极其敏感——执行成本哪怕相差 1 个基点也可能让盈利变成亏损。单笔预期波动较大的低频策略,对成本假设要稳健得多。

这形成了一个实用的层级:如果你无法获得机构级的执行(主机托管、智能订单路由、暗池接入),就应该偏向交易频率更低、单笔预期收益更大的策略。一个单笔预期收益 3% 的按月调仓策略,比单笔预期 0.1% 的日频策略更能容忍执行上的不完美。

零佣金的神话

零佣金券商的兴起造成了一个危险的误解:交易是免费的。并不是。零佣金券商通过订单流付费(PFOF)赚钱,即把你的订单流卖给做市商。做市商从你的成交价与真实市场价之间的差额中获利。

学术研究估计,PFOF 平均让散户每股多付 1-3 美分——与旧的按股收费佣金结构相当甚至更高。对于一只 $50 的股票,每股 2 美分就是 4 个基点——一次往返就是 8 个基点。对于不常交易的人来说,这微不足道。但对于每年交易 200 次以上的策略,它会累积成一项可观的拖累,必须在回测中计入。

亲自试试

理解成本影响的最好方法,是在计入和不计入交易成本的情况下分别运行同一个策略并进行比较。QuantPrompt 在回测中包含交易成本建模,让你看到佣金和滑点如何影响策略的净表现、夏普比率和回撤。描述你的策略,运行回测,检查结果对不同成本假设有多敏感。如果成本稍有增加就抹掉了你的优势,这个策略就过于脆弱,不适合实盘交易。

常见问题

参考资料