> ## Content Index
> Fetch the complete content index at: https://blog.edgepilotai.io/llms.txt
> Use this file to discover other available public pages before exploring further.

# 回测赚 20%，加入真实滑点后还剩多少？
- URL: https://blog.edgepilotai.io/zh/slippage-kills-backtest-profit/
- Published: 2026-08-23T15:11:58.000Z
- Updated: 2026-08-26T04:44:39.000Z
- Description: 同样的滑点，对低频策略可能只是少赚一点，对高换手策略却可能吃掉整段回测利润。用敏感性测试算清盈亏平衡滑点。
- Author: EdgePilot Team
- Tags: #zh-cn, Quant Basics

先说答案：**在下面这组例子里，回测赚 20%，单边滑点到 0.05% 后只剩 10%；到 0.10%，利润直接归零。**

回测里的市场特别有礼貌：信号一来，立刻按你看见的价格成交。真实市场没这么讲武德。你看见 100，点下买入，成交可能已经是 100.05；卖出时再来一下。

一次差一点，看着没啥。来回 100 轮以后，那个“小数点误差”能把整段利润啃干净。

## 滑点和手续费不是一回事

手续费是平台按规则收取的显性费用；滑点是预期成交价与实际成交价之间的差异。点差则是同一时刻最佳买价和最佳卖价之间的距离。

