凱利公式

2021-03-02 巴奇

對於投資或投機或賭博有所關注的人,相信對於「凱利公式(Kelly Formula)」都不會陌生,甚至於稱其為「大名鼎鼎」也不為過。

網絡上關於凱利公式的資料相當豐富,本文並談不上有什麼新的信息量或切入點,純粹只是通過整理輸出,來為自己加深些印象。同時,借著凱利公式的數學推導過程,熟悉一下數學公式編輯神器Latex的語法規則。

凱利公式,最早起源與AT&T貝爾實驗室的科學家約翰-凱利對於賭徒賭馬問題的研究,凱利希望研究出在這種可重複博弈的賭局中,如何通過優化下注策略,來使得整體收益最大化。在得出了「凱利公式」後,據說這一研究成果首先被一位嗅覺靈敏的名為「愛德華-索普」的人應用於21點賭局以及股票市場,並以此大殺四方賺了個盆滿缽滿。網絡上關於凱利公式的文章,通常也有些傳奇意味,甚至有些標題黨,例如將其稱為「倉位管理神器」,更誇張一些的甚至說「巴菲特憑藉正是凱利公式成為了世界首富」。

到底是不是如此神奇?難道真的可以以此橫掃拉斯維加斯和華爾街?顯然一個簡單的邏輯可以給出答案是——「不可能」。倘若當真如此的話,數學老師們應該通通轉行當金融大亨了,學校裡的數學真的只能靠體育老師來教了,再則拉斯維加斯也應該早就倒閉了。投資是一個系統工程,倉位管理只是其中的一個環節,當然是不可或缺的環節。所以理性來說,凱利公式肯定有價值,但期望一招定乾坤?那顯然就是小龍女的大侄子——過兒了。

從賭局說起

在數學語境下,「賭博」並算不上是一個貶義詞,畢竟現代數學的重要分支——統計學及概率論,最早就起源於17世紀數學家帕斯卡、費馬等人對賭博的研究。數學中討論的賭博,更像是對抽象的不確定性及隨機性事件的一種通俗易懂的指代和建模。當然,我想數學家們在潛心研究隨機性事件時,也可能都有過拿拉斯維加斯或華爾街當ATM機的美好理想。

圓規正傳,先看這樣一個最簡單的賭局:

甭管扔硬幣也好,扔骰子也好,賭馬也好,總之在這個賭局中,已知你有45%的概率勝出,也就意味著你有55%的概率失敗。如果失敗,你將虧損掉你所有下注的本金。但如果勝出,你將獲得2倍於下注本金的收益。簡單來說,就是你下注1元,如果輸掉,則1元輸光。如果勝出,則可以賺到2元(連同1元本金,拿回3元)。在這裡,你的勝率是45%,你的賠率為2(本文的賠率都特指淨賠率,或稱為盈虧比。例如本次賭局中,賠率等於2,而不是3。一些賭球平臺經常拿毛賠率來替代淨賠率,若不注意的話很容易掉進這樣的小陷進中)。且前後兩次賭局事件完全獨立,並且可以不停的重複下注,當然前提是你手裡仍有籌碼可繼續下注。

那麼在這樣一種情境下,是否存在某種特定的下注策略,使得你最終的期望收益最大化呢?

首先,我們可以這樣想,每盤都all in肯定是一個壞策略。因為假設你每盤都all in,也即每盤都將所有本金下注,那麼哪怕你前面運氣爆棚連贏99把,在第100把輸的話,也將瞬間歸0出局。

那麼是否存在另一種下注策略來使得期望收益最大化呢?例如下注固定的一個金額?或者一個固定的比例?或者一個動態浮動的比例?

對於每次固定金額(例如每次下注10塊錢)的這種策略,我們可以較為簡單地判斷它不可能是最優。因為假設手裡有100塊籌碼,和100萬籌碼甚至100億的籌碼,顯然是截然不同的情境,不可能都採用同樣的一個下注金額。

