How to Calculate Position Size in Forex
The only question position sizing answers
Position sizing answers one question: given the amount I am willing to lose if this trade goes against me, and the distance between my entry and my stop, how many units am I allowed to hold? Everything else in trade planning sits downstream of that number.
It matters because stop distance is not a constant. The same EUR/USD setup with a 10-pip stop and the same setup with a 40-pip stop are not the same trade, and they must not be traded at the same size. Fixing the lot size first and then deciding where the stop goes inverts the logic: the size becomes random and the risk becomes whatever the market happens to do.
This guide walks through the calculation by hand so you can check the number your broker terminal gives you. If you would rather not do the arithmetic every time, the position size calculator on the home page does exactly the steps below.
The four inputs
- Risk budget — the money you accept losing on this one trade. Usually your account balance multiplied by a percentage (1% is the most common starting point), or a fixed cash amount.
- Stop distance in price terms — the absolute difference between your entry price and your stop-loss price, in the quotation units of the pair.
- Spread — you pay it the moment you open, so it is part of what you lose if the trade goes straight to the stop.
- Commission — also paid on the round turn, also part of the loss.
Points 3 and 4 are the ones most calculators leave out. They are not a rounding detail: on a tight stop with a live spread, they can move the answer by a double-digit percentage.
The formula
Two details are worth pausing on. The spread is added to the stop distance, not tracked separately, because it is loss you incur at entry. The commission is subtracted from the risk budget, because money spent on fees is money that can no longer be risked. Rounding goes down, never to nearest, because rounding up silently increases your risk.
Position value is then units x entry price x quote-to-account rate, and margin required is position value / leverage. Leverage decides how much margin you post. It does not decide how much you risk.
Worked example: EUR/USD
Assume a 10,000 USD account, risk of 1% per trade, buying EUR/USD at 1.1000 with a stop at 1.0980, a 1-pip spread, a 7 USD round-turn commission, and a broker that deals in 1,000-unit steps (0.01 lots).
| Input | Value |
|---|---|
| Account balance | 10,000.00 USD |
| Risk per trade | 1% = 100.00 USD |
| Entry price | 1.1000 |
| Stop-loss price | 1.0980 |
| Spread | 1 pip = 0.0001 |
| Commission (round turn) | 7.00 USD |
| Quote-to-account rate | 1.00 (USD account, USD quote) |
| Unit step | 1,000 units |
Step by step
- Risk budget: 10,000.00 x 1% = 100.00 USD.
- Stop distance: 1.1000 - 1.0980 = 0.0020, which is 20 pips.
- Effective stop distance: 0.0020 + 0.0001 = 0.0021.
- Budget left after commission: 100.00 - 7.00 = 93.00 USD.
- Units: 93.00 / 0.0021 = 44,285.71 units.
- Round down to the unit step: 44,285.71 / 1,000 = 44.28, floor to 44, so 44,000 units = 0.44 standard lots.
- Check the worst case: 44,000 x 0.0021 = 92.40, plus 7.00 commission = 99.40 USD. Inside the 100.00 budget.
| With spread and commission | Ignoring both | |
|---|---|---|
| Position size | 44,000 units (0.44 lots) | 50,000 units (0.50 lots) |
| Real loss at stop | 99.40 USD | 112.00 USD |
| Against a 100.00 budget | under by 0.60 | over by 12.00 (+12%) |
The shortcut version comes from the familiar 100.00 / 0.0020 = 50,000 units. It looks tidy and it is wrong, because the trade does not stop out at 0.0020 of movement; it stops out at 0.0020 of movement plus the pip you paid to get in, and you pay the commission either way. Run that arithmetic on every trade and your effective risk is not 1% per trade, it is 1.12% per trade, every single time.
When the quote currency is not your account currency
The formula only works if both sides are in the same currency. If they are not, you need a conversion rate, which is the quote-to-account rate field in the calculator.
Take USD/JPY with a USD-denominated account. Prices are quoted in JPY, so a stop distance measured on the chart is a JPY amount. To turn it into USD you divide by the USD/JPY rate: at a rate of 150.00, one JPY is worth 1 / 150.00 = 0.006667 USD. Multiply your JPY stop distance by that number and the rest of the formula is unchanged.
The clean way to check yourself: compute the loss in the quote currency first, then convert the loss once. If converting twice gives a different answer, one of the two conversions is inverted.
Mistakes that survive years of trading
- Sizing from leverage. Leverage tells you the largest position your margin allows, which is a broker risk limit, not your risk limit. The two numbers rarely coincide and the smaller one is the one to use.
- Widening the stop after sizing. Size is derived from stop distance. Move the stop further away and the correct size shrinks. Keeping the old size means risking more than your percentage.
- Ignoring commission on short timeframes. The tighter your stop, the larger the share of the budget that fees consume. On a 5-pip stop with a 7 USD commission on a 100 USD budget, 7% of the budget is gone before the trade starts.
- One fixed lot size for every pair. A 20-pip stop on EUR/USD and a 20-pip stop on a JPY cross are different amounts of account risk. The lot size should come out of the calculation, not out of habit.
- Not re-checking after rounding. Rounding down is safe, but it also means the printed risk is no longer exact. Recompute the loss from the rounded size, which is what the Max loss incl. costs field does.
Do it once by hand, then automate it
Work through the seven steps above on your next trade with a calculator app open. Once the number matches what your platform shows, you will have confirmed both your contract specification and your understanding of it. After that, let a tool do it: enter balance, risk, entry, stop, spread and commission, and read the size.