单笔风险:如何计算仓位大小
由单笔风险推出仓位大小的公式,USDT 永续合约和 MT5 手数的示例,以及我的五笔交易:止损时的风险与实际结果的对比。

单笔风险,就是止损被触发时你会亏掉的金额。仓位大小由它推出:用以金额计的风险除以入场价到止损价的距离。下面是公式、USDT 永续合约和 MetaTrader 5 手数的示例,以及我在 Binance 上的五笔交易。其中一笔的亏损比止损所对应的金额多出了 81%。
什么是单笔风险?
单笔风险是你准备在一笔交易中亏掉的账户比例。换成金额,这个数就叫 1R,R 代表风险(risk)。最常被引用的经验法则是 1% 法则和 2% 法则:一笔交易亏损永远不超过账户的 1% 或 2%。
风险不等于仓位大小。用 10,000 USDT 账户的 1% 冒险,意味着止损被打到时最多亏 100 USDT。仓位本身可以价值 5,000 USDT 甚至更多;具体多少,取决于止损放在哪里。
有些交易者按当前余额的固定比例冒险,有些按固定金额。按固定比例,亏损之后风险会变小,盈利之后会变大:10,000 USDT 的账户回撤 10% 到 9,000 之后,1% 就是 90 USDT。固定金额更容易跟踪,但在回撤期间不会让你放慢脚步。
仓位大小公式
先决定拿账户的多少去冒险。然后把止损放在交易思路失效的地方。入场到止损的距离,就是每单位资产(比如每个比特币)的亏损。用前者除以后者。
风险($)= 账户余额 × 单笔风险(%)
仓位大小 = 风险($)÷ |入场价 − 止损价|绝对值让公式两个方向都适用。做多时止损在入场价下方;做空时在上方。BTCUSDT 在 62,500 做空、止损 63,750,距离同样是 1,250,仓位也和下面的做多一样。
顺序很重要。如果先选好仓位,再让止损去迁就它,每笔交易承担的风险就成了随机数。
示例:带杠杆的 USDT 永续合约
账户 10,000 USDT,单笔风险 1%。你在 62,500 买入 BTCUSDT,止损 61,250。止损距离为每个比特币 1,250 USDT:入场价的 2%。
- 风险:10,000 × 1% = 100 USDT。
- 仓位大小:100 ÷ 1,250 = 0.08 BTC。
- 仓位价值:0.08 × 62,500 = 5,000 USDT。
- 检查:止损时亏损 0.08 × 1,250 = 100 USDT。
在 Binance 和 Bybit 上,USDT 永续合约的仓位以币数计,步长 0.001 BTC。在 OKX 上则以合约张数计。一张 BTC-USDT-SWAP 合约是 0.01 BTC,所以 0.08 BTC 就是 8 张。有零头的仓位要按步长向下取整,这样风险才不会超出计划。
手续费另算。基础吃单费率在 Binance 和 OKX 是 0.05%,在 Bybit 是 0.055%。入场和出场都按 0.05% 计,还要再加 4.95 USDT:入场 2.50,在止损处出场 2.45。仓位计算器会用你的数字做同样的计算:它会显示含手续费的亏损,以及把手续费也控制在风险以内的仓位大小。
杠杆会改变你的风险吗?
杠杆决定交易所为这个仓位锁定多少保证金。这个初始保证金 = 仓位价值 ÷ 杠杆。盈亏的计算方式不同:仓位大小 × 价格变动。这个公式里没有杠杆。
| 杠杆 | 保证金 | 止损时的亏损 |
|---|---|---|
| 5x | 1,000 USDT | 100 USDT |
| 10x | 500 USDT | 100 USDT |
| 20x | 250 USDT | 100 USDT |
高杠杆不会让亏损变大,它只是腾出了资金。真正让杠杆抬高风险的,是那种想开出比计算结果更大仓位的诱惑。
所以别被交易界面上的百分比吓到。下文我的 #136 交易,在日志里显示为 −23.98%。这是占保证金的百分比:一个 37,780 USDT、5 倍杠杆的仓位,占用了 7,556 USDT 保证金。无论用多少倍杠杆,账户都亏了 1,812 USDT。
在全仓模式下,整个账户余额都为这个仓位担保。强平离得更远,但账户里所有的钱都押上了。
外汇示例:MetaTrader 5 中的手数
外汇的仓位以手计。一手包含多少单位货币,写在品种规格的“合约大小”字段里。EURUSD 通常是 100,000 欧元。在 MetaTrader 5 中,可以从“市场报价”窗口打开规格:右键点击品种,选择“规格”。
价格变动以 pip 计。对大多数货币对,1 pip 是第四位小数,即 0.0001;对日元货币对,是第二位小数,即 0.01。MetaTrader 5 按 (平仓价 − 开仓价) × 合约大小 × 手数 计算外汇盈利。所以 EURUSD 一手的 1 pip 价值 100,000 × 0.0001 = $10。
手数 = 风险($)÷ (以 pip 计的止损 × 每手的 pip 价值)账户 $10,000,风险 1%,也就是 $100。你在 1.0850 买入 EURUSD,止损 1.0820,距离 30 pip。一手在止损时亏损 30 × $10 = $300。手数:100 ÷ 300 = 0.333,按交易量步长向下取整:0.33。取整后的风险是 $99。
这里同样,杠杆只改变保证金。MetaTrader 5 的帮助给出的外汇保证金公式是:手数 × 合约大小 ÷ 杠杆:1:100 时 330 欧元,1:500 时 66 欧元。如果账户货币和报价货币不同,就按当前汇率换算 pip 价值。USDJPY 一手的 1 pip 价值 1,000 日元;按 150 计算是 $6.67,40 pip 的止损对应 0.37 手。MT5 手数计算器能完成这一切,包括黄金和其他账户货币。
我的交易:计划风险与实际亏损
公式承诺,止损时你正好亏掉 1R。实际上结果并不一样。下面是我公开日志中的五笔已平仓交易,Binance U 本位(USDT-M)合约,2026 年 8 月 28 日至 9 月 5 日。这里的 1R 是按平仓时的止损计算的止损亏损。结果包含手续费和资金费。
它们说明了三件事。
止损不是亏损的上限。#136 是一笔 BTRUSDT 做多。我在 8 月 28 日 13:56 UTC 以 0.1644271 入场,229,766 个币,仓位 37,780 USDT。止损在 0.16007 附近,低于入场价 2.65%:止损时我会亏 1,001 USDT。15:38 UTC 价格急跌,仓位以均价 0.1567024 平仓,比止损价低 2.10%。按价格计算亏了 1,775 USDT,另加 36.89 的手续费。结果:−1,812 USDT,即 −1.81R。
#2011 的差距小一些。−3,040 USDT 的止损,成交价越过止损价 0.36%,手续费和资金费又加了 142.78 USDT。结果:−3,518 USDT,即 −1.16R。止损市价单一旦触发,就以订单簿里的最优价格成交,而在快速行情中,这个价格可能离止损很远。在订单簿很薄的币上,留出余量是合理的:把 1R 定得比你准备亏的更低一些。
以金额计的 1R 相差三倍。在 8 月 28 日到 9 月 4 日之间开的交易里,1R 从 1,001 到 3,040 USDT 不等。如果风险是账户的固定比例,1R 只会随余额变动。一周之内相差三倍,说明风险是一笔一笔临时定的。以 R 计的结果把这些交易放到同一个尺度上:它显示每笔交易相对自己的计划代价多大。
没有止损的交易没有 1R。#1138 平仓时没有止损。它的最差点是 −5,494 USDT,是五笔中最大 1R 的 1.81 倍。它最后盈利平仓,+4,149 USDT,但它承担的风险比任何一笔有止损的交易都大。如何衡量这样的最差点,见 MAE 和 MFE 指南。
这些交易的手续费和资金费在 0.01R 到 0.05R 之间。和 #136 的滑点相比,这是小钱。但它们每笔交易都有,盈利的也不例外。