憑藉數學直覺,如果有最優解,那應該是某個固定比例的金額。當然,數學不能憑藉直覺,必須通過嚴格的推導證明。對於固定金額的這種策略,也可以通過嚴格的數學證明,證明它肯定不是最優解,但篇幅有限本文不展開證明。我們直接討論固定比例的策略,也就是每次下注相當於本金的固定比例的金額(例如每次下注手上本金的30%或50%等)。

當然,答案是存在這樣一種最優的下注策略,其結論就是凱利公式。

網絡上關於凱利公式的最常見版本是這樣的,假設每次下注的倉位比例為f,那麼凱利公式表述為:

這其中,b代表了淨賠率(或盈虧比),p代表了勝率,q代表了失敗率。在特定的賭局中,b、p、q都是已知的且固定的參數,那麼我們就可以代入上面的公式,算出最佳的倉位比例。

例如我們上文提到的賭局,,代入公式可得:

這也就是說,我們的最佳下注比例是本金的,也就是說,只要我們每次下注,都嚴格按照當時所擁有本金的17.5%進行下注,那麼經過大量的足夠多的重複下注之後,我們最終的收益,會是所有不同下注方式中表現最優的。

這個結論對不對呢?首先比較容易想到的是通過計算機模擬,也就是常說「蒙特卡洛方法」。我們給定相應的概率和賠率,通過計算機模擬隨機性,進行數百萬次甚至數千萬次的下注。給定不同的下注比例,最終會得到不同的下注結果,並得到一條不同的收益曲線。

這部分模擬我並沒有親自去做,其代碼並不複雜,已經有非常多的人去做了模擬。可以確定的是,當你的模擬下注次數足夠多時,我們得到的結論都是——「按照凱利公式得到的倉位比例下注」,最終得到的曲線是最優的。

那麼是否經過大量的計算機模擬,甚至賭場實踐,都得到了凱利公式是最優下注方式之後,我們就可以認定凱利公式一定是最優解了呢?

從數學的角度看,可以肯定的說這是不行的,因為我們僅僅通過實驗和模擬,我們仍無法確定,這個凱利公式,到底是基於凱利的經驗總結呢?或是基於計算機進行函數擬合呢?還是嚴格的數學推導呢?倘若只是單純的經驗總結,或者擬合得到的公式,顯然它的根基並不那麼牢靠。但如果是經過嚴格的數學推導得到,那麼它就絕對值得信任。如果是嚴格基於題目給出的前置條件,甚至可以說是絕對正確的。

在物理化學等實驗科學層面,倘若一個結論,經過了大量的實驗驗證且都正確,其基本邏輯解釋又是合理的,那麼通常就有機會將其歸為某種定律,並正式地納入當下的科學體系。但數學不同,數學是形式科學而不是實驗科學,一個結論哪怕進行了上百億次的實驗驗證,也無法替代邏輯演繹本身。一個最典型的例子就是黎曼猜想,如今人們已經藉助計算機,進行了百億次甚至更大數量級的模擬驗證,黎曼猜想的結論都是正確的,但這並不能代替數學的邏輯演繹本身,因此黎曼猜想仍然只是猜想,還不能成為黎曼定理。這就是形式科學和實驗科學的本質性不同。

為了追求數學級別的嚴謹,我們也需要完全基於數學公理體系之下的邏輯演繹推導凱利公式。

下面,就讓我們一起走一遍這個充滿美感的數學過程。

凱利公式的數學推導

在正式開始推導過程之前,先說一個簡單的結論,也就是上面所表述的凱利公式是對的,但又不全對,因為它缺乏通用性,實際上是特殊化的公式。也就是僅僅適用於失敗時虧損比例為本金100%的這樣一種特殊情況。顯然這種情況有很大的局限性,例如股票的投資場景,當我們投資失敗時,虧損比例通常是本金的一定比例,例如20%,50%等,所以以上版本的公式就缺乏了通用性。

為了推導出更具普適性的公式版本,我們需要對變量名重新做一次約定。

變量名及符號約定

假設初始資產(也即本金)為,在進行了N次下注後資產變為Xn,

