數學家的賭局:凱利公式推導證明!
[color=#000][font=inherit][size=16px][b]本文摘要:[/b][/size][/font][/color][b][url=http://www.bituzi.com/2013/06/KellyIronman.html][font=inherit]上篇[/font]文章[/url][font=inherit]推出後,許多人來信希望能提供凱利公式詳細的推導過程。牧清華一向不喜歡講解複雜的數學公式,原本想一一回信就好。[/font][/b][b][font=inherit]但想了想,若讀者能"大略瞭解"凱利公式的推導,相信在資金管控上的修練肯定更高一層。因此我還是試著用儘量[/font][/b][b][font=inherit]簡單的方式陳述,[/font][/b][b][font=inherit]希望不會澆滅投資者對交易的熱忱。當然,目的只有一個 --[/font][/b][b][/b]
[b][font=inherit]祝大家都賺大錢![/font][/b]
[color=#000][font=Arial, 微軟正黑體, "][size=16px][font=inherit]凱利公式推導 (單一事件賭局)[/font][/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px][font=inherit][b][url=http://www.bituzi.com/2013/05/blog-post_29.html]單一事件賭局[/url]:[font=新細明體, serif]勝率為[/font][i]p[/i][font=新細明體, serif],賠率為[/font][i]b [/i]([font=新細明體, serif]壓[/font]1[font=新細明體, serif]元贏了可拿回[/font]1+[i]b[/i][font=新細明體, serif]元,輸了[/font]1[font=新細明體, serif]元全賠光[/font])[/b][/font]
[font=inherit][font=新細明體, serif]假設這賭局可不斷的重複玩下去[/font][font=新細明體, serif],且每次都壓手上全部資金的比例 [/font][i]f [/i](例如 [/font][i]f [/i][i]= [/i][font=inherit]60[/font][font=inherit]%)[/font][font=新細明體, serif]。我們的工作是去決定這個 [i]f [/i]該選多少,使得在玩過多次賭局後,資金成長最快。[/font]
[font=inherit]假設 [i]A[/i]t
[font=新細明體, serif]表示玩到第 [/font][b][i]t [/i][/b][font=新細明體, serif]次賭局後的資金,我們分成下面兩個CASEs討論:[/font][/font]
[font=inherit]
[/font]
[font=inherit][font=新細明體, serif]CASE 1:若第 [/font][b][i]t [/i]- 1[/b][font=新細明體, serif]次賭局的結果為[b]贏[/b],則 [/font][b][i]At[/i] = [i]A[/i][i]t[/i]-1(1 + [i]bf[/i]) [/b][/font]
[font=inherit](說明) 因為每次都壓原來資金[/font][font=inherit]的 [i][b]f [/b][/i][/font]比例[font=inherit]。換句話說,在時間點 [i][b]t [/b][/i][/font]-[font=inherit] 1時一共壓了[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit][i]f [/i]那麼多資金。因為賭局結果為贏,且賠率為[i][b]b[/b][/i],所以會淨賺[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit][i]fb[/i],再加上原來的資金[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit],故在時間點 [i][b]t [/b][/i]的資金變為 [/font]
[align=center][b][i]A[/i][i]t[/i] [/b][b][i]= A[/i][i]t[/i]-1 [/b][font=inherit]+ [/font][b][i]A[/i][i]t[/i]-1[/b][i]fb = [/i][i]A[/i][i]t[/i]-1[b](1 + [/b][i]bf[/i][b])[/b][/align]
[font=inherit][font=新細明體, serif]CASE 2: 若第[/font][b][i]t - 1[/i][/b][font=新細明體, serif]次賭局[/font]的結果為[b]輸[/b],則 [b][i]At[/i] = [i]A[/i][i]t[/i]-1(1 - [i]f[/i])[/b][/font]
(說明) [font=inherit]因為[/font]每次都[font=inherit]壓原來資金[/font][font=inherit]的 [i][b]f [/b][/i][/font]比例[font=inherit]。換句話說,[/font]在時間點 [i][b]t [/b][/i]- 1時[font=inherit]一共壓了[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit][i]f [/i]那麼多資金。因為賭局結果為輸,且所壓的資金是全部輸光,所以一共賠了[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit][i]f[/i],[/font][font=inherit]故在時間點 [i][b]t [/b][/i]的資金變為 [/font]
[align=center][b][i]A[/i][i]t[/i] [/b][b][i]= A[/i][i]t[/i]-1 [/b][font=inherit]- [/font][b][i]A[/i][i]t[/i]-1[/b][i]f = [/i][i]A[/i][i]t[/i]-1[b](1 - [/b][i]f[/i][b])[/b][/align]
有了上面兩個CASEs後,我們可以開始計算每一次賭局後的資金變化:
[font=inherit]只要下一個時間點贏,就將原來的資金[/font][font=inherit]乘上[/font][b](1 + [/b][i]bf[/i][b])[/b][font=inherit];只要下一個時間點輸,就將原來的資金乘上[b](1 - [/b][i]f[/i][b])[/b]。[/font]
我們假設總共玩了[i][b]T[/b][/i]次。[font=新細明體, serif]在[/font][i][b]T[/b][/i][font=新細明體, serif]次的賭局裡,贏了[/font][i][b]W[/b][/i][font=新細明體, serif]次,輸了[/font][i][b]L[/b][/i][font=新細明體, serif]次 [/font]([font=新細明體, serif]也就是[/font][b][i]T [/i][/b]= [b][i]W [/i][/b]+ [b][i]L[/i][/b])。因此,從一開始 (時間點為 [i][b]t[/b][/i] = 0)手上的資金為 [i]A[/i][b]0[/b],到時間點 [i][b]T [/b][/i]的總資金可以表示如下:
[align=center][b][font=inherit][i]AT [/i]=[i] A[/i]0(1 + [i]bf[/i])[i]W[/i](1 - [i]f[/i])[i]L[/i][/font][/b]
[b][font=inherit][i]
[/i][/font][/b][/align]
[/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px]再來要做的工作便是決定 [i][b]f [/b][/i]多少,使得[b][font=inherit][i]AT [/i][/font][/b]可以最大化。這就完全是微積分求最大值的計算問題。我們用下面圖一展示這個計算推導。
[table=98%,transparent]
[tr][td][url=http://4.bp.blogspot.com/-5Bw2DSvEkx8/UbiiGVoMp3I/AAAAAAAAANo/yKlBV3fBOQc/s1600/2013-06-13_002952.png][attach]10673[/attach][/url][/td][/tr]
[tr][td]圖一:單一事件賭局的凱利公式推導[/td][/tr]
[/table][b]結論:由上面推導可知,每一次賭局所要投入的資金比例為期望淨利除上賠率。注意到當期望淨利為正的時候(分子為正),變是第一篇所提的[url=http://www.bituzi.com/2013/05/choose-your-game.html]有利賭局[/url]。只有在有利賭局的時後,才值得下注,而上面的推導告訴你該怎麼下注?以上為單一事件凱利賭徒的解釋與證明。[/b][/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px][font=inherit]凱利公式推導(多重事件賭局)[/font][/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px][b][font=inherit][url=http://www.bituzi.com/2013/06/KellyIronman.html]多重事件賭局[/url]:一枚硬幣賭局,人頭出現機率為[/font] [i]p[/i]1[font=inherit],賠[/font]率為 [i]b[/i]1[font=inherit];數字出現機率為[/font][i]p[/i]2[font=inherit],賠[/font]率為 [i]b[/i]2[font=inherit]。[/font][/b]
[font=inherit]假設每次下注的方式為[/font][font=inherit]壓資金的[/font][b][i]f[/i]1 [/b][font=inherit]比例在人頭,壓資金的[/font][b][i]f[/i]2 [/b][font=inherit]比例[/font][font=inherit]在數字。(註:[/font][b][i]p[/i]1 [/b]+ [b][i]p[/i]2 [/b]= 1;[b][i]b[/i]1 [/b]+ [b][i]b[/i]2 [/b]= 1[font=inherit]),則 [/font][b][i]f[/i]1 [/b][font=inherit]與 [/font][b][i]f[/i]2 [/b][font=inherit]要如何決定,[/font]可以使得玩過多次賭局後,資金成長最快。(註: [b][i]f[/i]1[/b][b] [/b]+ [b][i]f[/i]2[/b]界在0與1之間 (包含))
[font=inherit]類似單一事件賭局的推導過程,我們假設[i]A[/i]t
[font=新細明體, serif]表示玩到第[/font][b][i]t[/i][/b][font=新細明體, serif]次的總資金,我們分成下面兩個CASEs討論:[/font][/font]
[/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px][font=inherit][font=新細明體, serif]CASE 1:若[/font][font=新細明體, serif]在第[/font][i]t [/i][b]- 1[/b][font=新細明體, serif]回合人頭出現[/font][font=新細明體, serif],則 [/font][b][i]At[/i] = [i]At-[/i]1(1 + [i]b[/i]1[i]f[/i]1– [i]f[/i]2)[/b][/font]
(說明) [font=inherit]因為每次都壓原來資金[/font][font=inherit]的 [/font][b][i]f[/i]1[/b]
比例在人頭上,[b][i]f[/i]2[/b]比例在數字上[font=inherit]。如果時間點 [i][b]t [/b][/i]- 1時人頭出現,[/font][font=inherit]且賠率為[/font][b][i]b[/i]1[/b][font=inherit],則可淨賺[/font][b][i]A[/i][i]t[/i]-1[/b][b][i]b[/i]1[/b][b][i]f[/i]1[/b][font=inherit],但是壓在數字上面的金額[/font][b][i]A[/i][i]t[/i]-1[/b][b][i]f[/i]2 [/b][font=inherit]會全部輸光。最後,再加上原來資金[/font][b][i]A[/i][i]t[/i]-1[/b][font=inherit],故在時間點 [i][b]t [/b][/i]的資金變為 [/font]
[align=center][b][i]A[/i][i]t[/i] [/b][b][i]= A[/i][i]t[/i]-1 [/b][font=inherit]+ [/font][b][i]A[/i][i]t[/i]-1[/b][b][i]f[/i]1[/b][b][i]b[/i]1[/b][b] [/b][b]–[/b] [b][i]A[/i][i]t[/i]-1[/b][b][i]f[/i]2[/b][i] = [/i][i]A[/i][i]t[/i]-1[b](1 + [i]b[/i]1[i]f[/i]1– [i]f[/i]2)[/b][/align]
[font=inherit][font=新細明體, serif]CASE 2:若[/font][font=新細明體, serif]在第[/font][i]t [/i][b]- 1[/b][font=新細明體, serif]回合數字出現[/font][font=新細明體, serif],則 [/font][b][i]At[/i] = [i]At-[/i]1(1 + [/b][/font][b][i]b[/i]2[/b][b][i]f[/i]2– [i]f[/i]1)[/b]
(說明) 此部份的推導過程完全與CASE 1對稱, [b][i]f[/i]1[/b]跟[b][i]f[/i]2[/b]、[b][i]b[/i]1[/b]跟[b][i]b[/i]2[/b]對調而已。
有了上面兩個CASEs後,我們可以開始計算每一次賭局後的資金變化。
[font=inherit]只要下一個時間點人頭出現,就原來的資金[/font][font=inherit]乘上[/font][b](1 + [i]b[/i]1[i]f[/i]1– [i]f[/i]2)[/b][font=inherit];只要下一個時間點數字出現,就原來的資金乘上[/font][b](1 + [/b][b][i]b[/i]2[/b][b][i]f[/i]2– [i]f[/i]1)[/b]。
[/size][/font][/color]
[color=#000][font=Arial, 微軟正黑體, "][size=16px]我們[font=inherit]假設賭局進行[/font][i][b]T [/b][/i][font=inherit]回合,人頭出現[/font][i][b]W[/b][/i][b]1[/b][font=inherit]次,數字出現[/font][b][i]W[/i]2[/b][font=inherit]次 [/font]([font=新細明體, serif]也就是[/font][b][i]T [/i][/b]= [b][i]W[/i]1[/b]+ [b][i]W[/i]2[/b])。因此,從一開始(時間點[i][b]t[/b][/i] = 0) 手上的現金為[i]A[/i][b]0[/b],到時間點[i][b]T [/b][/i]的總資產可以表示如下:[/size][/font][/color]
[align=center][color=#000][font=Arial, 微軟正黑體, "][size=16px][b][font=inherit][i]AT [/i][/font][/b][b][font=inherit] = [i]A[/i]0(1 + [i]b[/i]1[i]f[/i]1– [i]f[/i]2)[i]W[/i]1(1 + [i]b[/i]2[i]f[/i]2– [i]f[/i]1)[i]W[/i]2[/font][/b]
[b][font=inherit]
[/font][/b][/size][/font][/color][/align]
[color=#000][font=Arial, 微軟正黑體, "][size=16px]再來要做的工作便是決定[i][b]f [/b][/i]多少,使得[b][font=inherit][i]AT [/i][/font][/b]可以最大化。一樣是微積分求最大值的計算問題,只不過在這我們要用偏微分跟一些計算的小技巧(在此省略)。我們用下面圖二展示這個計算推導。[/size][/font][/color]
[table=98%,rgb(251, 251, 251)]
[tr][td][url=http://4.bp.blogspot.com/-GdE8Mh3ul8s/Ubinkej1XfI/AAAAAAAAAN4/zydfCakP1qw/s1600/2013-06-13_005313.png][attach]10675[/attach][/url][/td][/tr]
[tr][td]圖二:多重事件賭局的凱利公式推導[/td][/tr]
[/table][color=#000][font=Arial, 微軟正黑體, "][size=16px][align=center][align=left][b]結論:由上面推導可知,每一次多重事件賭局所要投入的最佳資金比例就是每個事件發生的的機率。對於不確定發生機率的多重事件賭局,上面的推導結果告訴你該怎麼下注?[url=http://www.bituzi.com/2013/06/KellyIronman.html]Bidding Your Belief![/url][/b][/align]
[/align]
[/size][/font][/color]
页:
[1]