ArbTide

三角套利是什么?三个交易对的完整计算实例

三角套利在同一家交易所交易三个交易对,例如 USDT 换 BTC、BTC 换 ETH 再换回 USDT,从交叉汇率的错误定价中获利。附含手续费的计算实例。

更新于

三角套利(Triangular Arbitrage)是在同一家交易所上进行的一个由三笔交易组成的循环,起点和终点都是同一种货币,用来捕获某个交易对的价格与另外两个交易对所隐含的汇率之间的差距。一个常见的循环是 USDT 换 BTC、BTC 换 ETH,再把 ETH 换回 USDT。如果这三个价格之间存在细微的不一致,你最终拿到的 USDT 就会比一开始更多。

核心要点

  • 这个循环使用三个共享货币的交易对,例如 BTC/USDT、ETH/BTC 和 ETH/USDT。
  • 当交叉汇率(Cross Rate)与直接汇率不一致时,它就能发挥作用。
  • 整个过程不需要转账,所以没有网络延迟,也没有提现手续费。
  • 你需要为三条腿中的每一条都支付交易手续费,这通常决定了能否盈利。
  • 机会规模小、持续时间短,而且大多数都被自动化机器人抢先捕获了。

三角套利如何运作

在任何一家交易所,许多币种都会与不止一种计价货币进行交易。ETH 可能同时与 USDT 和 BTC 交易,而 BTC 又与 USDT 交易。这三个价格是相互关联的。如果 BTC 的价格是 $60,000,而一枚 ETH 的价格是 0.05 BTC,那么 ETH 的价格“应该”约为 60,000 × 0.05 = $3,000。这就是隐含交叉汇率(Implied Cross Rate)。

当 ETH/USDT 的直接市场偏离了这个隐含汇率时,一个经过全部三个交易对的循环就可能带来利润。每个市场都有自己的订单簿和自己的交易者,所以每当某个市场先动、其他市场还没跟上时,就会出现细微的不一致。

在计算一个循环时,要记住两条规则:

  • 当你买入时,你支付的是卖价(Ask,即最低的卖出报价)。
  • 当你卖出时,你得到的是买价(Bid,即最高的买入报价)。

使用中间价或最新成交价会高估利润,因为它忽略了三个交易对各自的买卖价差。

计算实例:USDT 换 BTC 换 ETH 再换回 USDT

假设某家交易所上的示例价格如下,每笔交易的吃单手续费为 0.1%,起始资金为 10,000 USDT:

交易对 你的交易方向 价格
BTC/USDT 按卖价买入 BTC 60,000
ETH/BTC 按卖价买入 ETH 0.05000
ETH/USDT 按买价卖出 ETH 3,012

隐含的 ETH 价格是 60,000 × 0.05 = $3,000,而直接市场上的买价是 $3,012。通过 BTC 买入 ETH 更便宜,所以这个循环先通过 BTC 买入 ETH,再在直接市场上卖出。

交易腿 计算 结果
1. 用 USDT 买入 BTC 10,000 ÷ 60,000 × 0.999 0.166500 BTC
2. 用 BTC 买入 ETH 0.166500 ÷ 0.05 × 0.999 3.326670 ETH
3. 把 ETH 卖成 USDT 3.326670 × 3,012 × 0.999 10,009.91 USDT

这个循环把 10,000 USDT 变成了 10,009.91 USDT,净利润为 $9.91,约合 0.10%。

如果不计手续费,同样的循环会得到 10,000 ÷ 60,000 ÷ 0.05 × 3,012 = 10,040 USDT,也就是 0.40% 的总优势。三笔各 0.1% 的手续费大约吃掉了 0.30%,相当于总优势的四分之三。如果错误定价只有 0.30% 或更少,这个循环就会亏钱。

通用公式

对于任何一个循环,把每条腿的兑换系数相乘即可:

结果 = 起始金额 × 汇率₁ × 汇率₂ × 汇率₃ ×(1 − 手续费率)³

  • 当你买入某个交易对的基础货币时,汇率为 1 ÷ 卖价。
  • 当你卖出基础货币时,汇率为买价。

