The problem: the math is one division, the discipline is everything else
Position sizing is the calculation that decides whether a trading strategy survives a losing streak or blows up on it. The math is one division. Take the dollar amount you are willing to risk on a trade. Divide it by the per-unit distance from your entry to your stop. The result is the number of units to trade.
If you are willing to risk $200 on a stock where your stop is $5 below your entry, you buy 40 shares. If the stock hits your stop, you lose $200. If it does not, you hold 40 shares of a position you sized to your risk. That is the entire formula.
The discipline is the part that fails, because the formula forces you to decide two things before you enter: how much money you are willing to lose, and where your stop is. Most retail traders invert the order. They pick a position size first (usually a round number of shares or a round dollar amount), then they look for a stop that fits that size, then they get stopped out because the stop was placed to fit the size rather than to be where the trade idea is actually wrong.
Position sizing is the practice of making the risk amount and the stop the inputs, and the size the output. The Position Size Calculator does this calculation across four asset classes (stocks, forex, crypto, futures) with leverage, margin, and reward-to-risk ratios. Knowing why the formula is what it is, and where it stops working, is the skill.
Fastest path
Open the Position Size Calculator. Pick your asset class (stocks, forex, crypto, futures). Enter your account balance. Enter the percentage you are willing to risk per trade (1% is the default; 0.5% to 2% is the typical range). Enter your entry price. Enter your stop loss price. Optionally enter your take-profit target. Enter your commission or fee (percentage or flat). Click Calculate. The tool shows your position size, margin required, account risk, potential loss (including fees), potential profit, and R:R ratio. Click Copy to copy the summary, or CSV to download it.
The percentage-of-balance risk model, and why it is the standard
The percentage-of-balance risk model is the standard because it compounds correctly and caps your drawdown automatically. The dollar risk on each trade is your balance times your risk percentage. A 1% risk on a $10,000 account is $100. A 1% risk on a $12,000 account is $120. A 1% risk on an $8,000 account is $80.
When your balance grows, your position size grows, which lets you compound gains. When your balance shrinks, your position size shrinks, which protects you during losing streaks. The shrinkage is what makes the model survive drawdowns. If you risked a fixed dollar amount instead of a fixed percentage, a losing streak would consume a growing share of your remaining balance, and a 20% drawdown would become a 25% drawdown, then a 33% drawdown, then a 50% drawdown, in a non-linear acceleration toward ruin.
The percentage model caps the drawdown at a rate that depends on your risk per trade. With 1% risk per trade, the probability of losing 50% of your account over any finite sequence of trades is effectively zero, because you need 69 consecutive losing trades to lose half your balance (0.99 to the 69th power is 0.50). With 2% risk, you need 35 consecutive losses. With 5% risk, you need 14. The 1% rule exists because 69 consecutive losses is a practical impossibility for any strategy with a positive edge, while 14 consecutive losses is a real possibility during a regime change.
The Position Size Calculator uses this model. The dollar risk is balance * (riskPct / 100), and the position size is dollarRisk / |entry - stop|. There is no fixed-dollar risk mode; you must use the percentage field.
Why the stop is the input, not the output
The position size formula has two inputs: the dollar risk and the per-unit stop distance. The stop distance is determined by where your trade idea is wrong, not by where the position size would be a round number. If your trade idea is "this stock bounces off the 50-day moving average at $180," your stop is below the 50-day moving average, say $178, and your per-unit risk is the entry minus $178. You do not move the stop to $175 to make the position size a round number, because a stop at $175 is not where the trade idea is wrong — it is a stop placed to fit the size, and the market does not care about your size.
This is the discipline that the formula enforces. You decide where the trade is wrong, then you size to that. If the stop distance is too wide for your risk amount, the position size is too small to bother with, and the trade is not worth taking. If the stop distance is too tight, the position size is large but the stop is likely to be hit by noise, and you will lose the risk amount on a trade that was right in direction. The formula does not solve this tension for you. It shows you the size that corresponds to the stop you chose, and you decide whether the trade is worth it.
How leverage interacts with position size
Leverage does not change the position size. It changes the margin requirement. The position size formula gives you the number of units to hold. The notional value is the position size times the entry price. The margin is the notional value divided by the leverage.
A $5,000 account risking 1% on a crypto trade with entry at $65,000 and stop at $63,500 has a dollar risk of $50, a per-unit risk of $1,500, and a position size of 0.0333 units of the crypto. The notional value is 0.0333 times $65,000, which is $2,166. Without leverage, the margin requirement is the full $2,166, which is 43% of the account. With 5x leverage, the margin is $433, which is 8.7% of the account. With 10x leverage, the margin is $216, which is 4.3% of the account.
The position size did not change. The margin did. The risk is still $50, which is 1% of the account. What leverage changes is the liquidation risk, which the position size formula does not capture. A 10x leveraged position on a $2,166 notional is liquidated when the price moves about 10% against you, which is $6,500 on a $65,000 entry. Your stop is at $63,500, which is a 2.3% move, well before liquidation, so the leverage does not matter for this trade. But if your stop were wider, say at $58,000 (a 10.7% move), the liquidation would hit before the stop, and you would lose the entire margin instead of the $50 you intended to risk. Leverage is safe only when the stop distance is much smaller than the liquidation distance. The Position Size Calculator warns when leverage exceeds 100x, but it does not compute the liquidation price, which is the number that actually matters for leveraged risk.
The four asset classes, and what each adds
Stocks are the simple case. One share is one unit. The per-unit risk is the entry-to-stop distance in dollars. The position size is dollar risk divided by that distance. No multiplier, no pip conversion, no leverage (unless you are trading on margin, which the tool does not model for stocks).
Forex introduces the pip. A pip is the smallest standard price increment for a currency pair. For EUR/USD, a pip is 0.0001. A standard lot is 100,000 units of the base currency, and a pip is worth $10 per standard lot for a USD-quoted pair. The per-unit risk in forex has to be converted to pips, then to dollars via the pip value. The Position Size Calculator takes a pip value as an input (default $10 per pip per lot) and computes the risk per lot as the pip distance times the pip value. The catch is in how the pip distance is computed: the tool takes the entry-to-stop price difference and treats it as the pip distance. For EUR/USD with entry 1.0850 and stop 1.0820, the price difference is 0.003, which the tool treats as 0.003 pips, not 30 pips. To get the correct result, you have to enter the pip distance as a whole number (e.g., 30) in the entry/stop fields, or enter actual prices and accept that the tool's forex output is in a non-standard unit. This is a simplification documented in the tool's source.
Crypto introduces leverage and liquidation. The per-unit risk is the entry-to-stop distance in dollars. The position size is dollar risk divided by that distance. Leverage is an input (default 10x for the crypto tab), and it only affects the margin calculation. Liquidation risk is not modeled.
Futures introduce the contract multiplier. One ES (S&P 500) futures contract is 50 times the index price, so one point of price movement is $50. The per-contract risk is the entry-to-stop distance times the multiplier. The position size in contracts is dollar risk divided by the per-contract risk. The notional value is the position size times the entry price times the multiplier. The Position Size Calculator takes the contract multiplier as an input (default 50) and applies it correctly.
The reward-to-risk ratio, and why it is not part of the size
The reward-to-risk ratio (R:R) is the other number the calculator produces, but it does not feed back into the position size. The R:R is the reward per unit divided by the risk per unit. If your entry is $100, your stop is $95, and your target is $115, your risk per unit is $5, your reward per unit is $15, and your R:R is 3:1. The position size is still $50 risk divided by $5 risk per unit, which is 10 shares, regardless of the R:R.
The R:R matters for strategy evaluation, not for sizing. A strategy with a 50% win rate and a 1.5:1 R:R has a positive expected value: the average trade is 0.5 times 1.5 minus 0.5 times 1, which is 0.25 units of risk per trade. A strategy with a 40% win rate and a 2:1 R:R also has a positive expected value: 0.4 times 2 minus 0.6 times 1, which is 0.2 units of risk per trade. A strategy with a 60% win rate and a 0.5:1 R:R has a negative expected value: 0.6 times 0.5 minus 0.4 times 1, which is -0.1. The position size formula does not know your win rate or your R:R. It sizes to the risk you specified, and the R:R is a separate input for strategy evaluation.
Gotchas
- The forex pip calculation is simplified. The tool treats the entry-to-stop price difference as the pip distance, not as a price. For EUR/USD with entry 1.0850 and stop 1.0820, the tool sees 0.003, not 30 pips. To get the correct position size in lots, enter the pip distance directly (e.g., 30 as the entry, 0 as the stop) and the pip value ($10 for a standard lot of a USD-quoted pair). This is a known simplification, not a bug.
- No fixed-dollar risk mode. The tool uses percentage-of-balance only. If you want to risk a fixed $200 regardless of your balance, you have to calculate the equivalent percentage ($200 / balance) and enter that.
- The exceeds-balance warning only fires for non-leveraged positions. The check is
leverage <= 1 && notional > balance. With any leverage, the notional is expected to exceed the balance, so the warning never fires, even if the notional is 100x your balance. The warning text ("use leverage or reduce size") is contradictory when leverage is already in use. - Fees are added to the loss but not subtracted from the profit.
potentialLoss = dollarRisk + feeCost, butpotentialProfitdoes not subtract fees. The R:R ratio is purely price-based and does not account for the round-trip fee. The fee cost is shown in the breakdown, but the R:R is not adjusted. - No liquidation price. The tool warns at leverage > 100x but does not compute the liquidation price, which is the number that actually matters for leveraged risk. For a 10x position, the liquidation is roughly 10% against you (minus maintenance margin). If your stop is wider than the liquidation distance, you will be liquidated before your stop fires, and you will lose the entire margin instead of the risk you intended.
- No multiple positions or portfolio risk. The tool sizes one position at a time. It does not know about your other open positions, it does not aggregate risk across positions, and it does not account for correlation. If you have three positions on the same asset, your actual risk is 3x what the tool computed.
- No slippage or spread. The tool uses your entry and stop prices as if they were exact. In reality, your stop fills with slippage, especially in fast markets, and your entry may fill at a worse price if you use a market order. The actual loss on a stopped trade is usually larger than the computed risk.
- No currency conversion. All inputs and outputs are in USD. If your account is in EUR and you are trading a USD-quoted instrument, you have to convert manually.
- No Kelly criterion or volatility-adjusted sizing. The tool uses the fixed fractional model only. It does not adjust the risk percentage based on win rate, R:R, or volatility. Advanced sizing models (Kelly, fractional Kelly, volatility targeting) are not supported.
- The risk-level label is a guideline, not a rule. The tool labels <=2% as "Conservative," <=5% as "Moderate," >5% as "High." The 5% threshold is high — most professional traders risk 0.5% to 2% per trade. The "Moderate" label on a 5% risk is generous.
- Stocks do not support leverage in the tool. The stocks tab is fixed at 1x. If you trade stocks on margin, the tool does not compute the margin requirement for you.
- The Sample button loads realistic but not canonical values. The samples are useful for seeing how the tool works, but the forex sample uses price values (1.0850, 1.0820) that trigger the simplified pip calculation, so the forex sample's position size output is in the non-standard unit described above.
Summary
- Position sizing is one division: dollar risk divided by per-unit stop distance gives the number of units to trade. The discipline is making the risk amount and the stop the inputs and the size the output, not the other way around. Decide where the trade is wrong, then size to that.
- The percentage-of-balance risk model is the standard because it compounds correctly and caps drawdown automatically. With 1% risk per trade, you need 69 consecutive losses to lose half your account, which is practically impossible. The Position Size Calculator uses this model; there is no fixed-dollar risk mode.
- Leverage does not change the position size. It changes the margin. The risk is still the dollar risk you specified. What leverage changes is the liquidation risk, which the tool does not compute. Liquidation is the risk that the formula does not capture, and it matters when your stop is wider than the liquidation distance.
- The four asset classes each add a wrinkle: stocks are simple, forex has the pip conversion (simplified in the tool), crypto has liquidation, futures has the contract multiplier. The R:R ratio is a separate calculation for strategy evaluation, not an input to the size. Use the Options Profit Calculator for options payout math, the Black-Scholes Calculator for options pricing, and the Crypto Profit Calculator for crypto holding-period returns.