Position sizing in crypto futures starts from the loss you accept, and leverage comes last. Position size = (account × risk per trade) ÷ stop distance. On a 2,000 USDT account risking 1% (20 USDT) with a 3% stop, the position is about 667 USDT of notional. Quantity = notional ÷ price, rounded to the coin's step; margin = notional ÷ leverage.
Those three lines are the calculation. The rest of this article is what each line hides: the three things people mean by "position size", the fees that sit inside every stop, Binance's rounding rules, what leverage changes and what it leaves alone, and how many positions an account can carry at once.
What is position size in crypto trading?
On a futures exchange, "position size" can mean three different numbers, and mixing them up is the most common sizing mistake.
- Notional, the position's value: quantity × price. Fees, funding and profit or loss are all proportional to it. Binance's minimum order rule is measured on it too: its API defines order notional as "price * quantity".
- Quantity, the number of coins or contracts. It is what you actually send in the order, and Binance rounds it to the symbol's step.
- Margin, the collateral that backs the position: notional ÷ leverage.
A 667 USDT position at 5x needs about 133 USDT of margin. Someone who says "my position is 133" and someone who says "my position is 667" may be describing the same trade. When a calculator, a bot or a signal says "size", check which of the three it means.
The position sizing formula, step by step
- Account. The balance you are sizing against. Here, 2,000 USDT.
- Risk per trade. The share you accept losing if the stop fills. At 1%, that is 20 USDT. Many traders keep this between 1% and 2%; the arithmetic works for any figure.
- Stop distance. How far the price moves from entry to your stop, as a percentage. Here, 3%.
- Notional = risk ÷ stop distance. 20 ÷ 0.03 = 666.67 USDT.
- Quantity = notional ÷ entry price, rounded down to the step. At an illustrative price of 2,500 and a step of 0.001, that is 0.2667, rounded to 0.266, a 665 USDT position that risks 19.95 USDT.
- Margin = notional ÷ leverage. At 5x, 133 USDT.
A short works the same way: the stop sits above the entry, and the distance is measured from entry to stop just as for a long.
Leverage appears only in the last step. Change it and only the margin changes; the size, the quantity and the loss at the stop stay where they were.
Our position size calculator runs these steps for any Binance coin, with the coin's real step and fees.
Put the fees inside the stop distance
A stop that fills is not the whole loss. You pay a fee to open and another to close, both on notional. At the regular taker rate of 0.05% each way, worked through in Binance futures fees explained, a market entry and a market stop cost 0.10% of the position.
So the real stop distance is the price stop plus the round-trip fee:
Notional = risk ÷ (stop distance + round-trip fees)
With a 3% stop: 20 ÷ 0.031 = 645 USDT, about 3% smaller than the fee-blind 667. On wide stops the difference is small. On tight ones it is not:
With a 0.5% stop, a sixth of every losing trade is commission. A stop-market order can also fill past its trigger in a fast move, so traders who scalp with tight stops usually add a slippage allowance on top.
Binance rounding and minimum order rules
Binance publishes each symbol's limits in GET /fapi/v1/exchangeInfo. Its API definitions set two that matter for sizing:
- LOT_SIZE: quantity must be at least
minQty, at mostmaxQty, and "(quantity-minQty) % stepSize == 0". A separate MARKET_LOT_SIZE applies the same rules to market orders. - MIN_NOTIONAL: the order's value must reach a minimum. For a market order, which has no price, Binance uses the mark price. Its refusal usually names 5 USDT (error -4164, covered in Binance futures error codes); read each symbol's own filter.
Rounding always goes down, or you risk more than you planned. On a cheap coin with a fine step, the difference is a cent. On a high-priced coin it can be large:
A 4.50 USDT risk with a 3% stop calls for 150 USDT of notional. At a price of 100,000 and a step of 0.001, the smallest quantity is worth 100 USDT and the next one 200, so the order rounds to 100: the trade risks 3.00, a third less than planned. Round up instead and it risks 6.00. Small accounts on expensive coins live with this, or skip those coins.
Position size vs leverage
The size comes from risk and stop. Leverage then decides two things: the margin locked up, and how far price can move before liquidation. Take the 665 USDT position from the worked example:
At 2x it ties up 332.50 USDT and survives about a 49.5% move on isolated margin; at 20x it ties up 33.25 and survives about 4.5% (with an illustrative 0.5% maintenance rate). The 3% stop fits under every one of them, but at 20x it sits close to liquidation, where a gap or a mark-price spike can get there first. What leverage to use on crypto signals works through choosing a leverage from the stop, and the liquidation calculator uses each coin's real brackets.
Margin mode matters too: on isolated margin the position can lose at most its margin, while on cross it can draw on the whole balance if the stop fails. Isolated vs cross margin works that through on a 1,000 USDT account.
Sizing when you or your bot set margin, not risk
Many bots, HafizeBot's included, ask for a margin per trade rather than a risk per trade. Then the position is margin × leverage, and the loss at the stop is:
Loss at stop = margin × leverage × stop distance
Invert it to get the margin that matches a risk you have chosen:
Margin = risk ÷ (leverage × stop distance)
For a 20 USDT risk with a 10% stop: 100 USDT of margin at 2x, 40 at 5x, 20 at 10x. Leave the margin at 100 and raise leverage to 5x, and the same stop now costs 50 USDT. That is how a margin-sized account takes more risk without anyone deciding to.
How many positions to hold at once
Risk per trade is only half the picture. Five positions at 1% each is 5% of the account at risk if every stop fills together, and crypto coins tend to fall together on a bad day.
Decide a ceiling for the total and let it set the number of positions: with 1% per trade and a 5% ceiling, that is five open positions at most. A position limit in your tools enforces it so that a busy hour of signals cannot stack up exposure. Add-ons to an existing position count against the same ceiling.
The ceiling also shows up as margin. Five of the 665 USDT positions at 5x lock up 665 USDT of the 2,000, leaving 1,335 free for fees, funding and the next trade. At 2x the same five would need 1,662.50; a sixth would leave about 5 USDT free, and a seventh would be refused for insufficient margin.
Losing streaks: why the risk per trade matters
Any strategy has losing runs. The risk per trade decides how deep a run digs:
After ten losses in a row at 1%, the account is at 90.4% and needs a 10.6% gain to get back. At 5% it is at 59.9% and needs 67%. At 10% it is at 34.9% and needs 187%. The arithmetic is (1 − risk)¹⁰, the same for any market. A smaller risk per trade is what lets an account survive the run and still be there for the recovery.
Common position sizing mistakes
- Sizing from leverage. "I trade 10x" says nothing about the loss. Start from risk and stop.
- Confusing margin with notional. A 100 USDT margin at 10x is a 1,000 USDT position, with fees and losses to match.
- Ignoring fees on tight stops, as the line chart above shows.
- Rounding up to clear a minimum and quietly risking more.
- Never re-sizing. Risk 1% of a balance that has halved and you are still betting the old balance's 1% unless you recompute.
- Moving the stop after sizing. A wider stop on the same quantity is a bigger risk. Re-size or keep the stop.
How HafizeBot sizes positions
HafizeBot's autotrader trades on the member's own Binance account, and the member sets the inputs:
/setPositionSize: the margin per trade, 5 to 50 USDT on Tier 1, up to 10,000 on Tier 2 and 50,000 on Tier 3. The position is that margin × your leverage./setLeverage: 1 to 20. Where a coin allows less, the bot uses the coin's maximum./setStopLoss: the price move from entry, 0 for none. What it costs is that move × your leverage as a share of the margin: 10% at 2x is 20% of it./setPositionLimit: how many coins the bot holds at once.
New accounts start at 5 USDT, 2x, 3 positions and a 10% stop, about 1 USDT lost per position if a stop fills, before fees (default settings). Tier 3 can size from the wallet instead, for example /setPositionSize 0.35%. To turn a risk you have chosen into a margin, use the formula above: margin = risk ÷ (leverage × stop).
The signals are AI-generated, built from 240+ indicators, formulas and components, and the live performance page counts every missed signal against the target-hit rate: September 2026 reads 97.7% of 4,220 signals. Sizing is what decides how a member's account rides the misses, and that part is yours.
Frequently asked questions
How do I calculate position size in crypto? Multiply your account by the share you are willing to lose, then divide by the stop distance: 2,000 × 1% ÷ 3% is about 667 USDT of notional. Divide by the entry price for the quantity, round it down to the coin's step, and divide the notional by your leverage for the margin.
What is position size in crypto trading? It is how big the trade is, measured as notional (quantity × price), as quantity (coins or contracts), or as margin (the collateral). Fees, funding and profit or loss scale with notional, so that is the one to size.
Does leverage change position size? Only if you size by margin. If you size from risk and stop, leverage changes the margin and the liquidation distance, while the position and its loss at the stop stay the same.
What is a good risk per trade in crypto futures? Many traders use 1% to 2% of the account. Ten losses in a row at 1% leave about 90% of the account; at 5%, about 60%, which then needs a 67% gain to recover.
How do fees affect position size? Opening and closing each cost a fee on notional, about 0.10% for a market round trip at regular taker rates. Add it to the stop distance before dividing, or a tight stop loses noticeably more than planned.
What is the minimum position size on Binance Futures? Each symbol has a minimum quantity and step, and a minimum order value in its exchangeInfo filters; the refusal for a too-small order usually names 5 USDT. On a high-priced coin the smallest quantity can be worth far more than that.
Summary and sources
Size from risk and stop, add fees to the stop, round the quantity down, then pick leverage for the margin and the liquidation room. Cap the total risk open at once. Sources: Binance's USDⓈ-M API definitions for symbol filters and its fee structure, plus arithmetic you can redo.
To trade signals with a size, leverage and stop you set, start 3 days of VIP Tier 1 free at hafizebot.com/trial or with /trial in @hafizebot; trial autotrading is capped at 10 USDT of margin per entry and 3 open positions. VIP is 50, 100 or 200 USDT a month. The free channel t.me/getbinancefutures posts the stronger signals (strength 3 and up) 20 minutes after VIP.
This is not investment advice; any position size can lose money, so trade only what you can afford to lose.