↗
TENSORPARADIGMNEURAL MARKET INTELLIGENCE
TENSORPARADIGM 研究 / 交易成本

加密货币交易机器人手续费有多高?用实例算清真实成本

按开仓、平仓和重复交易计算机器人手续费,并区分点差、滑点和永续合约资金费用对回测的影响。

直接回答

交易机器人在订单成交时通常需要支付交易所手续费,开仓和平仓各计算一次。假设每次成交的费率为 0.12%,一笔名义价值 1,000 USDT 的仓位,在平仓名义价值相近的前提下,往返手续费约为 2.40 USDT。同样规模交易 100 次,累计手续费约 240 USDT,尚未计入点差、滑点和资金费用。此费率只是演示假设,不代表任何交易所的当前费率。实际费用取决于成交名义价值、订单类型、账户等级、持仓时间和成交次数。

核心要点

  • 一笔完整交易至少有开仓和平仓两次可能收费的成交。
  • 杠杆仓位的手续费按成交名义价值计算,而不是只按保证金计算。
  • 限价单不一定是挂单成交,是否先进入订单簿才是关键。
  • 点差、滑点和定期资金费用与交易手续费是不同项目。
  • 回测即使扣除了手续费,成交假设或资金费假设仍可能过于乐观。

手续费的基本计算方法

在简化的现货或 USDT 本位合约例子中,单次成交手续费等于该笔成交的名义价值乘以对应费率。将开仓和平仓各自的费用相加,得到往返手续费。平仓价格变化时,平仓名义价值和准确费用也会变化。

假设开仓名义价值为 1,000 USDT,费率为 0.12%,开仓费用是 1.20 USDT。如果平仓名义价值也约为 1,000 USDT,且费率相同,平仓再收 1.20 USDT。合计约 2.40 USDT,相当于初始仓位价值的 0.24%。策略至少要获得更大的毛收益,才能抵消这两笔手续费。

连续交易 100 次会怎样?

假设有 100 次独立的开仓和平仓,每次两侧名义价值都约为 1,000 USDT,每次成交收取 0.12%。总手续费约为 100 × 2.40 = 240 USDT。这是重复周转所产生的累计成本,并非对 1,000 USDT 账户一次性收取 240 USDT。

再假设每笔已完成交易都在约 1,000 USDT 的仓位上取得 0.50% 的毛价格变动。每笔毛收益约 5.00 USDT,扣除约 2.40 USDT 手续费后,尚余 2.60 USDT,点差、滑点和可能的资金费用仍未扣除。如果 100 笔全是这样设定的盈利交易,毛收益为 500 USDT,扣除手续费后为 260 USDT。现实策略会有亏损,仓位大小也会变化。这只是成本计算,不是收益预测。

  • 每次往返:1,000 × 0.12% 开仓 + 1,000 × 0.12% 平仓 ≈ 2.40 USDT
  • 相同仓位交易 100 次:手续费约 240 USDT
  • 1,000 USDT 仓位获得 0.50% 毛变动:成本前约 5.00 USDT
  • 只扣手续费后:若毛变动确实实现,约剩 2.60 USDT

为什么杠杆不会降低手续费?

仓位所需保证金可能小于仓位名义价值。假设以 100 USDT 保证金控制 1,000 USDT 仓位,按示例 0.12% 计算的开仓手续费约为 1.20 USDT,计算基础是约 1,000 USDT 的成交价值,而不是 100 USDT 保证金。

往返约 2.40 USDT 占 1,000 USDT 仓位的 0.24%,却占 100 USDT 保证金的 2.4%。盈利与亏损也会相对于保证金放大。频繁交易、目标利润很小的杠杆策略尤其需要区分这两个基数。

挂单费率和吃单费率由实际成交决定

挂单先留在订单簿,为市场增加流动性。吃单与已有订单立即成交。交易所可能适用不同费率,账户等级、产品以及优惠也可能改变最终费率。

限价单若立即成交,也可能属于吃单。交易所支持的只做挂单功能可以避免立即吃单成交,但订单也可能被拒绝或一直无法成交。因此,回测不能仅凭历史价格碰到限价,就假定以挂单费率完全成交。

手续费之外还有哪些成本?

点差是当前最优买价与卖价之差。滑点是预期价格与实际成交价格之差。两者影响买入和卖出的价格,应与另外收取的手续费分开计算。