該賭局或者投資行為的成功概率為,失敗概率為,顯然有,或。

(收益比例): 當下注成功時,以本金作為基準的收益比例為

(虧損比例): 當下註失敗時,以本金作為基準的虧損比例為

b(淨賠率或盈虧比):定義,稱為淨賠率(或盈虧比)

N(總下注次數):須假定N足夠大(在概率論中的大數定律,當N足夠大,頻率會最終收斂於概率)

f(固定下注比例): 每次固定的下注比例。

我們的基本解題思路是,將作為自變量構建收益函數,進而將其轉化為數學中的求極值問題。

根據以上符號約定,當第次下注後資產為,第次下注後資產為。

如果第次下注成功,下注比例為,顯然有,等式右側提取公因數後,即。

同理,如果第次下註失敗,則

根據大數定律,則當總下注次數足夠大時,期間成功的總次數為(嚴謹地說應該是收斂於)次,失敗的總次數為次

則不難得出,當進行完全部次下注後,的表達式為:

將等式兩邊同時除以,等式左側變為了,其含義就是投資中常說的「淨值」,給其一個新的函數代號,則有:

顯然,是一個關於的函數,可記為。至此,問題完全轉化一個經典的並不算複雜的函數求極值問題:自變量取什麼值時,函數取得最大值?

先將等式兩邊同時取對數。為何要同時取對數?主要原因在於:

對數函數是在其定義域內是嚴格的單調遞增函數。對某個函數取對數之後,不會改變原有函數的極值點。也即如果有某個函數在某處取得最大值或者最小值,對其取對數之後的新複合函數,仍然在相應的點取最大值或最小值,因此在求極值問題時常常使用。

根據對數的運算法則,取對數可以起到「降維」效果,可將指數運算轉化為乘積,將連續乘積變為連加。

等式兩邊同時取對數後,我們給予新的函數一個新的函數名,仍然是關於的函數,記為,則有:

根據對數基本運算法則,可得:

令對求導,根據複合函數求導法則,可得:

為求極值,令導數為,也即:

等式兩邊同時除以N,並交叉相乘,可得:

進一步展開,並移項整理,可得:

又由於,整理可得:

等式右側約分,可得:

至此,我們基於嚴格的數學證明,得到了一個通用性更強的凱利公式版本。

此外,我們還可以引入常見的賠率(盈虧比),來得到另一個等價版本。

將淨賠率(盈虧比) ,代入以上公式,並進行一系列等式變換後,可得到

以上就是凱利公式的另一個等價版本。

如果回歸到文章開頭所指的賭局類型問題時,當時,則公式簡化為:

這就是網絡上最常出現的凱利公式版本,顯然,它只是當的特殊形式,不具備通用性。

簡單代入計算

當我們代入不同的參數,計算得到不同的f,如<=0則代表不應該下注。如>0則代表可以下注,如>1則代表不僅可以下注,還應該開槓槓。

若要使得,則必須有,也即,期望收益為正才值得下注,若期望收益為0或為負,計算得到的倉位比例

賭 局勝率 

凱利公式在股票投資應用時,有一定的局限性,主要原因在於:

首先最重要的一點,股票投資中,勝率以及賠率,都只可能是一個預估值,有時候甚至會是一個很主觀的偏差很大的預估值,甚至可能只是臆測。當勝率及賠率出現很大偏差時,計算得到的倉位比例也就失去了參考價值。當然,我們可以通過一些相對更科學的方法來避免過大的偏差,例如基於該股票自身的歷史數據,或者可對標的其它股票的數據等來近似計算得到勝率及賠率,這樣的方式相對會更合理一些,但是仍然不可能做到類似或接近像拋硬幣扔骰子這類賭局中的「可計算概率」那般準確。

當前的凱利公式忽略了時間的因子。在傳統的拋硬幣扔骰子的賭局中,每次結果幾乎都是即時反饋的,時間因子可以忽略。而在股票投資中,股票上漲或下跌的幅度,與你所選定的時間周期是息息相關的,例如是1周?1個月?還是1年?合理的股票版本的凱利公式,應該結合時間周期這個因子。

