Free · Client-side · No signup · No data leaves your browser

The Trader's Risk Toolkit

Six calculators most traders skip, and most losing traders never learn: position sizing, R-multiples, expectancy, a Monte Carlo risk-of-ruin simulator, Kelly fraction, and break-even win rate. Every formula is shown in the open below its result — check the math yourself, don't take it on faith.

01 · Sizing

Position sizer

How many shares (or contracts, treated as 1:1 units here) can you buy without risking more than a fixed percent of your account if your stop gets hit. Works for longs and shorts — the calculator infers direction from where you put the stop.

Stop below entry = long. Stop above entry = short. Direction is detected automatically.

Result

Shares/contracts
Dollar risk
Position notional
% of account (notional)
02 · Grading trades

R-multiple calculator

An R-multiple measures a trade's result as a multiple of what you risked, so a $40 win on a $20-risk trade and a $400 win on a $200-risk trade are both "+2R" — comparable regardless of size. One formula handles longs and shorts identically.

Single trade
Batch mode (optional)

Result

Single trade R
Batch total R
Batch average R
Batch win rate
R = (exit − entry) / (entry − stop) This single formula is sign-correct for both directions: long (stop < entry): profitable exit > entry → positive R short (stop > entry): profitable exit < entry → positive R
03 · The number that actually matters

Expectancy

