凯利公式详解:f* = (bp - q) / b 的数学推导与交易含义

说到资金管理,凯利公式是个绕不开的话题。我第一次接触它是在做期货回测的时候,当时觉得这公式挺玄乎的——凭什么一个数学式子就能告诉我该押多少仓位?后来自己手推了一遍,才明白它背后的逻辑其实很朴素。

从赌场到交易:凯利公式的起源

凯利公式最早是贝尔实验室的约翰·凯利研究出来的。他当时在琢磨一个通信理论问题,后来发现这玩意儿用在赌博上特别合适。再后来,交易员们发现它也能用来算仓位。

公式长这样:

f* = (bp - q) / b

其中:

  • f* —— 最优投资比例(仓位占比)
  • b —— 赔率(盈亏比)
  • p —— 胜率(盈利概率)
  • q —— 败率(亏损概率),q = 1 - p

说白了,这个公式就是在告诉你:给定你的胜率和赔率,每次该押多少本金才能让长期增长最快

数学推导:一步步拆解

推导过程其实不复杂。我们从一个简单的赌博模型开始。

假设你每次下注本金的一定比例 f。赢了,你的资金变成原来的 (1 + bf) 倍;输了,变成原来的 (1 - f) 倍。连续赌 n 次,其中赢了 w 次,输了 l 次(w + l = n),最终资金是:

F_n = F_0 * (1 + bf)^w * (1 - f)^l

取个对数,方便计算:

ln(F_n / F_0) = w * ln(1 + bf) + l * ln(1 - f)

两边除以 n,得到平均对数增长率:

G(f) = p * ln(1 + bf) + q * ln(1 - f)

这里 p = w/n,q = l/n。我们要找的就是让 G(f) 最大的 f。

对 G(f) 求导,令导数为零:

dG/df = p * b / (1 + bf) - q / (1 - f) = 0

解这个方程:

p * b * (1 - f) = q * (1 + bf)
p * b - p * b * f = q + q * b * f
p * b - q = f * (p * b + q * b)
f = (p * b - q) / (b * (p + q))

因为 p + q = 1,所以:

f* = (bp - q) / b

嗯,推导完了。你看,其实就是个求极值的问题。

交易含义:凯利公式到底在说什么

公式本身是数学,但放到交易里,含义就丰富多了。

1. 胜率和赔率的平衡

凯利公式的核心思想是:胜率再高,赔率太低也别重仓。反过来,赔率再高,胜率太低同样不能押太多。

举个例子:

场景 胜率 p 赔率 b 凯利仓位 f*
高胜率低赔率 80% 0.5 (0.5*0.8 - 0.2) / 0.5 = 40%
低胜率高赔率 30% 4 (4*0.3 - 0.7) / 4 = 12.5%
中等胜率中等赔率 60% 1.5 (1.5*0.6 - 0.4) / 1.5 = 33.3%

你看,第一种情况胜率高达80%,但因为赔率只有0.5(赚只能赚一半),凯利建议只押40%。第二种情况胜率只有30%,但赔率是4倍,凯利建议押12.5%。

核心结论:凯利公式本质上是在帮你做「风险-收益」的最优配置。它不关心你单次赚多少,只关心长期复利增长。

2. 什么时候不该下注

如果 f* ≤ 0,说明这笔交易不值得做。从公式看:

f* ≤ 0  =>  bp - q ≤ 0  =>  bp ≤ q  =>  p ≤ q / b

举个例子,如果赔率 b = 1(盈亏比1:1),那么 p ≤ 0.5 时就不该下注。说白了,胜率不到一半的公平游戏,别玩

注意:凯利公式假设你每次下注的比例是固定的,而且交易是独立重复的。实盘中这两条很难完全满足,所以凯利算出来的仓位通常要打折用。

实战中的凯利:我踩过的坑

我曾经在回测一个趋势跟踪策略时,直接用凯利公式算出来的仓位跑实盘。结果呢?连续三次亏损后,账户回撤超过30%。后来复盘才发现,问题出在两点:

  • 参数估计不准:回测的胜率和赔率是历史数据算的,未来不一定重复。
  • 交易不独立:趋势策略的盈亏是序列相关的,凯利公式的独立性假设不成立。

从那以后,我养成了一个习惯:凯利仓位 × 0.25 才是实际仓位。这叫「半凯利」或「四分之一凯利」,虽然增长慢一点,但睡得着觉。

我的建议:凯利公式更适合作为仓位上限的参考,而不是精确的仓位指令。先用它算出一个「天花板」,再根据自己的风险承受能力往下调。

知识体系图:凯利公式的核心逻辑

下面这张图帮你理清凯利公式的来龙去脉:

凯利公式知识体系 f* = (bp - q) / b 胜率 p 赔率 b 败率 q = 1-p 最优仓位 f* 独立重复交易 仓位上限参考 半凯利 ⚠ 注意:参数估计误差、交易非独立性、回撤风险

几个关键点再强调一下

  • 凯利公式不是圣杯:它假设你知道准确的 p 和 b,这在交易中几乎不可能。我一般用历史回测的保守估计值。
  • 仓位要打折:实盘中,我建议用凯利仓位的 1/4 到 1/2。增长慢点没关系,活得久更重要。
  • 别在连续亏损后加仓:凯利公式不包含「赌徒谬误」——它假设每次交易独立。连续亏损后,你的胜率并不会自动回升。

一句话总结:凯利公式告诉你「最多押多少」,而不是「应该押多少」。真正的仓位,要在凯利仓位的基础上,结合你的心理承受能力和资金规模来定。

好了,凯利公式的推导和含义就聊到这儿。下一章我们聊聊怎么在实际策略中估算 p 和 b——这两个参数估不准,公式再漂亮也没用。


专注资料整理