在这个例子中:1 ÷ 60,000 × 1 ÷ 0.05 × 3,012 = 1.0040,而 1.0040 × 0.999³ ≈ 1.00099。在不计滑点的情况下,任何大于 1 的结果都意味着盈利。

每个循环也都可以反方向运行,例如 USDT 换 ETH、ETH 换 BTC 再换回 USDT。通常在同一时刻最多只有一个方向能够盈利,所以扫描器会同时检查两个方向。

为什么它比看起来更难

速度(Speed)。三笔交易是一笔接一笔完成的。如果在第 1 条腿和第 3 条腿之间价格发生了变化,优势就可能消失,让你手里握着自己并不想要的 BTC 或 ETH。在交易所服务器附近托管部署(Colocation)的自动化交易者,反应速度远远快于一个在三个下单界面之间来回点击的人。

深度(Depth)。最优买价或卖价上可能只挂着很少的数量。在这个例子中,如果 $3,012 的买价上只有 1 ETH,而下一档价位更低,那么卖出 3.33 ETH 就要承担滑点,而这可能会把 0.10% 的利润全部抹掉。

手续费(Fees)。三笔吃单手续费是一个沉重的负担。手续费等级更低、享有手续费折扣,或者在部分腿上以挂单方式使用限价单的交易者,拥有结构性的优势。下限价单可以降低手续费,但会增加某条腿无法成交的风险。一个粗略的规则是:总优势必须超过三倍的手续费率再加上预期滑点。在 0.1% 的手续费下,这大约是 0.3%;在假设的 0.02% 手续费下,则大约是 0.06%。

最小下单量与取整。交易所会按固定的步长对数量进行取整,并设定最低订单价值,这会留下少量零碎余额,也会让计算结果略有变化。

成本或风险 对循环的影响
三笔吃单手续费 从总优势中扣除约 3 × 手续费率
买卖价差 如果使用买价和卖价计算,已包含在内;如果使用中间价,则被忽略
滑点 随订单规模相对于订单簿深度的比例增大而增加
各条腿之间的延迟 在循环完成之前,价格可能已经变化
部分成交 让你手里留下一种中间货币

三角套利与跨交易所套利

三角套利始终在同一家交易所内进行。跨交易所套利则是在一个平台买入某个币种,再到另一个平台卖出。三角套利避免了转账,所有资金都放在同一个交易对手那里,但它需要三笔成交而不是两笔,而且找到的优势通常要小得多,因为在同一家交易所交易的机器人会让各个交易对的价格保持高度一致。

ArbTide 能帮你做什么

ArbTide 专注于跨交易所的价格和资金费率机会,你可以在套利扫描器上实时扫描这些机会。在下单之前,要估算一笔多腿交易的手续费拖累,请使用交易手续费计算器。

常见问题

加密货币中的三角套利是什么?
三角套利是在同一家交易所上进行的一连串三笔交易,起点和终点都是同一种货币,例如 USDT 换 BTC、BTC 换 ETH,再把 ETH 换回 USDT。当某个交易对的价格与另外两个交易对所隐含的汇率不一致时,它就能获利。
如何计算三角套利?
把三条腿的兑换比率相乘,买入时使用卖价,卖出时使用买价,然后再乘以每笔交易的(1 − 手续费率)。如果结果大于 1,这个循环最终拿回的就比投入的更多。
三角套利现在还能赚钱吗?
在大型交易所的主流交易对上,错误定价通常很小,而且转瞬即逝,因为自动化机器人会在几毫秒内完成交易。能在扣除手续费后仍然存在的机会往往很少、规模很小,或者出现在流动性较差的交易对上。
做三角套利需要转移资金吗?
不需要。三笔交易都在同一家交易所完成,所以没有提现,也不需要等待网络确认。主要风险是各条腿之间的价格变化、部分成交以及手续费。

相关指南