Expectancy is your average result per trade, in R, given your actual win rate and the size of typical wins and losses. A positive expectancy is necessary for a system to work over time — it is not sufficient, and it says nothing about how bad a losing streak can feel along the way (that's what the simulator below is for).

Result

Expectancy per trade (R)
Expectancy = (win rate × avg win) − ((1 − win rate) × avg loss)
What this does and doesn't tell you: a system with 45% wins, 2R average win, 1R average loss has expectancy +0.35R/trade — but with a small sample (say, 30–60 trades) the confidence interval around that number is wide. A run of 40 trades from a true +0.35R system can easily show a negative result by chance alone, and a run of 40 trades from a break-even or slightly negative system can show a strong positive result. Expectancy from under ~100 trades is a hypothesis, not a fact — see the honesty section below for a real example of this happening to me.
04 · The lesson expectancy alone won't teach you

Risk of ruin / drawdown simulator

Positive expectancy over many trades still produces a wide spread of possible outcomes, because trade order and win/loss sequencing are random. This runs 2,000 independent simulated paths of your system and shows the actual distribution of outcomes and drawdowns you could experience, not just the average.

Result

Median final equity (×)
10th pct. final equity (×)
Median max drawdown
P(drawdown ≥ threshold)
Distribution of final equity multiple across 2,000 simulated paths.
Per trade: equity ← equity × (1 + risk% × R), where R = +avgWin with prob. p, −avgLoss with prob. (1−p), drawn independently each trade. Max drawdown per path = max over time of (running peak − equity) / running peak. Assumptions: independent draws (no streak correlation, no regime effects), fixed fractional risk (position size recalculated off current equity each trade, not a fixed dollar amount), no costs/slippage.
05 · The theoretical ceiling — do not use it directly

Kelly fraction

The Kelly criterion gives the risk fraction that maximizes long-run geometric growth if your win rate and payoff ratio are known exactly. In real trading they're estimates, not known constants, and full Kelly produces brutal drawdowns even when the inputs are correct. Fractional Kelly (typically ¼–½ Kelly) is the practical standard for this reason.

Result

Full Kelly
½ Kelly
¼ Kelly
b = avg win / avg loss (payoff ratio) f* = p − (1 − p) / b = (p·b − (1 − p)) / b
Full Kelly is not a recommendation, it's a ceiling. It assumes your win rate and payoff ratio are exact and constant, which they never are in live trading — real edges decay and get mis-estimated from small samples. Even with correct inputs, full Kelly's growth-optimal path still carries 50%+ drawdowns as a normal event. Most professional sizing lands at ¼–½ Kelly specifically to trade some growth rate for a survivable ride.
06 · The bar you need to clear

Break-even win rate

Given a reward:risk ratio, this is the win rate at which expectancy is exactly zero — the minimum you need to clear before a system is worth trading at all.

Result

Required win rate
break-even win rate = 1 / (1 + reward:risk) e.g. at a 2:1 reward:risk, you only need to win 33.3% of the time to break even.
Why I built this the way I did

A backtested edge just shrank 87% under my own adversarial re-test

I run a swing-setup screener that flagged an anchored-VWAP reclaim pattern with a backtested +0.23R over 101 trades across 8 tech/index names. That looked like a real edge. So instead of trusting it, I re-tested it adversarially — the explicit goal was to try to kill the result, not confirm it.

Sliding the backtest's arbitrary 126-bar window grid on the same 8 names alone, the reproducible expectancy had a median of +0.004R, ranging from −0.045R to +0.287R — the original +0.23R sat near the lucky end of a distribution that was, at its center, indistinguishable from zero. Expanding to a 129-symbol, 10-year universe did find a real, statistically significant expectancy of +0.117R (block-bootstrap 95% CI [+0.057, +0.174]). But when I benchmarked the AVWAP-reclaim signal against risk-matched random entries using the identical stop and target, the random entries alone captured +0.086R of that — just long-term market drift. The signal's own incremental contribution came out to +0.030R per trade, with a 95% confidence interval of [−0.014, +0.077] — a result that does not clear statistical significance, and one that ordinary trading costs (5–10 bps round-trip) would mostly or entirely consume.

Verdict: marginal. Trade it small, sized at a fraction of normal risk, or not at all.

That's the exact experience this toolkit is built to prevent you from having to learn the hard way: a good-looking backtest number, a small sample, and a plausible story are not the same thing as a validated edge. Position size like your edge might be much smaller than your backtest says, because it usually is.

Full write-up with method, every benchmark, and the correlation-adjusted statistics: reports/robustness-2026-07.md in the swing-screener repo.

Go deeper

These six calculators are chapter 4 of the course

The Swing Trading Operating System walks through position sizing and expectancy math, the anchored-VWAP setup above (including how to stress-test it yourself), chart-pattern and options-overlay modules, and the weekly routine that ties it together — 8 illustrated modules, no signals or return promises, just the process.

See the course — $49

Educational content only — nothing on this page is financial advice, and no calculator here predicts or promises any return. Trading involves substantial risk of loss, including total loss of principal. Past or backtested performance, including the AVWAP example above, does not indicate future results. Verify every formula independently before relying on it with real capital.


FAQ

Common questions

Longer version, with every formula worked out: R-multiple & expectancy, explained →

How do I calculate position size for a trade?

Divide the dollars you are willing to lose by the per-share risk. Dollars at risk = account size x risk percent (1% of a $25,000 account is $250). Per-share risk = entry price minus stop price. Position size = dollars at risk / per-share risk. The free position sizer at https://yusuf-gadelrab.github.io/risk-tools.html does this in the browser and prints the formula under the result.

What is an R-multiple?

An R-multiple expresses a trade's outcome in units of the risk you took. 1R is the distance from entry to stop. A trade that makes twice what you risked is +2R; one that hits the stop is -1R. Measuring in R makes trades comparable across position sizes and account sizes.

What is expectancy in trading?

Expectancy is the average R you earn per trade: (win rate x average win in R) minus (loss rate x average loss in R). A positive expectancy means the strategy makes money over a large sample; anything at or below zero does not, no matter how good the win rate looks.

What win rate do I need to break even?

Break-even win rate = 1 / (1 + reward-to-risk). At 2R reward per 1R risk you need to win 33.3% of the time; at 1R you need 50%; at 3R you need 25%. The break-even calculator on the risk toolkit page computes it for any reward-to-risk ratio.

What is risk of ruin?

Risk of ruin is the probability that a run of losses drains your account to an unrecoverable level, given your win rate, reward-to-risk, and risk per trade. The toolkit estimates it with a Monte Carlo simulation so you can see how much a 1% risk per trade differs from a 3% risk per trade.

Are these calculators free, and is my data private?

Yes. All six calculators are free with no signup. The page is static and runs entirely in your browser — nothing is sent to a server and nothing is stored off your device. They are educational tools, not financial advice.