Kelly公式:数学上的最优仓位与"半Kelly"的智慧
我的掌握程度:
先掌握这个答案
Kelly公式:f* = (bp − q)/b,其中b=赔率(净赔率)、p=胜率、q=1−p。直觉:正期望下注比例与「优势大小」成正比;f*最大化的是长期财富的几何增长率(对数期望)。连续收益近似版:f* = μ/σ²(预期超额收益除以方差——与MVO的λ=1特例神似)。半Kelly:实战取f*/2——理由:①参数估计误差(p、b你从不知道真值);②全Kelly的回撤深得离谱(50%回撤常态化);③增长损失仅1/4(半Kelly的增长率≈全Kelly的75%)。三条启示:仓位与优势成正比、与波动平方成反比;优势为零或负时下注比例为零(甚至不加仓策略);估计不确定时永远打折。
先读结论,再核对下方使用边界;数字例题为教学情景,涉及实际行情与规则时请核对原始来源。
从理解到使用
本阶段实战方法 · 把风险指标转成可执行的限额
报告VaR、对冲比率或保证金时,必须同时说明模型外还可能发生什么。
- 先定义损失正负号、置信水平、持有期、样本窗口和估计方法。
- 组合使用VaR、ES、压力测试、集中度、清算天数与保证金情景,不把单一指标当最大损失。
- 为预警、减仓、暂停交易写清触发条件、执行责任和恢复条件,并记录无法成交的情景。
使用边界
- 95% VaR是损失分布的95%分位,不是最大亏损或保证每天有95%把握安全。
- 久期敏感度使用修正久期;Macaulay久期是现金流加权时间,两者不能直接混用。
背景 · 从一个困惑说起
1960年代,贝尔实验室的物理学家John Kelly研究赌注问题:已知每局胜率与赔率,全部身家的多少比例下注,能让长期财富增长最快?答案简洁得惊人——f*=(bp−q)/b。这个公式后来横扫赌场与华尔街,也毁掉过无数高估自己胜率的人。
由此产生的问题
Kelly公式的推导直觉是什么?为什么实战普遍用"半Kelly"?它对量化仓位管理的三条启示?
核心概念
Kelly公式:f* = (bp − q)/b,其中b=赔率(净赔率)、p=胜率、q=1−p。直觉:正期望下注比例与「优势大小」成正比;f*最大化的是长期财富的几何增长率(对数期望)。连续收益近似版:f* = μ/σ²(预期超额收益除以方差——与MVO的λ=1特例神似)。半Kelly:实战取f*/2——理由:①参数估计误差(p、b你从不知道真值);②全Kelly的回撤深得离谱(50%回撤常态化);③增长损失仅1/4(半Kelly的增长率≈全Kelly的75%)。三条启示:仓位与优势成正比、与波动平方成反比;优势为零或负时下注比例为零(甚至不加仓策略);估计不确定时永远打折。
为什么需要它
①仓位管理的理论天花板:所有仓位问题(单策略权重、杠杆上限、风控预算)的讨论都以Kelly为参照系;②「过度下注」的数学定义:f>f*时增长率反降——赌徒破产的数学本质,解释了q-028杠杆爆仓曲线;③面试与实战双高频:绿皮书经典题;实盘的「波动率目标」(阶段7收尾)本质就是Kelly思想的工程化。
实际应用场景
算例:胜率55%、盈亏比1:1 → f*=(1×0.55−0.45)/1=10%资金/局;半Kelly=5%。组合层:策略年化超额8%、特异波动6% → f*≈8%/36%≈0.22(该策略占风险预算约22%)——风险预算法的Kelly血统。
与之前知识的联系
q-009的正期望给「值不值得赌」,Kelly给「赌多少」——两问合才是完整的下注理论;q-208(几何平均)是它的数学地基;q-601的「先活下来」在Kelly语境=严禁f>f*。
⚠ 常见误解
- Kelly给出的是"最佳风险":不,它给出的是「最快增长」,代价是深回撤;风险厌恶者本就该低于Kelly
- 我的胜率估计够准:Kelly对参数误差极其敏感——高估p一成,全Kelly立刻变过度下注;半Kelly就是给估计误差买的保险
- 凯利只适用于赌博:组合配置(μ/σ²)、风险预算、波动率目标全是它的变体——它是仓位世界的F=ma
🛠 本题实践任务
模拟你的策略参数(胜率、盈亏比)下的Kelly:计算f*与半Kelly,用模拟对比三档仓位(0.5/1/1.5倍Kelly)的「中位终值×P10×最大回撤」。写下你的仓位结论。
💡 提示(先自己想5分钟再看)
参数用你回测的实测值;重点看P10(运气差的那一成)——过度下注在P10里现形。
✅ 验收标准
三档对比表+一句话仓位纪律(例:单策略风险预算≤半Kelly)。这是你风控体系的定量地基。
在你的浏览器内运行。首次需联网下载 Python;支持标准库和 Pyodide 提供的 NumPy、pandas 等包。行情抓取、系统文件访问和部分第三方库请在本地环境运行。输出自检仅比对结果关键词,不代替逻辑审查。
Python · 独立工作线程 · 执行限时10秒
🤖 AI导师
导师会先检查你的前置知识(正期望、几何平均与复利、仓位管理),再用案例、公式和代码帮助理解。此功能需要先启用服务。