前不久,在张丹老师博客看到了一篇凯利公式的文章,感觉很有意思,但一些核心代码,博客上(http://blog.fens.me/finance-kelly/)并没有提供,仔细学习后,用Python实现了那些核心代码,如果需要的话可以在文末点击阅读原文在我的GitHub上进行查看。
凯里公式是这样的:假设有一个游戏赌局,你赢的概率是80%,输的概率是20%,赢时的净收益率是100%,输时的亏损率也是100%。如果赢,你每赌1元,那么赢得1元;如果输,则每赌1元,就会输掉1元。赌局可以进行无限次,每次下的赌注可由你自己任意定。如果你的初始资金是100元,那么怎么样下注,即你每次赌多钱,多少仓位,才能使得长期收益最大?
对于胜率80%,从感觉上应该是很有把握的事情了。那么我们先主观判断一次,用90%的仓位去赌一下,看看结果怎么呢?如果下注10次,按80%胜率,8次胜,2次负。我们来模拟10次,计算一下最后的结果,最终可以获利69.84.
数据表格
win dat
0 1 190.000000
1 0 19.000000
2 1 36.100000
3 1 68.590000
4 1 130.321000
5 1 247.609900
6 1 470.458810
7 0 47.045881
8 1 89.387174
9 1 169.835630
资金曲线