单笔风险该定多少?用数字看连亏
亏损会扎堆出现,即使是赚钱的系统也一样。假设各笔交易相互独立,一半是盈利的。那么在 100 笔交易里,出现 6 连亏或更长的概率约为 55%,8 连亏或更长约为 17%。如果每 10 笔赢 4 笔,100 笔交易里出现 8 连亏或更长,几乎每两次就有一次:49%。
如果你总是用当前余额的同一比例去冒险,一段连亏会让账户损失多少:
| 单笔风险 | 连亏 5 笔 | 连亏 10 笔 | 连亏 20 笔 |
|---|---|---|---|
| 0.5% | −2.5% | −4.9% | −9.5% |
| 1% | −4.9% | −9.6% | −18.2% |
| 2% | −9.6% | −18.3% | −33.2% |
| 5% | −22.6% | −40.1% | −64.2% |
| 10% | −41.0% | −65.1% | −87.8% |
亏掉容易,赚回来难。回撤 20% 之后,你需要赚 25%;回撤 50% 之后,需要赚 100%。单笔风险 1% 时,要连亏 69 笔账户才会腰斩;单笔风险 10% 时,只要 7 笔。
把你自己的胜率、止损、目标和手续费填进风险回报比计算器。它会显示盈亏平衡胜率、以 R 计的每笔期望值,以及 100 笔交易中应当预期的连亏次数。
常见问题
单笔交易应该拿账户的多少去冒险?
没有唯一正确的数字。最常被引用的是 1% 和 2% 法则。在上面的表格里找到你的百分比,然后诚实地回答:你能不能扛过连亏 10 笔。这不是投资建议。
什么是 1% 法则?
一笔交易亏损永远不超过账户的 1%。这是关于风险的规则,不是关于仓位大小的:账户 10,000 USDT、止损 2% 时,仓位可以价值 5,000 USDT。
手续费应该算进风险吗?
如果你的风险指的是止损时的全部亏损,就应该。这时用风险除以止损距离加上入场和出场的手续费。在 BTCUSDT 的例子中,仓位就变成 0.076 BTC,而不是 0.08。
止损的成交价比止损价差怎么办?
记录以 R 计的实际结果,而不是计划的结果。如果经常发生,就在订单簿很薄的币上减小仓位,或者给止损留出余量。在交易日志里,这类交易会表现为亏损超过 −1R。
下一笔交易之前
- 按止损定仓位。先定止损和以金额计的风险,再定仓位大小。杠杆最后定,而且要低到让强平远在止损之外。
- 给滑点留出余量。尤其是在订单簿很薄的币上:我那个 −1R 的止损,最后亏了 −1.81R。
- 每个结果都以 R 记录。只有这样才能看出你的实际亏损是否符合计划。免费的交易日志模板会替你算 R。
资料来源
- Bybit: P&L Calculations (USDT Perpetual and Expiry Contracts):线性合约的盈亏 = 数量 × 价格变动;杠杆不会放大它。
- Binance: How to Calculate Profit and Loss for Futures Contracts:U 本位(USDⓈ-M)合约的仓位以币数计;盈亏公式;初始保证金率 = 1 ÷ 杠杆。
- Binance: Leverage and Margin of USDⓈ-M Futures:维持保证金和强平。
- Binance: Binance Futures Fee Structure & Fee Calculations:普通用户吃单 0.05%,挂单 0.02%。
- Bybit: Trading Fee Structure:VIP 0 的永续合约吃单费率 0.055%。
- OKX: What is OKX perpetual futures:最低费率档挂单 0.02%,吃单 0.05%。
- Binance: Types of Order on Binance Futures:触发后的止损市价单以可得的最优价格成交。
- OKX API: BTC-USDT-SWAP instrument:合约面值 0.01 BTC。
- MetaTrader 5 帮助:市场观察:品种规格、合约大小和交易量增量。
- MetaTrader 5 帮助:保证金计算(现货外汇、期货):保证金 = 手数 × 合约大小 ÷ 杠杆。
- MQL5 Reference: Symbol Properties:外汇盈利 = (平仓价 − 开仓价) × 合约大小 × 手数。
- IG: Pip definition:1 pip 是 0.0001,日元货币对是 0.01。
- CMC Markets: Lot Size in Forex:标准手、迷你手和微型手及其 pip 价值。
- Van Tharp Institute: A Short Lesson on R and R-Multiples:R 是止损确定的初始风险。
- 我的公开日志:#104、#136、#897、#1138 和 #2011 交易——入场和出场、平仓时的止损、手续费、资金费、最差点。
这些交易的数字取自它们的公开页面,时间是 2026 年 10 月 8 日。公开的交易页面不显示止损何时设置或移动,所以 1R 是按平仓时的止损计算的。


