3、凯利公式基础:数学推导、最优仓位与局限性
说到资金管理,凯利公式是个绕不开的话题。我最早接触它是在做期货CTA策略的时候,那时候总想着怎么让利润跑起来,结果回撤大得吓人。后来一位前辈跟我说:「你去看看凯利公式吧。」嗯,这一看,就回不去了。
凯利公式的核心思想其实很简单:在已知胜率和赔率的情况下,找到一个最优的下注比例,让长期资金增长最快。说白了,它解决的是「我该押多少」这个问题。
3.1 凯利公式的数学推导
我们先从最简单的场景说起。假设你有一个交易策略,每次交易胜率是p,赔率是b(赔率的意思是,你赚的时候赚b倍,亏的时候亏1倍)。你每次投入本金的比例是f。那么,一次交易后,你的资金变化有两种可能:
- 盈利:资金变成 1 + bf
- 亏损:资金变成 1 - f
经过n次交易后,你的资金增长率G可以写成:
G = (1 + bf)^(np) * (1 - f)^(n(1-p))
取对数,得到对数增长率:
log(G) = n * [p * log(1 + bf) + (1-p) * log(1 - f)]
我们要最大化这个对数增长率。为什么取对数?因为对数增长率对应的是「复利增长」,这才是我们真正关心的。你想想看,单次赚多少不重要,重要的是长期能滚多大。
对f求导,令导数为0,得到:
f* = (bp - (1-p)) / b
化简一下:
f* = (p(b+1) - 1) / b
这就是凯利公式的经典形式。我习惯把它记成:最优仓位 = (胜率 × 赔率 - 败率) / 赔率。嗯,这样好记多了。
核心公式:
f* = (p × b - q) / b
其中 p = 胜率,q = 1-p = 败率,b = 赔率(盈亏比)
3.2 最优仓位计算实战
公式有了,怎么用?我拿一个实际例子来说。假设你开发了一个趋势跟踪策略,历史回测显示:
- 胜率 p = 40%
- 赔率 b = 2.5(平均盈利是平均亏损的2.5倍)
代入公式:
f* = (0.4 × 2.5 - 0.6) / 2.5
= (1.0 - 0.6) / 2.5
= 0.4 / 2.5
= 0.16
也就是说,每次交易应该投入本金的16%。
我在项目中遇到过一个问题:很多人算出来f*是0.16,就直接用16%去交易了。结果呢?连续几次亏损后,心态崩了。为什么?因为凯利公式假设你的胜率和赔率是精确已知的,但实际中这些参数都是估计值,有误差。
所以我的习惯是:用半凯利或者四分之一凯利。比如上面算出来16%,我实际只用到8%甚至4%。这样既能享受复利增长的好处,又不会因为参数估计偏差而爆仓。
实用建议:
我个人建议,实盘时使用凯利公式计算值的25%-50%。
即:实际仓位 = f* × 0.25 到 f* × 0.5
再来看一个例子。假设你的策略胜率很高,比如p=70%,但赔率只有b=0.5(赚的时候赚0.5倍,亏的时候亏1倍)。算一下:
f* = (0.7 × 0.5 - 0.3) / 0.5
= (0.35 - 0.3) / 0.5
= 0.05 / 0.5
= 0.1
只有10%。你看,胜率高不代表仓位可以大,还得看赔率。这就是凯利公式的妙处——它同时考虑了胜率和赔率两个维度。
3.3 凯利公式的局限性
凯利公式很漂亮,但别把它当圣杯。我曾经吃过它的亏,这里把坑给大家列出来。
⚠️ 凯利公式的五大局限:
- 参数估计误差:胜率和赔率都是历史数据算出来的,未来可能完全不一样。你想想看,一个策略在回测里胜率60%,实盘可能只有40%。用60%算出来的仓位,实盘就是灾难。
- 连续亏损风险:凯利公式假设每次交易独立,但实际中亏损经常是连续的。我记得有一次,我的策略连续亏损了8次,按凯利公式算的仓位,回撤直接到了40%。
- 忽略交易成本:公式里没考虑手续费、滑点。高频交易中,这些成本会吃掉很大一部分利润。
- 不适用于非对称风险:有些策略的亏损不是固定的1倍,可能亏0.5倍也可能亏2倍。凯利公式的原始形式处理不了这种情况。
- 心理承受能力:凯利公式追求的是长期最大增长,但中间的回撤可能超过你的心理底线。我曾经见过一个朋友,按凯利公式算出来仓位30%,结果回撤20%就受不了了,割肉离场。
那怎么办?我的做法是:把凯利公式当作一个参考上限,而不是目标仓位。具体来说:
- 用凯利公式算出f*
- 取f*的25%-50%作为实际仓位
- 根据账户规模调整:小账户可以激进一点,大账户要保守
- 结合最大回撤限制:如果凯利算出来的仓位会导致回撤超过你的容忍度,那就再减半
下面这张图展示了凯利公式的核心逻辑,我画了个流程图,方便你理解:
最后说一句,凯利公式是个好工具,但它不是万能的。我见过太多人把凯利公式当成「稳赚公式」,结果亏得一塌糊涂。记住:任何数学模型都有假设条件,脱离假设谈应用,就是耍流氓。
我的经验总结:
1. 凯利公式算出来的f*,当作上限,别当目标
2. 实盘用半凯利或四分之一凯利
3. 结合最大回撤限制,动态调整仓位
4. 定期重新评估胜率和赔率,参数变了仓位也要变
嗯,凯利公式就讲到这里。记住它的核心:在不确定中寻找最优解,但永远给不确定性留足空间。
公众号:蓝海资料掘金营,微信deep3321