费鉴gaterar.com
简繁
合约 · 约 10 分钟读完

合约盈亏怎么算?收益率 ROE 与盈亏平衡价计算

U 本位合约做多盈亏 =(平仓价 − 开仓价)× 数量,收益率 ROE = 盈亏 ÷ 初始保证金。BTC 80,000 开 10 倍多单涨到 84,000,盈亏 500 USDT、ROE 50%,扣掉吃单手续费约剩 489.75 USDT,盈亏平衡价约 80,080。

本文要点

  1. U 本位合约做多盈亏 =(平仓价 − 开仓价)× 数量,做空盈亏 =(开仓价 − 平仓价)× 数量,与杠杆倍数无关。
  2. 收益率 ROE = 盈亏 ÷ 初始保证金,初始保证金 = 仓位价值 ÷ 杠杆,所以同样的价格波动,杠杆越高 ROE 的涨跌幅越大。
  3. 以吃单费率 0.05% 开平仓,做多的盈亏平衡价约为开仓价 ×(1 + 0.05%)÷(1 − 0.05%),BTC 80,000 开仓时约为 80,080。
  4. 交易所持仓页的未实现盈亏按标记价格计算,实际落袋的已实现盈亏则按成交价计算,并且要扣除手续费与资金费。

U 本位合约的盈亏算法很简单:做多盈亏 =(平仓价 − 开仓价)× 数量,做空盈亏 =(开仓价 − 平仓价)× 数量;收益率 ROE 则是盈亏除以初始保证金。真正容易被忽略的,是手续费和资金费会把盈亏平衡点往不利方向推一点。

合约盈亏怎么算?开仓价和平仓价怎么代入?

以 USDT 本位线性合约为例:

做多盈亏 =(平仓价 − 开仓价)× 数量

做空盈亏 =(开仓价 − 平仓价)× 数量

这里的「数量」是币的数量,例如 0.125 BTC。公式里没有杠杆,因为杠杆不会改变每单位的盈亏,只会改变你开同样大小的仓位需要放多少保证金。

做多例子:BTC 在 80,000 开 0.125 BTC 多单(仓位价值 10,000 USDT),在 84,000 平仓:

  • 盈亏 =(84,000 − 80,000)× 0.125 = 500 USDT

做空例子:同样 0.125 BTC,在 80,000 开空、76,000 平仓:

  • 盈亏 =(80,000 − 76,000)× 0.125 = 500 USDT

价格朝反方向走时公式算出来就是负数。例如多单在 78,000 平仓,盈亏 =(78,000 − 80,000)× 0.125 = −250 USDT。

欧易的永续合约以「张」为单位,BTC-USDT-SWAP 每张是 0.01 BTC,算盈亏前先把张数换成币数:12 张 = 12 × 0.01 = 0.12 BTC。币本位合约的盈亏以币计价、算法不同,见 U本位和币本位合约的区别。

合约收益率怎么算?ROE 是什么?

ROE(Return on Equity)在合约里一般指 以初始保证金计算的收益率:

初始保证金 = 仓位价值 ÷ 杠杆

ROE = 盈亏 ÷ 初始保证金

继续用上面的多单:仓位价值 10,000 USDT,开 10 倍杠杆,初始保证金 = 10,000 ÷ 10 = 1,000 USDT。

  • 涨到 84,000:ROE = 500 ÷ 1,000 = 50%
  • 跌到 78,000:ROE = −250 ÷ 1,000 = −25%

价格只涨了 5%(4,000 ÷ 80,000),ROE 却是 50%,正好是 5% × 10 倍。所以可以记一个简化关系:ROE ≈ 价格涨跌幅 × 杠杆(未计手续费)。

欧易的例子:12 张 BTC-USDT-SWAP(0.12 BTC)在 80,000 开多、5 倍杠杆,仓位价值 = 0.12 × 80,000 = 9,600 USDT,初始保证金 = 9,600 ÷ 5 = 1,920 USDT。在 82,000 平仓,盈亏 = 2,000 × 0.12 = 240 USDT,ROE = 240 ÷ 1,920 = 12.5%。

部分平仓的盈亏怎么算?

分批平仓时,每一批都按「平掉的数量」单独计算,没平掉的部分仍以原开仓价计算浮动盈亏。继续用 0.125 BTC、开仓价 80,000 的多单:

  1. 在 82,000 先平一半 0.0625 BTC:已实现盈亏 =(82,000 − 80,000)× 0.0625 = 125 USDT
  2. 这一批的平仓手续费 = 82,000 × 0.0625 × 0.05% ≈ 2.56 USDT,扣费后约 122.44 USDT
  3. 剩下的 0.0625 BTC 开仓价仍是 80,000,之后在 84,000 平仓,再实现(84,000 − 80,000)× 0.0625 = 250 USDT

两批合计价差盈利 375 USDT,比一次在 84,000 全平的 500 USDT 少,但先落袋了一部分。分批止盈的做法见 合约止盈止损怎么设置。