凱利公式的數學有效性,是建立在大量重複下注的前提下,也即N足夠大,這是因為只有N足夠大,大數定律才會發揮作用。如果是少數幾次的下注,隨機性佔主導,凱利公式並不能保證有更優的結果。尤其在股票投資中,當股票周期拉長時,下注次數就勢必降低。也會對於公式有效性產生一定影響。

凱利公式背後思想的啟發

或許有人會想,我為人剛正不阿這輩子都不會去參與賭博,甚至不會去買賣股票,那麼凱利公式對我而言,是不是毫無意義呢?

絕非如此,我認為凱利公式背後「結合概率及賠率來進行科學決策」的核心思想,仍然可以對我們的生活日常決策有很大的啟發。

大到擇校擇業擇房擇偶,小到如何支配我們接下來10分鐘的注意力或時間,我們無時無刻不在做決策,可以說我們的人生就由若干大大小小的選擇疊加而成。一個人內在的決策系統或者說表現出來的決策能力,是一個最重要最綜合且最核心的能力,但是卻很容易被我們忽視。

我甚至覺得我們的大學課程甚至高中課程,就應該有一門專門的獨立的決策課程,教我們如何科學的構建自身的決策體系,為決策體系建模等等。顯然,短期內不可能有這樣的系統課程,但是其重要程度決定了,我們仍然有必要努力去探索並構建這樣一個決策系統。一個好的決策系統,不可能保證我們每次都做出最優選擇,但是卻可能幫我們大大提升決策的成功率,或者幫助我們儘量避免做出一些極其低級極其愚蠢的決策。那些只要帶上一些概率及賠率思維就能避免的愚蠢決策,其實每天都在大量地發生。

相比起凱利公式,決策系統會是一個大得多得多的課題,但今天到此為止了。

