合约盈亏怎么算?收益率 ROE 与盈亏平衡价计算
U 本位合约做多盈亏 =(平仓价 − 开仓价)× 数量,收益率 ROE = 盈亏 ÷ 初始保证金。BTC 80,000 开 10 倍多单涨到 84,000,盈亏 500 USDT、ROE 50%,扣掉吃单手续费约剩 489.75 USDT,盈亏平衡价约 80,080。
本文要点
- U 本位合约做多盈亏 =(平仓价 − 开仓价)× 数量,做空盈亏 =(开仓价 − 平仓价)× 数量,与杠杆倍数无关。
- 收益率 ROE = 盈亏 ÷ 初始保证金,初始保证金 = 仓位价值 ÷ 杠杆,所以同样的价格波动,杠杆越高 ROE 的涨跌幅越大。
- 以吃单费率 0.05% 开平仓,做多的盈亏平衡价约为开仓价 ×(1 + 0.05%)÷(1 − 0.05%),BTC 80,000 开仓时约为 80,080。
- 交易所持仓页的未实现盈亏按标记价格计算,实际落袋的已实现盈亏则按成交价计算,并且要扣除手续费与资金费。
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 的多单:
- 在 82,000 先平一半 0.0625 BTC:已实现盈亏 =(82,000 − 80,000)× 0.0625 = 125 USDT
- 这一批的平仓手续费 = 82,000 × 0.0625 × 0.05% ≈ 2.56 USDT,扣费后约 122.44 USDT
- 剩下的 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 的多单用吃单进出完整算一次:
- 开仓手续费 = 10,000 × 0.05% = 5 USDT
- 平仓时仓位价值 = 84,000 × 0.125 = 10,500 USDT,平仓手续费 = 10,500 × 0.05% = 5.25 USDT
- 净盈亏 = 500 − 5 − 5.25 = 489.75 USDT
- 扣费后 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 粗略估算:
- 每次资金费 = 10,000 × 0.01% = 1 USDT
- 3 天共结算 3 × 3 = 9 次,合计约 9 USDT
- 净盈亏 = 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% 之前就会先被强平,因为要保留维持保证金。保证金的风险怎么看,见 保证金率怎么看;强平价可以用 强平价格计算器 先算好。
合约盈亏的计算并不复杂,难的是控制亏损。开仓前先算好止损位置和可能的亏损金额,再决定仓位大小,设置方法见 合约止盈止损怎么设置。合约交易使用杠杆,亏损可能超过预期,请只用能承受损失的资金参与。
开户
在币安、欧易开户
注册前请确认你所在地区可以合法使用该交易所。
参考资料
常见问题
合约收益率怎么算?
收益率 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% 才打平手续费。
为什么平仓后的盈亏和持仓时看到的不一样?
持仓页的未实现盈亏按标记价格计算且未扣平仓手续费,平仓后的已实现盈亏按实际成交价计算,并会扣除手续费,持仓期间的资金费也会另外记账。
看到不懂的名词?查 合约术语表。
- 01合约ADL 自动减仓是什么?为什么盈利仓位会被减仓ADL 自动减仓是强平单无法在破产价之前成交、且保险基金不足时,交易所按盈利与杠杆排序,强制减少对手方盈利仓位的机制。以 4 个 BTC 空单为例说明排队顺序、指示灯怎么看、被 ADL 是否亏钱与对冲仓位被打乱的风险。
- 02合约全仓和逐仓的区别是什么?合约保证金模式怎么选逐仓只用分配给该仓位的保证金承担风险,全仓用整个合约账户余额支撑所有仓位。用 BTC 80,000、10 倍做多的实例对比两者的强平价与最大亏损,并说明逐仓还是全仓更适合你。
- 03合约单向持仓和双向持仓有什么区别?对冲模式怎么用单向持仓把同一合约的多空合并成一个净仓位;双向持仓(对冲模式)可同时持有多单与空单。以 BTC 80,000 同时开 0.1 BTC 多空、88,000 平仓为例,吃单手续费合计 16.8 USDT,资金费在同一交易所基本互相抵消。
- 04合约合约开几倍杠杆合适?杠杆、强平距离与手续费的关系杠杆越高,强平距离越近:BTC 80,000 做多时,10 倍约跌 9.6% 强平,20 倍约跌 4.6%,100 倍只要 0.6%。用实例说明杠杆如何影响强平价、手续费与资金费,以及先定止损再定杠杆的方法。