杠杆越高,收益率越高吗?

杠杆放大的是 ROE,而且是双向放大。下表以 1,000 USDT 保证金、BTC 开仓价 80,000、吃单开平仓(各 0.05%)计算,价格上涨 2% 到 81,600 或下跌 2% 到 78,400:

杠杆 仓位数量 涨 2% 盈亏 手续费合计 涨 2% 扣费后 ROE 跌 2% ROE(未计费)
3 倍 0.0375 BTC 60 USDT 3.03 USDT 5.70% −6%
5 倍 0.0625 BTC 100 USDT 5.05 USDT 9.50% −10%
10 倍 0.125 BTC 200 USDT 10.10 USDT 18.99% −20%
20 倍 0.25 BTC 400 USDT 20.20 USDT 37.98% −40%

以 10 倍为例:手续费 = 开仓 10,000 × 0.05% + 平仓 0.125 × 81,600 × 0.05% = 5 + 5.1 = 10.1 USDT,扣费后 200 − 10.1 = 189.9 USDT,ROE = 189.9 ÷ 1,000 = 18.99%。

同样的保证金,杠杆越高,仓位越大,盈亏和手续费都按倍数放大;而且强平距离也会跟着缩短,20 倍做多约下跌 4.6% 就会被强平。高 ROE 的另一面是更快的亏损,杠杆怎么选见 合约开几倍杠杆合适。

算上手续费,合约实际赚了多少?

合约手续费按仓位价值收取,开仓、平仓各收一次。币安 U 本位合约与欧易永续合约的一般用户标准费率是挂单 0.02%、吃单 0.05%。把前面 BTC 80,000 → 84,000 的多单用吃单进出完整算一次:

  1. 开仓手续费 = 10,000 × 0.05% = 5 USDT
  2. 平仓时仓位价值 = 84,000 × 0.125 = 10,500 USDT,平仓手续费 = 10,500 × 0.05% = 5.25 USDT
  3. 净盈亏 = 500 − 5 − 5.25 = 489.75 USDT
  4. 扣费后 ROE = 489.75 ÷ 1,000 = 48.98%(约)

亏损的单子手续费同样要付。多单在 78,000 平仓:平仓手续费 = 9,750 × 0.05% = 4.875 USDT,总亏损 = 250 + 5 + 4.875 = 259.875 USDT,比单看价格多亏了约 10 USDT。

持仓跨过资金费结算时刻,还会收到或支付资金费,见 资金费率是什么。手续费的完整算法见 合约手续费怎么算,也可以直接用 手续费计算器 试算。

合约盈亏平衡价怎么算?

盈亏平衡价是「扣掉开平仓手续费后刚好不赚不亏」的平仓价。设费率为 f,开平仓都用同一费率:

做多盈亏平衡价 ≈ 开仓价 ×(1 + f)÷(1 − f)

做空盈亏平衡价 ≈ 开仓价 ×(1 − f)÷(1 + f)

BTC 开仓价 80,000 时:

方向 开平仓方式 计算 盈亏平衡价 需要的价格变动
做多 吃单 0.05% 80,000 × 1.0005 ÷ 0.9995 约 80,080.04 上涨约 0.10%
做多 挂单 0.02% 80,000 × 1.0002 ÷ 0.9998 约 80,032.01 上涨约 0.04%
做空 吃单 0.05% 80,000 × 0.9995 ÷ 1.0005 约 79,920.04 下跌约 0.10%

验算做多吃单:在 80,080.04 平仓,价差盈利 = 80.04 × 0.125 ≈ 10.005 USDT;手续费 = 5 + 80,080.04 × 0.125 × 0.05% ≈ 5 + 5.005 = 10.005 USDT,正好打平。

这个门槛和杠杆无关:不论几倍,价格都要先移动约 0.1% 才开始真正赚钱。频繁短线进出的人,这 0.1% 会反复出现。用挂单可以把门槛降到约 0.04%,挂单与吃单的差别见 挂单与吃单的区别。

资金费会怎么影响合约盈亏和平衡价?

永续合约每隔一段时间结算一次资金费,持仓方向付费时,这笔钱会直接减少你的盈亏。它和手续费不同:手续费只在开平仓时各收一次,资金费则是持仓越久累积越多。

继续用 BTC 80,000 开 0.125 BTC 多单、在 84,000 平仓的例子,假设持仓 3 天、资金费率一直是每 8 小时 0.01%,并以仓位价值约 10,000 USDT 粗略估算:

  1. 每次资金费 = 10,000 × 0.01% = 1 USDT
  2. 3 天共结算 3 × 3 = 9 次,合计约 9 USDT
  3. 净盈亏 = 489.75 − 9 = 480.75 USDT,ROE 约为 480.75 ÷ 1,000 ≈ 48.08%

如果把这 9 USDT 也算进盈亏平衡价,做多时要满足:(P − 80,000)× 0.125 − 5 − P × 0.125 × 0.05% − 9 = 0,整理后 P = 10,014 ÷(0.125 × 0.9995)≈ 80,152,比只算手续费的 80,080 又高了约 72。

