📊 Kelly Criterion

Optimal bet sizing for edge betting • Maximize geometric growth rate

⚠️ Prerequisite: Kelly Criterion only applies to bets with positive expected value (+EV). Casino games typically have negative EV. This guide is for sports betting, prediction markets, or other scenarios where you have a genuine edge.

📐 The Formula

f* = (bp - q) / b
{
  "formula": "f* = (bp - q) / b",
  "variables": {
    "f_star": "Optimal fraction of bankroll to bet",
    "b": "Net odds received (decimal odds - 1)",
    "p": "Probability of winning (your estimate)",
    "q": "Probability of losing (1 - p)"
  },
  "alternative_formula": "f* = edge / odds = (p × b - q) / b"
}

💻 Implementation

// JavaScript implementation
function kellyFraction(probWin, decimalOdds) {
  const b = decimalOdds - 1;  // Net odds
  const p = probWin;
  const q = 1 - p;
  
  const kelly = (b * p - q) / b;
  
  // Never bet negative (no edge)
  return Math.max(0, kelly);
}

// Example: 55% win probability at 2.0 decimal odds (even money)
kellyFraction(0.55, 2.0)  // Returns: 0.10 (bet 10% of bankroll)

// Python implementation
def kelly_fraction(prob_win: float, decimal_odds: float) -> float:
    b = decimal_odds - 1
    p = prob_win
    q = 1 - p
    kelly = (b * p - q) / b
    return max(0, kelly)

📋 Example Calculations

ScenarioWin ProbOddsKelly %Interpretation
Slight edge, even money52%2.04%Small bet
Good edge, even money55%2.010%Medium bet
Strong edge, even money60%2.020%Large bet
Slight edge, plus odds40%3.010%Medium bet
No edge50%2.00%Don't bet
Negative EV45%2.00%Don't bet

⚡ Fractional Kelly

Full Kelly is mathematically optimal but has high variance. Most professional bettors use fractional Kelly:

{
  "fractional_kelly": {
    "half_kelly": {
      "multiplier": 0.5,
      "benefit": "75% of growth rate, 50% of variance",
      "recommendation": "Most common choice"
    },
    "quarter_kelly": {
      "multiplier": 0.25,
      "benefit": "Much smoother equity curve",
      "recommendation": "Conservative approach"
    }
  },
  "why_fraction": [
    "Edge estimates are uncertain",
    "Reduces drawdowns significantly",
    "Accounts for model error",
    "Psychological comfort"
  ]
}

🎯 For Betting Agents

{
  "agent_guidelines": {
    "estimate_edge_conservatively": true,
    "use_fractional_kelly": "0.25 to 0.5",
    "max_single_bet": "5% of bankroll regardless of Kelly",
    "track_actual_vs_expected": true,
    "recalibrate_model": "If actual results diverge significantly"
  },
  "common_mistakes": [
    "Overestimating edge (most common)",
    "Using full Kelly (too aggressive)",
    "Not accounting for correlation between bets",
    "Ignoring transaction costs/vig"
  ]
}

📈 Multi-Outcome Kelly

For bets with multiple outcomes (e.g., prediction markets):

// Simplified for binary outcomes with multiple simultaneous bets
// Use Kelly for each bet independently, then scale down
// if total allocation exceeds comfort level

{
  "simultaneous_bets": {
    "uncorrelated": "Can use individual Kelly for each",
    "correlated": "Reduce allocation - diversification benefit is reduced",
    "rule_of_thumb": "Total exposure should rarely exceed 25% of bankroll"
  }
}

🔗 Related Resources

{
  "polymarket": "https://polymarket.com - Prediction market for Kelly-based betting",
  "reference": "'Fortune's Formula' by William Poundstone",
  "original_paper": "Kelly, J.L. (1956) 'A New Interpretation of Information Rate'"
}
← Back to Agent Resources