永续合约仓位如果在资金费结算时仍然持有,可能支付或收到资金费用。其方向与金额会变化,因此不能不看持仓时间就机械地给每一笔交易扣除相同金额。强制平仓还可能带来额外成本。现货策略没有永续合约资金费。

  • 交易手续费:每笔成交按相应费率计算
  • 点差与滑点:影响成交价格,在剧烈波动时可能增大
  • 资金费用:永续仓位在结算时可能发生的条件性现金流
  • 服务订阅费:评估机器人使用总成本时另行考虑

在 TradingView 和 Python 中如何建模?

TradingView 策略设置中的百分比手续费会对开仓和平仓订单分别生效。不要把开仓和平仓费率先加起来,再填入单次成交的费率栏,否则可能重复计费。例如假设两侧各为 0.12%,应设置每笔成交 0.12%。

TradingView 对市价单和止损单提供滑点设定,历史限价单是否真的成交还需要审慎处理。在 Python 回测中,应按每笔实际成交的价格和数量逐笔计算手续费。分批成交、加仓、减仓及反手都会产生额外成交,仅统计已平仓交易数量会漏掉一部分费用。

至少保存三份结果:未计入模拟成本的毛结果、扣除手续费后的净结果,以及加入合理成交惩罚的压力测试。若策略只在第一份结果中有效,其优势十分脆弱。发布结果时应写清产品、费率适用日期和全部成本假设。

TensorParadigm 如何审视收益声明?

评价历史交易结果时,我们会先问实际成交了多少笔订单、每笔名义价值是多少、开平仓是否均计费,以及点差、滑点和资金费用如何处理。交易越频繁,小小的建模误差就越可能累积成显著差异。

本文使用的 0.12% 是明确标注的示例费率,并非币安的统一费率,也不能直接代表某位用户的实际收费。公开展示回测时,应将该回测自己的手续费假设与收益和最大回撤并列说明。

  • 核对账户当前适用的挂单和吃单费率
  • 统计实际成交及仓位周转,而非仅统计已完成交易
  • 明确区分回测假设与实盘账单
  • 费率或成交方式变化时,重新计算净结果

真正需要判断什么?

机器人自动运行,并不意味着交易成本低。只有在真实成本之后仍可能保留足够的毛优势,且风险可以接受,策略才值得进一步研究。

从每笔成交的名义价值和次数开始,扣除适用手续费,再分别考察点差、滑点和资金费用。如果回测没有说明这些假设,单看收益数字无法得出可靠结论。

10 / DUE DILIGENCE

相信净收益前要问的十个问题

  1. 费率是每次成交收取,还是每笔完整交易收取?
  2. 开仓和平仓都计费了吗?
  3. 费用是否按名义仓位而非保证金计算?
  4. 分批成交、加仓和减仓是否全部计入?
  5. 所用挂单与吃单费率对应哪种产品和账户等级?
  6. 限价单是否仅因价格触及就被假定成交?
  7. 点差或滑点是否与手续费分别计入?
  8. 永续仓位实际涉及的资金费用是否建模?
  9. 提高成本假设后,策略是否仍然有效?
  10. 毛收益、净收益及假设是否同时披露?
FAQ / DIRECT ANSWERS

常见问题

交易机器人每笔交易都要付手续费吗?

通常每笔实际成交的订单都会产生相应手续费。开仓和平仓是两笔不同成交,加仓与部分平仓也可能增加费用。

单次手续费为 0.12%,往返就是 0.12% 吗?

不是。如果开仓和平仓各收取 0.12%,且两侧名义价值相近,往返手续费约占初始名义价值的 0.24%,还未计其他成本。

杠杆仓位手续费按保证金还是仓位计算?

在本文的 USDT 本位合约示例中,手续费按成交名义价值计算。杠杆减少所需保证金,不会把 1,000 USDT 的成交变成 100 USDT。

限价单一定按挂单费率收费吗?

不一定。立即与现有订单成交的限价单可能是吃单;留在订单簿中的订单也可能始终无法成交。

扣除手续费后盈利的回测仍可能在实盘亏损吗?

可能。手续费模型无法证明历史成交、点差、滑点、资金费用及未来市场条件会与实盘一致。

资料来源与计算方法

本文查阅了交易所规则与 TradingView 文档,查阅日期为 2026 年 9 月 23 日。文中的 0.12% 和 100 笔交易数字只是演示计算,不是 TensorParadigm 的实测业绩,也不是交易所当前报价。

  1. TradingView 策略手续费与滑点设置
  2. 币安合约费用类型及名义价值公式
  3. 币安合约挂单与吃单费率结构
  4. 币安对挂单与吃单的说明
  5. TradingView Pine 策略模拟文档

示例费用计算并非收益预测。实际成本取决于交易所、产品、账户等级、成交方式及市场环境。交易存在风险。本文仅供学习,不构成投资建议。