资金费率并不固定,行情火热时可能高出好几倍,也可能转为负值让多单收钱。持仓前可以先看 资金费率雷达,相关术语也可以在 术语表 查到。

未实现盈亏和已实现盈亏有什么区别?

  • 未实现盈亏:持仓期间显示的浮动盈亏。币安与欧易都以 标记价格 计算未实现盈亏,所以它可能和你看到的最新成交价算出来的数字略有差别,原因见 标记价格是什么。
  • 已实现盈亏:平仓(或部分平仓)后按实际成交价结算的盈亏,交易所通常会把手续费、资金费分别记录在资金流水里。

所以平仓时用市价单,成交价可能因滑点比你看到的价格差一点,已实现盈亏也会跟着变。具体的显示口径,以交易所页面为准。

计算合约盈亏时常见的误区

  • 把保证金当成仓位:1,000 USDT 开 10 倍,仓位是 10,000 USDT,盈亏和手续费都按 10,000 USDT 算。
  • 只看 ROE 不看金额:ROE 100% 听起来很多,但如果只放了 50 USDT 保证金,赚的也只是 50 USDT;反过来,高 ROE 往往意味着高杠杆。
  • 全仓模式下误读 ROE:全仓的 ROE 通常仍以「仓位价值 ÷ 杠杆」作为分母,而实际承担亏损的是整个全仓余额,ROE 不能代表账户的真实风险,见 全仓和逐仓的区别。
  • 忽略强平:ROE 跌到 −100% 之前就会先被强平,因为要保留维持保证金。保证金的风险怎么看,见 保证金率怎么看;强平价可以用 强平价格计算器 先算好。

合约盈亏的计算并不复杂,难的是控制亏损。开仓前先算好止损位置和可能的亏损金额,再决定仓位大小,设置方法见 合约止盈止损怎么设置。合约交易使用杠杆,亏损可能超过预期,请只用能承受损失的资金参与。

开户

在币安、欧易开户

币安 Binance

邀请码 BN6691

注册币安
欧易 OKX

邀请码 OK6667

注册欧易

注册前请确认你所在地区可以合法使用该交易所。

参考资料

  1. 币安|交易手续费率(Fee Schedule)
  2. 欧易|手续费率

常见问题

合约收益率怎么算?

收益率 ROE = 盈亏 ÷ 初始保证金,初始保证金 = 仓位价值 ÷ 杠杆。1,000 USDT 保证金开 10 倍多单赚 500 USDT,ROE 就是 50%。

合约盈亏和杠杆有关吗?

盈亏金额只取决于开仓价、平仓价和仓位数量,杠杆不直接改变它。杠杆改变的是需要投入多少保证金,所以会放大 ROE,而不是放大每单位的盈亏。

合约盈亏平衡价怎么算?

以吃单开平仓、费率 0.05% 为例,做多的盈亏平衡价约为开仓价 × 1.0005 ÷ 0.9995,做空约为开仓价 × 0.9995 ÷ 1.0005。BTC 80,000 开多时约为 80,080,价格要涨约 0.1% 才打平手续费。

为什么平仓后的盈亏和持仓时看到的不一样?

持仓页的未实现盈亏按标记价格计算且未扣平仓手续费,平仓后的已实现盈亏按实际成交价计算,并会扣除手续费,持仓期间的资金费也会另外记账。

看到不懂的名词?查 合约术语表。

→延伸阅读
  1. 01合约ADL 自动减仓是什么?为什么盈利仓位会被减仓ADL 自动减仓是强平单无法在破产价之前成交、且保险基金不足时,交易所按盈利与杠杆排序,强制减少对手方盈利仓位的机制。以 4 个 BTC 空单为例说明排队顺序、指示灯怎么看、被 ADL 是否亏钱与对冲仓位被打乱的风险。
  2. 02合约全仓和逐仓的区别是什么?合约保证金模式怎么选逐仓只用分配给该仓位的保证金承担风险,全仓用整个合约账户余额支撑所有仓位。用 BTC 80,000、10 倍做多的实例对比两者的强平价与最大亏损,并说明逐仓还是全仓更适合你。
  3. 03合约单向持仓和双向持仓有什么区别?对冲模式怎么用单向持仓把同一合约的多空合并成一个净仓位;双向持仓(对冲模式)可同时持有多单与空单。以 BTC 80,000 同时开 0.1 BTC 多空、88,000 平仓为例,吃单手续费合计 16.8 USDT,资金费在同一交易所基本互相抵消。
  4. 04合约合约开几倍杠杆合适?杠杆、强平距离与手续费的关系杠杆越高,强平距离越近:BTC 80,000 做多时,10 倍约跌 9.6% 强平,20 倍约跌 4.6%,100 倍只要 0.6%。用实例说明杠杆如何影响强平价、手续费与资金费,以及先定止损再定杠杆的方法。