Coinbase 的官方解释指出，滑点是订单实际执行价格与预期价格出现偏差；流动性较低或交易活动较少时，滑点可能更高。[Understanding slippage and spread](https://help.coinbase.com/en-gb/coinbase/trading-and-funding/buying-selling-or-converting-crypto/understanding-slippage-and-spread?ref=blog.edgepilotai.io)

对买入而言，实际成交价高于预期是不利滑点；对卖出而言，实际成交价低于预期是不利滑点。

说人话：你眼睛看见一个价，手点下去，真正成交又是另一个价。中间差的那一点，就是市场趁你眨眼时顺走的。

![八爪鱼拉住看见的价格和实际成交价格，执行间隙不断掉落小损失](https://storage.ghost.io/c/6d/bb/6dbbb7cc-1f93-4cd3-8d75-e3c2cfce055f/content/images/2026/08/slippage-explainer-octobot.png)

滑点，就是看见的价和真正成交的价之间那点距离。

简化估算就是：一笔滑点损失，大约等于成交金额乘以不利滑点率；把每次“就差一点”全加起来，就是总滑点损失。

这个公式适合做第一轮压力测试，但不能完整替代订单簿、部分成交和市场冲击模型。

## 单边只滑 0.05%，为什么可能毁掉策略？

假设一个教学场景：

- 初始资金 10,000 USDT；
- 每次完整买卖的名义金额为 10,000 USDT；
- 一年完成 100 轮买卖，共 200 次单边成交；
- 手续费暂时设为 0，只单独观察滑点；
- 回测毛利润为 2,000 USDT，即初始资金的 20%；
- 每次成交金额固定，不做复利。

| 单边滑点  | 100 轮成本    | 最后剩下          |
| ----- | ---------- | ------------- |
| 0.01% | 200 USDT   | 1,800 USDT    |
| 0.05% | 1,000 USDT | 1,000 USDT    |
| 0.10% | 2,000 USDT | 0 USDT        |
| 0.20% | 4,000 USDT | 倒亏 2,000 USDT |

看到没有：单边滑点到 0.05%，利润先砍一半；到 0.10%，回测里那 20% 的收益，实盘还没来得及发朋友圈就没了。

20% 回测利润，滑几次就没了？

每轮**10,000 × 0.05% × 2** **\= 10 USDT**

100 轮**10 × 100** **\= 1,000 USDT**

最后剩下**2,000 - 1,000 = *1,000 USDT***

单边只滑 0.05%，来回 100 轮，就能吃掉一半毛利润。

![一脸困惑的网络反应动图](https://storage.ghost.io/c/6d/bb/6dbbb7cc-1f93-4cd3-8d75-e3c2cfce055f/content/images/2026/08/slippage-confused.gif)

不是，我回测里的利润去哪儿了？

这不是市场平均，也不是对任何策略的预测。它只说明：**成本看的是累计成交额，回测标题看的却常常是初始资金收益率，两者不在一个口径上。**

## 为什么低周期策略特别脆？

因为它们通常同时具备三件事：

- 单笔预期优势薄；
- 交易次数多；
- 更依赖及时成交。

假设策略每轮预期毛优势只有 0.15%，但买入和卖出分别承受 0.05% 不利滑点，滑点已经消耗 0.10%。如果再加入双边手续费，剩余优势可能非常有限。

反过来，低频策略每笔目标幅度更大，滑点占比可能较低。但这不是说低频一定更好；持仓风险、跳空、资金占用和错过机会都可能更高。

## 回测应该填一个固定滑点吗？

固定滑点比完全不填好，但只填一个数字仍然很容易自欺欺人。

滑点可能受以下因素影响：

- 交易对流动性；
- 下单金额相对于盘口深度的大小；
- 市价单或限价单；
- 波动率和新闻时段；
- 信号到订单、订单到成交的延迟；
- 部分成交与撤单重下；
- 多个用户或策略是否同时执行相同信号。

一个 Reddit 用户描述过典型落差：回测假设按最后成交价立即成交，实盘却受到买卖价差、延迟和高波动期 API 变慢影响；在其个人案例中，加入更高滑点假设后，回测结果显著下降。这只能作为用户痛点样本，不能代表普遍幅度。[Reddit discussion](https://www.reddit.com/r/IndiaAlgoTrading/comments/1sdwa4o/why%5Fdoes%5Fmy%5Fbacktest%5Fshow%5Fprofit%5Fbut%5Flive%5Ftrading/?ref=blog.edgepilotai.io)

## 更诚实的做法：跑一条滑点压力曲线

与其争论“滑点应该填多少”，不如同时测试 0、0.01%、0.03%、0.05%、0.10% 和 0.20% 多档情景。

然后观察：

1. 净收益何时降到零；
2. 最大回撤何时超过容忍范围；
3. 哪类交易贡献了最多滑点损失；
4. 减少交易频率后，收益和成本分别下降多少；
5. 策略是否只在“几乎零滑点”时才成立。

最后一条尤其重要。如果一个策略只有在完美成交条件下才赚钱，它未必是策略，可能只是回测软件给你发的一张体验券。

## 最强反对意见：滑点也可能对你有利

是的，实际成交有时可能优于预期价格，尤其是使用限价单或市场朝有利方向变化时。因此把每笔成交都设置为同样的不利滑点可能过于悲观。

但另一面是，简单平均也可能掩盖“坏时候滑得更多”：市场快速波动、流动性下降时，策略最需要执行，成交偏差却可能最大。

合理做法不是永远假设最坏，也不是默认零滑点，而是：

- 用实盘或模拟成交日志估计分布；
- 按市场状态、订单类型和交易规模分组；
- 同时报告中性与不利情景；
- 保留极端压力测试。

![发现利润消失后的崩溃反应动图](https://storage.ghost.io/c/6d/bb/6dbbb7cc-1f93-4cd3-8d75-e3c2cfce055f/content/images/2026/08/slippage-profit-gone.gif)

一次差一点，最后真的一点不剩。

## 怎样计算自己的滑点？

至少记录：

- 信号时间；
- 下单时间；
- 预期价格；
- 实际平均成交价；
- 买卖方向；
- 成交数量；
- 首次成交和完全成交时间；
- 当时点差与可用盘口深度。

买入的不利滑点率，可以近似看成“实际成交价减去预期价格，再除以预期价格”。

卖出方向相反。之后按成交金额加权，而不是把一笔 50 USDT 小单和一笔 50,000 USDT 大单简单平均。

## 回测赚的钱，实盘还能剩多少？

真正危险的不是滑点高，而是你不知道它会吃掉多少利润。

EdgePilot 可以把回测结果与真实成交数据放在一起，直接算出：**利润被吃掉了多少、损失集中在哪些交易，以及滑点升到多少时策略会开始亏钱。**

如果回测赚 20%，实盘只剩 8%，你需要的不是一句“平均滑点 0.06%”，而是一个明确结论：

> **六成利润消失在低流动性时段和高频小单里。避开这些时段、减少无效交易，否则这套策略不适合直接上线。**

![八爪鱼把回测百分之二十经过真实成交筛网，最终只留下实盘百分之八](https://storage.ghost.io/c/6d/bb/6dbbb7cc-1f93-4cd3-8d75-e3c2cfce055f/content/images/2026/08/02-backtest-live-profit-filter.png)

回测的 20% 经过真实成交，损失主要漏进低流动性和高频小单，最后只剩 8%。

再测试 0.02%、0.05% 和 0.10% 三档滑点，就能提前找到策略的盈亏临界点。**别等实盘把答案算给你，那时交的是真钱。**

*以上为 EdgePilot 规划中的实盘差距诊断能力，具体以上线版本为准。*

## FAQ

### 滑点是不是交易所偷偷收费？

不是同一概念。手续费是明确收费规则；滑点是预期价格与实际成交价格的偏差，可能来自波动、流动性、订单规模和执行延迟。

### 限价单可以完全避免滑点吗？

限价单可以限制最差成交价格，但可能不成交、部分成交或错过行情，不能免费解决所有执行问题。

### 回测里应该设置多少滑点？

没有适用于所有策略的固定答案。应根据交易对、订单规模、订单类型和真实成交记录设置多档情景。

### 手续费和滑点能不能直接加在一起？

可以在统一成本模型中分别计算后汇总，但要确认点差、成交价和平台费用没有被重复计算。

## 最后一句

别再问“回测赚了多少”，先问：**滑点填到多少，这条曲线会死？**

今天就跑 0、0.01%、0.05%、0.10% 四档。要是加到 0.05% 就腰斩，这个策略下一步不是上线，而是继续审。

本文由 EdgePilot 内容团队制作，用于研究与教育，不构成投资建议。示例为静态情景，不代表真实账户、市场平均或未来表现。

## 来源

- [Coinbase：滑点、点差与流动性的解释](https://help.coinbase.com/en-gb/coinbase/trading-and-funding/buying-selling-or-converting-crypto/understanding-slippage-and-spread?ref=blog.edgepilotai.io)
- [Reddit：回测与实盘滑点落差案例](https://www.reddit.com/r/IndiaAlgoTrading/comments/1sdwa4o/why%5Fdoes%5Fmy%5Fbacktest%5Fshow%5Fprofit%5Fbut%5Flive%5Ftrading/?ref=blog.edgepilotai.io)，仅作为痛点和个案来源。