相關焦點

  • 凱利公式 @    約翰·凱利
    公式起源於凱利對信息噪音的研究,同屬於香農的資訊理論理論範疇。具體理論深奧,與咱們投資領域無關。 老唐舉個簡單的例子來幫助理解信息噪音。 信息的傳遞是有噪音的,比如你收到一條信息,內容是「索普沒有偷你的錢」。 這句話要傳達的真實信息,可能是以下任何一種:①索普沒有偷你的「錢」——他偷的是你的手錶。
  • 凱利公式 @    約翰·凱利
    公式起源於凱利對信息噪音的研究,同屬於香農的資訊理論理論範疇。具體理論深奧,與咱們投資領域無關。 老唐舉個簡單的例子來幫助理解信息噪音。 信息的傳遞是有噪音的,比如你收到一條信息,內容是「索普沒有偷你的錢」。 這句話要傳達的真實信息,可能是以下任何一種:①索普沒有偷你的「錢」——他偷的是你的手錶。
  • 收益最大化的投資公式——凱利公式
    好,今天我們藉助索羅斯的這選擇題,來一起學習一個最佳投注比例公式:也叫做凱利公式,凱利公式是一種計算,如何收益最快,又不至於押注過大造成資金不足的資金管理方法。這個公式起源於上個世紀60年代,凱利公式的表達式為f*(star)=回報率乘以賺錢的概率,-最大虧損率乘以失敗的概率再除以 損失率和回本率 聽這個公式可能有點懵,你別著急,我們先來個你舉一個最簡單的例子,來幫你理解這個公式,給你舉個最簡單的例子來代入這個公式,就是拋硬幣,這個遊戲裡很顯然,你輸和贏的概率均為是50%,下面我們說說他的賠率是多少
  • 凱利公式在FOF/MOM子基金配置中的應用
    A 凱利公式的起源  凱利公式最初為AT&T貝爾實驗室物理學家約翰·拉裡·凱利根據同事克勞德·艾爾伍德·香農於長途電話線雜訊上的研究所建立。凱利說明香農的資訊理論要如何應用於一名擁有內線消息的賭徒在賭馬時的問題。賭徒希望決定最佳的賭金額,而他的內線消息不需完美,即可讓他擁有優勢。
  • 你以為學會了凱利公式,就能成為巴菲特嗎?
    還有朋友留言提到我的計算法方式及倍投方案太過簡單,真正的賭徒都是利用凱利公式進行下注,說實話小編在接觸網絡賭博時並沒有真正了解過凱利公式,不過自從戒賭之後,開始慢慢學習賭博世界裡的數學知識,相比較賭場背後的高斯、凱利、伯努利等大神,我所學習了解的只是皮毛,而這些皮毛已經令小編對賭博望而生畏……
  • 別去賭場了,你永遠贏不了「凱利公式」
    導言:1956年,科學家 John Kelly 發表了篇論文,論文中包括了後來被廣泛流傳的「凱利公式」,很快「凱利公式」就被了解博弈論的人應用到了賭博和投資資金管理上去,其中就有用電腦輔助做量化投資的先驅Ed Thorp。Ed Thorp 把利用電腦進行量化投資的模式應用到了金融市場上,他成立了一個對衝基金,在28年裡的平均回報率是每年20%。
  • 軸心點和凱利公式
    外匯中有許多技術分析,今天就和大家分享一個能用公式計算出來的系統--軸心點系統。它的使用方法也很簡單,首先要計算出軸心點,一般以日K線的最高價、最低價、收盤價相加除以3得出來的點位就是軸心點(也有用開盤價來計算的,這個公式不唯一,目前我了解的是用最高價、最低價和收盤價去計算),軸心點就是K線多空力量的平衡點。
  • 凱利公式啟示:贏得勝利的唯一法則是「不賭」
    3賭場大BOSS凱利公式:先告訴你怎麼下注凱利公式在高級賭徒的世界裡大名鼎鼎,那什麼是凱利公式,我們先看一個例子:有一個簡單2賠1的賭局,扔硬幣下注,硬幣為正面則得2元,如果為反面則輸掉1元,你的總資產為
  • 答案在「凱利公式」
    凱利創造了一個公式,可以用來計算每一場比賽應該投入的資金比例。這個公式發表於《貝爾系統技術期刊》。這個公式並不困難,可以用一定的代數基礎來理解。公式如下:其中:然而如果計算的f等於或小於0,則沒有最優解,也就是說,從整個賭徒群體來看,大多數人總是輸得更多;b是優勢比,即淨收益除以淨損失;p是每場比賽獲勝的概率;q是每次比賽失敗的概率。
  • 漫畫:什麼是神秘的「凱利公式」?
    凱利公式究竟是什麼樣子呢?看起來非常簡單:在公式當中,p 代表每一場獲勝的機率q 代表每一場失敗的機率(q=1-p)b 代表「賠率」,也就是盈虧比f 代表每次下注金額佔總資金的百分比我們把剛才的例子帶入公式來算一算:由於勝率是60%,失敗的機率是1-60%=40%,所以p=60%,q=40%假如投注50元,贏了可以收回100元,淨賺50元,輸了淨虧50元,那麼賠率就是1:1,b=1(注意:計算賠率是用 淨收入/淨虧損,網上有些文章搞錯了,把這種情況的賠率當成了2:1)帶入公式當中
  • 初識凱利公式及等價鞅策略!
    剴利公式: 在反等價鞅策略下,每次下賭注的百分之多少,才可以實現最快的盈利?凱利公式廣泛應用於各個投資領域,失敗的案例一直多過成熟的案例,現實的世界從來不會如理論那般嚴謹,但是,它的卓越無法讓你懷疑,通過理論來預測不確定的結果,這已經是最靠譜的方式了,我沒有說明白凱利公式如何在不同投資標的上面的具體應用,是因為需要你自己去適應這個公式,對的,是適應,不是使用。找到你的最佳勝率,找到你的最佳賠率,然後預測最佳結果。等價鞅策略:虧損是發散的!
  • 美國節目暗箱操作,總結出凱利公式,證明為什麼賭博最後只會輸
    所以贏率1:2,賠率1:1,把數據帶入凱利公式裡面,就能得到收益最大化25%。這套神奇的凱利公式,可以幫助賭場和賭徒制定一個範圍,但是真正知道和能夠運用它的人並不多,所以不要說一定會贏了,大家連它的來處都不知道。凱利公式誕生於1955年,總結出它的人名叫約翰。
  • 因為你永遠贏不過科學,凱利公式算得明明白白的
    你永遠不可能贏,因為,你是永遠贏不了的是凱利公式。賭博靠的不是技巧和運氣嗎?這裡面怎麼還有公式啊!凱利公式是一個用來使用在特定賭局中,擁有正期望值之重複行為長期增長率最大化的公式。不僅適用於牌桌遊戲,也適用賭馬、賭球、麻將牌九和股票市場等等大部分的賭博行為之中。什麼是凱利公式呢?舉個例子:100太多1塊太少,那麼該投入多少比例下注?普通賭徒看似無解,但是,凱利公式可以告訴你答案是25%!
  • 資金管理、金字塔加碼和趨勢--從凱利公式和21點說起
    摘要:  一、凱利公式是最優的資金管理公式嗎? 有人說凱利公式是源於資訊理論,沒學過資訊理論,不懂。 有人說凱利公式用於21點遊戲,對21點我了解一些,講講我的看法。除了 Larry William說過凱利公式可以於21點遊戲之外,我還 ...
  • 為什麼賭博只會以輸告終,因為你永遠無法戰勝凱利公式?
    還有一條金科玉律可以扭轉凱利公式的命運。凱利公式最大限度地提高了對重複的正面預期的增長率,這無疑將增加投注者的勝算。凱利的公式並不複雜:F=(BP-Q)/B其中F是投注資金比率,P是贏的百分比,Q是輸的百分比,B是賠率。以最簡單的拋硬幣為例,假設正面贏,反面輸,勝率1:2,賠率1:1,代入凱利公式,就可以得到每筆投資本金的最大收益25%。
  • 為什麼賭博最後只會輸,因為你永遠無法戰勝「凱利公式」?
    為什麼賭博最後只會輸,因為你永遠無法戰勝「凱利公式」?那麼為什麼賭徒永遠會輸給賭場呢,這其實是因為「凱利公式」。 什麼是「凱利公式
  • 沾賭則輸,拒絕凱利公式!賭徒,永遠不可原諒的一批人!
    因為這一切都是凱利公式在作怪。凱利,是一名物理學家,在研究某個電視節目的時候,根據延遲性計算出來了每次投注資金比例的凱利公式,這結果顯示,期望大於0(不虧損)的條件是不賭。所以根據凱利公式,不賭就已經是贏家了,而對於收取佣金的賭場來說,它無論如何都是賺的。
  • 賭王何鴻燊永遠不會輸,5000億財富背後的終極秘密:凱利公式
    其中,凱利公式在高級賭徒的世界裡大名鼎鼎,是頂級高手常用的數學利器。它也是賭場老闆最擔心被暴露的賭場秘密。普通賭徒一般一臉茫然,但凱利公式卻能夠告訴我們答案:計算後每次下注比例為當時總資金的25%,這樣就能獲得最大收益。
  • 千百年來,為何賭博最終都會輸,因為你永遠無法戰勝「凱利公式」
    千百年來,為何賭博最終都會輸,因為你永遠無法戰勝「凱利公式」。在人類發展史中,「碰運氣」的習慣由來已久。如果要追根溯源,在已知的史料中,可以了解到,東漢時期的許慎,在《說文》中記載:「古者烏曹作博」。這烏曹是夏桀的臣子,從這裡可以看出,賭博在中國的夏朝就有出現。
  • 大數定律和凱利公式同屬於概率論,他們都被應用於賭場,用好不敗
    第二種人,物理學家「約翰·拉裡·凱利」是AT&T貝爾實驗室物理學家,他也是在拋硬幣遊戲中受到啟發,於1956年在《貝爾系統技術期刊》中發表了具名的「凱利公式(Kelly formula)」,可用以計算出每次遊戲中應投注的資金比例。