Calculator
Kelly Criterion Calculator
Fractional Kelly bet-size calculator: full/half/quarter Kelly, Monte Carlo drawdown simulation, ruin probability, per-trade cap.
Runs in your browser. Nothing you enter is uploaded, and no account or API key is needed.
Inputs
Share of trades that win.
Average win divided by average loss: 1.5 = winners are 1.5× the size of losers.
Quarter Kelly is a common choice when win rate and payoff are estimates.
Most of the bankroll ever risked on one trade, whatever Kelly says.
A path counts as ruined once the bankroll falls to this share of the start.
Random seed 42
Bet size
6.25%
Quarter Kelly of bankroll per trade, within the per-trade cap. Strong edge.
Raw Kelly: 25.00%. Fractional: 6.25%
Drawdown profile
Median DD
44.7%
typical
95th pct DD
62.7%
tail
Ruin rate
0.60%
bankroll < 50%
Bankroll multiple after 500 trades
5th pct
1,400×
worst 5%
Median
24,235×
typical
95th pct
285,642×
best 5%
Bankroll paths (Monte Carlo)
Median = line · 5th to 95th percentile = shaded
What this tool computes
Kelly fraction is the bet size that maximizes expected long-run log-growth of bankroll, given a known win rate and win/loss ratio. Fractional Kelly (half, quarter, eighth) reduces that size — a common practical choice because real-world win rates are estimated, not known, and full Kelly is unforgiving of overestimates.
The Monte Carlo simulator then runs independent paths of the same strategy at the capped bet size to show the distribution of outcomes, not just the expected value. Each win pays the win/loss ratio and each loss costs 1, both scaled by a random factor of 1 + 0.1 × N(0, 1) (floored at 0.1). The shaded band spans the 5th to 95th percentile of paths at each trade. The ruin rate is the share of paths that touched the ruin threshold at least once. The simulation is seeded, so the same inputs and seed always give the same result.
How to use it
- Enter win probability p (decimal 0-1) and win/loss ratio b (avg win / avg loss). These are the only required inputs — no historical data upload needed.
- Pick a Kelly fraction (full / half / quarter / eighth). Quarter-Kelly is a sensible default for real-world strategies where p and b are estimated from data.
- Set a single-trade absolute cap (e.g., 5% of bankroll max). This bounds the worst case even if the formula recommends more.
- Read the Monte Carlo results, which update as you change inputs: median and 5th-percentile ending bankroll, drawdowns and ruin rate together. A high median with a high ruin rate means the strategy gambles for growth.
- If the ruin rate is not zero, try a smaller Kelly fraction or a lower cap. Change the trade count to see how the spread of outcomes widens over a longer horizon, and draw a new sample to check the result is not a lucky seed.
Questions people ask
Why does Kelly recommend a fraction of bankroll, not a fixed dollar amount?
Kelly's 1956 derivation maximizes the long-run expected log-growth of bankroll. Fixed dollars don't compound efficiently because winning bets aren't pressed and losing streaks don't shrink the bet size. Fractional sizing keeps geometric growth optimal; the cost is that drawdowns can be severe at full Kelly.
Should I bet full Kelly?
No, not when you estimated p and b from data. Full Kelly assumes you know the true win rate and win/loss ratio. With estimation error, full Kelly often turns into over-betting and ruinous drawdowns. Half-Kelly (0.5×) or quarter-Kelly (0.25×) is the standard real-world choice — Thorp and MacLean argue this in print.
What's the ruin rate output mean?
It's the fraction of simulated paths where bankroll fell below the threshold you set (typically 50% of starting capital). Ruin rate is sensitive to Kelly fraction, edge size, and number of trades. A non-zero ruin rate at quarter-Kelly is a sign your estimated edge is too thin or your trade count is too high.
Why does the simulator use Gaussian noise on outcomes?
Real strategies don't have flat $1 wins and $b losses — there's a distribution around the average. The simulator multiplies outcomes by (1 + 0.1·N(0,1)), floored at 0.1, to inject mild variance. This gives more realistic drawdown distributions than a deterministic model. Heavy-tailed strategies (e.g., option selling) need a smaller Kelly fraction than this Gaussian-noise floor implies.
Does Kelly work for trading?
Kelly was originally formulated for repeated independent bets with known parameters — closer to blackjack than markets. Trading violates several Kelly assumptions: edges drift (regime change), trades correlate (sector exposure), and outcome distributions have fat tails. Treat Kelly as a sizing ceiling, not a target. Most professional traders run far below Kelly-optimal.
Related tools
- Calculators Backtest Overfitting Score
Upload a backtest trade log and compute Probability of Backtest Overfitting (PBO), Deflated Sharpe Ratio, and the odds your edge survives live trading.
- Calculators Risk-Adjusted Returns Calculator
Paste a returns CSV. Sharpe, Sortino, Calmar, Omega, alpha, beta, tracking error, information ratio, max drawdown, and tail moments — plus.
- Calculators Efficient Frontier Calculator
Paste a multi-asset returns CSV. See the Markowitz mean-variance frontier, the minimum-variance portfolio, the max-Sharpe (tangency) portfolio.
Articles
- 10 min read The 2026 Engineer's Guide to AI in Markets
An engineer's map of where LLMs, MCP servers, and market-data APIs fit into a 2026 trading stack — and where they still break. Direct, no hype, no grift.
- 12 min read Did You Overfit? PBO and Deflated Sharpe
A practical tutorial on the two best-documented tests for backtest overfitting — PBO via CSCV and the Deflated Sharpe Ratio. Runnable Python + tool.
- 7 min read Signal Orthogonality: Why Ensembles Become One Bet
A 10-signal ensemble with pairwise correlation 0.8 is effectively a 1.5-signal ensemble. The math, a two-minute diagnostic, and three axes that work.
Workflows that use this tool
- Workflow Validate your strategy
Pressure-test a quant or LLM-augmented strategy before paper-trading or production.
- Workflow Size your bets
Compute Kelly fraction, drawdown bounds, and correlated exposure across a book.
Use it from code
The same calculation as a JavaScript module you can import. It runs where you import it, with no request, key or rate limit.
import { compute } from "https://aifinhub.io/engines/kelly-sizer.js";