Bet Sizing (Kelly)

Language English Español Português العربية Русский 中文

This page answers:How much should this stake be, so that you can still earn but never lose your way out?

Win rate p —— entering 0.55 means 55% (entering 55 is also read as 55%)
Net gain when you win —— how much you make (not odds including your stake, but the money you clear)
Net loss when you lose —— how much you lose (must be > 0)
Disposable funds —— K5's 5% cap is measured against this
“Sleep well” ceiling —— the amount that still lets you sleep at night and decide clearly
Step5 How many losses in a row you are currently on —— at 3 the circuit-breaker stops you
Step5 Current cumulative loss as a share of disposable funds —— at 15% everything pauses
K1 What is your win rate based on —— the doc requires a basis, even one accurate only to ±15%
K3 Is there a survival floor —— after a total loss on one attempt, do rent / food / your main job carry on as usual
K4 How many more times you can take this kind of opportunity —— the bar is ≥ 10 (Kelly is the optimal strategy for a repeated game)
K6 Is there a hard-coded stop-loss / circuit-breaker rule (for example, stop after 3 losses in a row)

This page answers one question only: how much to stake on this position. It does not tell you whether to take the opportunity.
Core formulas (verbatim from 12-下注规模算法.md §4 Step2, implemented as-is with nothing changed): odds b = net gain when you win ÷ net loss when you lose; f_full = (b × p − q) ÷ b (q = 1 − p); suggested f = f_full × 0.25 ~ 0.5 (take the conservative 0.25).
Bands (verbatim §4 Step4):EV ≤ 0 → 🔴 don't bet | f_full < 2% → 🟡 too small | 2%–10% → 🟢 standard (stake at 1/2 Kelly) | 10%–25% → 🔵 big edge (stake at 1/4 Kelly, split over 2–3 entries) | > 25% → ⚠️ caution (your p is most likely misjudged).
Smallest of three (verbatim §4 Step3):actual stake ratio = min( f, 5% of disposable funds, your “sleep well” ceiling ).
Hard gates (stated outright in the doc's §3; they override the bands above):K3 no survival floor → no betting; K6 no stop-loss rule → do not start; K4 only one shot left → do not use this algorithm (use 03's convexity ratio instead); §6 hard rule: an opportunity whose p cannot be estimated gets a “zero-cost trial” only, never a stake amount.
Circuit-breakers (§4 Step5):3 losses in a row → stop and re-estimate p; cumulative loss reaching 15% of disposable funds → pause everything.

What this page is / is not
· This page is a position-size calculator; it is not investment advice, not a gambling tip, and it does not pick opportunities for you. The doc says so in §7 (caveats) and §9 (boundaries): no investment or gambling recommendations; this algorithm does not apply to any stake involving illegal gambling, illegal fundraising or insider trading.
· The thresholds come from an internal methodology doc, 《经济盈利算法·12 下注规模算法 v1.0》 (domestic machine /opt/inventory/econ_algorithms/12-下注规模算法.md, 161 lines, finalised 2026-09-14, read-only), and have not been through any external empirical testing. The doc's §1 gives a citation for the Kelly criterion (Kelly 1956, Bell System Technical Journal, DOI 10.1002/j.1538-7305.1956.tb03809.x), but 2% / 10% / 25% / 5% / 15% / 3 losses in a row / the 1/4–1/2 Kelly reduction are practice lines the methodology set for itself; the doc itself labels “the half-Kelly / quarter-Kelly convention” as “a practice summary, an empirical rule”.

Evidence chain (the md doc has no line numbers, so these point to sections)
· EV = p × amount won − (1−p) × amount lost; EV ≤ 0 → do not bet at all → 12-下注规模算法.md §4 Step1
· b = net gain when you win ÷ net loss when you lose; f_full = (b×p − q) ÷ b; f = f_full × 0.25 ~ 0.5 → §4 Step2
· smallest of three, min(f, 5%, sleep-well ceiling) → §4 Step3; the five bands → §4 Step4
· 3 losses in a row / cumulative loss of 15% circuit-breaker → §4 Step5; the 4-column record sheet and “re-estimate p every 10 bets” → §4 Step6
· The six start conditions K1–K6 and their thresholds (basis accurate to ±15%, ≥ 10 bets available, ≤ 5% per bet, stop-loss advised after 3 losses in a row) → §3; the §6 hard rules, the preparation list and the first step → §5.2 / §5.3 / §6

