Kelly Criterion — Bet Sizing for Long-Run Growth
Takeaway
The Kelly criterion prescribes the fraction of capital to bet that maximizes long-run exponential growth, not short-run win rate.
The problem (before → after)
- Before: Flat bet sizes feel safe, but overbetting risks ruin and underbetting wastes edge; intuition misleads under repeated play.
- After: Choose a fraction that optimizes expected log wealth, compounding your edge while controlling drawdown risk.
Mental model first
Think of growth as climbing a staircase where each step multiplies your wealth. Maximizing the height after many steps means optimizing the log of each step’s multiplier, not the chance of a single big jump.
Just-in-time concepts
- Edge: p is win probability, q = 1 − p; b is net odds per unit wagered.
- Wealth multiplier per round: W’ = W (1 + f b) with prob p; W’ = W (1 − f) with prob q.
- Objective: Maximize G(f) = E[log(W’/W)] = p log(1 + f b) + q log(1 − f).
- Kelly fraction: f⋆ = (p b − q) / b, clipped to [0, 1] when constraints apply.
First-pass solution
Solve dG/df = 0 to get f⋆. For a biased coin with b = 1 and p = 0.6, f⋆ = 0.2: bet 20% each round. Half-Kelly (f⋆/2) often improves risk-adjusted performance with modest growth penalty.
Iterative refinement
- Uncertain edge: Use conservative estimates or shrink p toward 0.5 to avoid overbetting.
- Transaction costs and slippage: Reduce effective b; recompute f⋆.
- Multiple assets: Solve a constrained optimization using covariance; equivalent to maximizing expected log utility with leverage limits.
- Drawdowns: Fractional Kelly trades growth for lower volatility and smaller peak-to-trough losses.
Code as a byproduct (binary bet)
def kelly_fraction(p: float, b: float) -> float:
q = 1.0 - p
return max(0.0, min(1.0, (p * b - q) / b))
# Example: 60/40 coin at even odds
f_star = kelly_fraction(0.6, 1.0) # 0.2
Principles, not prescriptions
- Optimize for long-run compounding (log utility), not single-period payoff.
- Size positions to your edge and payout structure; uncertainty warrants shrinkage.
- Survive: avoiding ruin is prerequisite to compounding.
Common pitfalls
- Using historical p without uncertainty bounds leads to overbetting.
- Ignoring correlation turns a multi-asset Kelly into overleveraging.
- Confusing Kelly with risk tolerance; it is a growth optimum, not a comfort optimum.
Connections and contrasts
- See also: [/blog/black-scholes] (continuous-time hedging), [/blog/multi-armed-bandits] (exploration vs exploitation), [/blog/information-theory] (link to log utility and entropy).
Quick checks
- Why log utility? — It captures multiplicative compounding and penalizes ruin heavily.
- What happens if f > f⋆? — Growth decreases; beyond a point, expected log growth turns negative.
- Why use half-Kelly? — Better risk-adjusted returns under parameter uncertainty.
Further reading
- Kelly, 1956 (paper above)
- MacLean, Thorp, Ziemba — “The Kelly Capital Growth Investment Criterion”
- Thorp’s writings on practical Kelly sizing