Where it is not aligned / has been simplified (said plainly)
· Unconfirmed ① (mixed units): the doc's §4 Step3 puts a “ratio” (f, 5%) and an “amount” (the sleep-well ceiling) inside one min(). This page resolves it by multiplying the ratio by disposable funds to get an amount first, then taking the smaller against the sleep-well ceiling. That step is this page's implementation and the doc does not state it, so it is flagged unconfirmed.
· Unconfirmed ② (which band a boundary belongs to): the doc's band table writes “2%–10%” and “10%–25%”, so the 10% cell touches both. This page reads it as “f_full ≤ 10% goes to 🟢 standard, f_full ≤ 25% goes to 🔵 big edge”; the doc does not say which side a boundary falls on.
· Simplification ④ (floating-point tolerance): the 2% / 10% / 25% lines all carry a 1e-9 tolerance. Why: with p=0.55 and b=1, 0.55−0.45 comes out in binary as 0.1000000000000000055…, so writing fFull <= 0.10 directly would flip an input of “exactly 10%” into 🔵 big edge by mistake. The tolerance only makes inputs that sit exactly on a line land on that line; it does not change the 2%/10%/25% thresholds themselves. The EV ≤ 0 test carries the same tolerance.
· Simplification ①: the doc's §4 Step4 says the 10%–25% band should be split over 2–3 entries; this page only prints that sentence and does not break your position into 2–3 orders for you.
· Simplification ②: the 4-column record sheet in §4 Step6 (estimated p / outcome / P&L / review) is a paper discipline; this page keeps no records and stores no data and writes nothing persistent.
· Simplification ③ (input layer): the win rate accepts 0.55 and also accepts 55 (treated as 55%) —— the doc only writes p and never specifies the notation; this is this page's convenience handling, and the result says which one it used.
· Not done: the doc's §7 suggests “let an LLM turn a vague ‘I'm about 60% sure’ into a p with a basis” —— this page is pure front-end and calls no model.
· Not done: the chart plots the same formula over p = 5%–95% (with b set to your odds); that sampling is this page's own presentation and is not a field the doc outputs; the vertical axis is fixed at ±10, so parts beyond that (if your odds are small enough that f_full < −1) simply fall off the canvas.

[Evidence section · where to check each number]
① Source: internal methodology doc 《12-下注规模算法.md》v1.0 (domestic machine /opt/inventory/econ_algorithms/12-下注规模算法.md, 161 lines, read-only): the start conditions K1–K6 = §3; EV / Kelly / smallest-of-three / the five bands / circuit-breakers / record discipline = §4 Step1–Step6; preparation list and first step = §5.2 / §5.3; hard rules = §6. The literature citation appears only in §1 (Kelly 1956, Bell System Technical Journal, DOI 10.1002/j.1538-7305.1956.tb03809.x).
② Three categories
· [Verifiable] EV = p×赢 −(1−p)×输, b = 净收益 ÷ 净损失, f_full = (b×p−q)÷b, f = f_full×0.25~0.5, the smallest of three min(f, 资金 5%, 睡得好上限), the five band lines (≤0 / <2% / 2–10% / 10–25% / >25%), the circuit-breakers (3 losses in a row / 15% cumulative) —— every one of these matches §4 Step1–Step6 line by line.
· [This page's presentation choice] The p = 5%–95% curve is a page-side sampling (with your odds plugged in); the doc has no such chart, and clipping the axis at ±10 is this page's doing too.
· [No source found] The figures 2% / 10% / 25% / 5% / 15% / 3 losses in a row, and the “half-Kelly / quarter-Kelly” reduced-stake convention: the doc labels them itself, in §1 and in INDEX §4, as “practice thresholds / a practice summary, not theorems” → no external basis exists (they are internal practice lines).
③ How to check it yourself: p=0.55, win and loss both 1 → b=1, f_full = (1×0.55−0.45)÷1 = 0.10 → should land in 🟢 standard with a suggested range of f = 0.025~0.05; with disposable funds 10000 and a sleep-well ceiling of 600, the smallest of three gives an actual stake of min(250, 500, 600) = 250. Change p to 0.65 → f_full = 0.30 > 25% → should land in ⚠️ caution.

What you can do next

No downstream slices yet.

Generated by /opt/slices_build/build.py from the spec /_shared/slices/bet-sizing.json — to change this page, edit the spec and re-run the generator; never hand-edit the HTML.