2015年9月13日 星期日

簡單易用的賭波公式

繼續“搬家”,以下章從“舊居”搬過來,原文發表於2014年1月4日:

有朋友問,有沒有簡單可行的賭球公式,或者賭波方程式?

一般來說,參與一個獨立的賭局,實際上是要回答兩個問題:第一個是買什麼?第二個是買多少?要科學地把這兩個問題解決掉,方法是有的,但嚴格來說那不是一條算式或公式,而是一個有程序可依的系統。至於是不是簡單,則見仁見智;是不是可行,也要看對賭的對手是誰。

在這裡要把模擬或計算一場球賽的思路說得詳細一些,要搞清楚系統裡著重了些什麼、忽略了些什麼,使用時才會明了其長處和缺點,而不會錯用或濫用。

思考的出發點是“簡單可行”。球隊過去的戰績,最能反映球隊的能力。所以最直接的做法,就是把球隊過去的入球和失球數字用蒙地卡羅模擬法(Monte Carlo Simulation)模擬一萬幾千次,看看結果如何。這個方法最簡單,但不是太可行,主要原因是球隊的原始數據不會很平滑,導致模擬出來的結果不甚合理。以1月6日凌晨3:45開賽的意甲榜首大戰祖雲達斯對羅馬為例,若用今個賽季的數據來仿真,會得出祖雲達斯贏4:0的機會比贏3:0還大,不合理。

於是,接著下來要思考的是使數據平滑化、預測結果合理化。我們處理數據時最常見的平滑曲綫莫過於正態分布(normal distribution),就是那條鐘型曲綫。算出球隊過去進球或失球數據的平均數和標准差,這樣每個球隊的“實力”都可以一條獨特的鐘型曲綫來代表了,平均數代表球隊的進球能力,標准差代表隊的表現穩定性,兩個球隊的曲綫一對比,就能看出誰強誰弱,甚至每個比分的機會率也能算出來。解釋起來也很科學很合理。

但用正態分布模型來仿真現實的球賽還是有一個致命缺點。理論上,鐘型曲綫是向兩邊無限延伸的,當左邊一端一直延伸穿過0,代表了什麼?代表了出現“負進球”的機率。負進球,實現中根本不可能。這個硬傷必須處理掉。

幸好,早在十九世紀,有個叫Siméon-Denis Poisson的法國數學家就幫我們解決了這個問題,他所發表的Poisson law of small numbers,現在一般稱為Poisson distribution,正好用作球賽模型。其原理就屬於學術範疇了,這裡不多說了,姑且簡單理解為一種經特殊處理的正態分布吧,我們知道怎樣應用就行了。

還是以祖雲達斯大戰羅馬為例。我們不知道最鋒利的矛對最堅硬的盾結果會怎樣,不要緊,以“簡單”為原則,取平均數吧。好了,取今個賽季祖雲達斯主場進球和羅馬客場失球取平均值,為1.75,就叫祖雲達斯的實力指數吧;祖雲達斯主場失球和羅馬客場進球取平均值,為1.1875,就是羅馬的實力指數。

在EXCEL可以直接使用POISSON函數功能,輕易算出祖雲達斯不進球、進一球、進兩球...的機會率是0.1738、0.3041、0.2661...;羅馬不進球、進一球、進兩球...的機會率是0.305、0.3622、0.215...等等。



於是這場球賽任何一個比分的機會率都能算出來了,0:0的機會率就是0.1738*0.305=0.053,其倒數就是預期賠率18.9倍;如此類推1:0的機會率就是0.3041*0.305=0.09275,其倒數就是預期賠率10.8倍...所有“波膽”的賠率都可以模擬出來。

把相關比分的機會率加起來,模擬出主客和、入球大細、總入球等等的賠率也沒有難度。當然,一個一個用小算盤來算工作量還是挺大的,最方便還是用VBA編好程序,讓CPU代勞,一勞永逸。

示範:

第一步:取祖雲達斯主場數據



第二步:取羅馬客場數據,RUN



 即得出各項模擬賠率



這個應該就是最簡單易用的“賭波公式”了,如果要跟鄰居、同事或波友對賭,這個系統已綽綽有餘了。不過,如果想在公開的彩池裡漁獵,這種程度的工具還遠遠不够,一定要再加強裝備,武裝到牙齒。

==============================================

補充於2015913

慶幸寫這篇文章時記下了過去的所謂“思路”,這個“思路”其實就是自己當時屢屢撞板的過程。對於同一個問題的思考,不斷修正、補充、更新,腦子裡的記憶就會像Hard Disk儲存資料一樣,只會留下最新的版本,把過去每一次的變化覆蓋掉。要還原變遷的歷程,就只能靠這些文字了。

重看過去苦苦尋找一個工具去模擬一場球賽賠率的過程,真是百般滋味在心頭。從Monte Carlo SimulationNormal distribution,再到Poisson distribution,迂回曲折,也不知當年的傻勁從何而來。

現在回顧這段歷程仍覺得可笑,拿這麼一個幼稚的工具去同莊家博殺,無異於以卵擊石,太過癡心妄想。然而,當實實在在撞過板碰過壁之後,卻有豁然開朗之感。意想不到的是,以此為藍本的一個投注系統,最後還真的嘗到了盈利的喜悅。

更意想不到的是,在多年後的今天,這個系統依然能保持盈利,儘管利潤並不多。利潤不多有各方面的原因,最根本的原因還是技不如人吧,還有一個很折磨人的原因,就是馬會的抽水率實在太高了。

420 則留言:

  1. 回覆
    1. 哈。塘人兄不必認真。在下寫blog的主要用意,只是作為自己讀書、思考的筆記,沒有考慮其他的人觀感。文章裡繁瑣的步驟,不是天天泡在馬會網站跟各項賠率概率分佈打交道的人,看起來覺得不知所云,是很正常的。

      刪除
  2. 可唔可以教下點用excel vba 想好似你咁可以拎之前d賽績黎做分析

    回覆刪除
    回覆
    1. Chan Chuen君說到「教」太言重了。池某的programing水平只是極業餘的菜鳥級,實在不敢言教。
      在這個例子中,VBA最大的作用是可以用一個for loop加上Poisson Function把文章裡第一個表格取代掉。
      p(i) = Application.WorksheetFunction.Poisson(i,x,0)
      在這裡,x是平均入球。不入球、入一球、入兩球...的機率就是p(0)、p(1)、p(2)...
      剩下要做的只是普通的加減乘除。

      刪除
    2. 佢地既入球機率都係o係馬會個網度睇? 同埋想問下excel vba 係咪可以連球隊既入球大細 總入球都分析埋? 同埋你另一篇提到2串1果d都可以用excel黎計 可唔可以教下 thx

      刪除
    3. 1.馬會網可以睇到聯賽各球隊的入球數據,入球機率要自己計。
      2.文章提到的程序只是一個模擬一場球賽賠率的方法,談不上是分析。
      3.用上述方法可以模擬出主客球隊各種入球數字的機會率,以此為基礎,理論上馬會的各種賠率包括主客和、入球大細、總入球、波膽等等的賠率都可以模擬出來。不過,要注意的是,這個方法只適合於用作體會入球分佈的機理及磨練計算技巧,千萬不要用來跟馬會對賭,這種入門級的技巧是贏不了馬會的。
      4.計算2串1部份需要一定的數學根底和programing技巧,很難以三言兩語講清楚。而且網上也有現成的可以用,不需要自己從頭弄:
      http://www.sportsbookreview.com/betting-tools/kelly-calculator/

      刪除
  3. 回覆
    1. 用1除以一個數就是其倒數,即1/x

      刪除
  4. 多謝你,我研究賠率不是一時半刻了,數學不佳也一直在找泊松計算的方法,你焦私分享真係好多謝你。雖然我都應該唔識整...

    回覆刪除
    回覆
    1. 這只是一種模擬球賽賠率分佈的方法,用作搏殺工具還是不足夠的,所以是否能整出來並不太重要。不過,如果能弄明白背後的原理,對自己的思維是有一定幫助的。

      刪除
    2. 不用客氣。一些統計入門的應用而已,又不是什麼獨門心法。

      刪除
  5. 池裡漁師兄:
    透過入球與失球計算中球場比分的可能性,從而引伸出’波贍、入球大細、讓球盤、半全場’等大部分投注方式的可能性。
    我把你的計算方法抄了一次,每場球場用的是近十場左右的數據作參數,得出的波贍結果與馬會的賠率也接近。
    可是,問題來了,光是用入球與失球作參數,應該不夠準確,還有什麼樣的參數可以加入,而且該數據從網上亦隨手可得?(其實單單是’入球與失球’的關系我以前也沒有想過,細閱這遍文章真是獲益良多。)
    另外,以上述工具分析的結果,我留意到接近9成的球賽,前三個最高機率的比分永遠是1:1,1:0,0:1和0比0。極少出現嬴2球以上的情況,就連班霸打下遊球隊也如是。是否出現些少漏洞?問題出於’失球與進球’所取平均值太’小’?

    最後,經過一兩天的嘗試後,忽然問自己,用這工具計算,和我參考馬會的波瞻賠率去引伸出’波贍、入球大細、讓球盤、半全場’等大部分投注方式的可能性,不是更快捷方便嗎?

    F4 上
    (基層家庭窮學生一名,二十出頭,早兩年愚昧無知,胡亂賭博,累積輸下過萬元的兼職錢。現希望學習投資,以填補所失。故請求師兄施予援手,加以啟發。)

    回覆刪除
    回覆
    1. F4兄弟:
      以Poisson distribution計算得失球模擬各項概率分佈,只能當作如統計學入門STA101一樣的基礎知識來學習,加深自己對概率分佈的印象,用來同莊家搏殺是遠遠不夠的。就算模擬出來的賠率與莊家的賠率一模一樣,也無法打敗莊家呀,更何況莊家還佔了「抽水」之利。
      這個方法有明顯的不足之處,就是無法反映傷兵問題、爭標或護級還是踢風流波問題等等非數字因素。
      故此反過來思考,用莊家計算出來的概率來對付其他賭徒,實行借力打力,借刀殺人,是非常明智的抉擇。剩下需要考慮的問題只有兩個:第一,有什麼彩池可以讓你施展借來的刀?第二,莊家周身刀,哪一把最「利」?池某不認為從「波膽」賠率著手是個好主意,因為「波膽」是馬會抽水最重的彩池,以「波膽」反推得出的結果偏差會比較大,不如「主客和」+「入球大細」好。

      刪除
  6. 哈哈,果然果然。該計算得失球的工具並不足作為你的搵食工具。
    但對於師兄的指點,還是有點迷茫。
    鎖定下刀的彩池和抽水最低的彩池後,我卻思考不到,借來的刀與下刀彩池的關係。
    比方說我找到了A和B,計算出答案C,而C達某標準後,便是下刀的時機。
    但我想不出A跟B中間,到底是加減還是乘除,C的標準值又該如何定奪?

    回覆刪除
    回覆
    1. 馬會各項彩池之中,可以施展借刀殺人的彩池只有兩個:「孖寶半全膽」和「六寶半全場」。
      其他各項彩池都是借刀的地方,例如可以從「半全場」借刀攻「六寶半全場」,也可以從「半場波膽」借刀攻「孖寶半全膽」。借助不同的彩池只有方便程度和準確度偏差的分別,各師各法即可。
      當然具體實施時還是有些蹺妙的,池某在「渾水摸魚的大彩池攻略」一文有這方面的介紹:
      http://poolshunter.blogspot.hk/2015/11/blog-post_22.html

      刪除
  7. 我睇池兄喜歡研究多於同馬會博殺.抽水既遊戲單靠咁少sample,池兄都應該唔敢搏殺啦.還有variance既存在...要贏都賭馬啦.起碼參數,數據都應該透明,足夠.

    回覆刪除
    回覆
    1. 池某當然不會同馬會博殺。馬會足智彩有少量非fixed odds彩池,搞清楚一場球賽概率分佈背後的機理,對付其他賭徒就很夠用。

      刪除
  8. 池兄 想請問下
    總入球係點計出黎?

    回覆刪除
    回覆
    1. 只用Excel工作表加計數機去計總入球機率是非常非常困難的,1球2球還可以,去到6球7球組合就多到唔知點數。
      池某的做法是用vba以兩個loop解決。
      如果主客隊的入球機率係h(i) 同a(j)
      咁各個比分機率就係goals(i, j) = h(i) * a(j)
      i + j = 0 時
      goal0 =goal0 + goals(i, j) 就係入0球的機率
      i + j = 1 時
      goal1 =goal1 + goals(i, j) 就係入1球的機率
      如此類推

      刪除
    2. 小弟剛剛嘗試打造這個excel時也遇上了這個問題,奉上小弟淺見,班門弄斧,見笑莫怪。
      小弟因不會vba,故於波膽機會率旁加上總入球數,然後用sumif函數解決。
      唯一要注意是6-0和0-6的情況,但簡單的加減數已能解決。

      相反小弟有一個比較關鍵的問題:
      只用平均數來計"實力指數",計出來的結果在這個已經粗疏既model更顯偏頗。
      小弟有諗過用日數做加權平均數,但日數好似唔係好有影響,否則同一日球賽今天計的機率和明天計的會有分別,不合理。
      在這一方面有沒有一點啟示?感激不盡。

      刪除
    3. 用得失球平均數作「實力指數」有很多客觀條件的局限。第一,要在同一個聯賽這個「指數」才有可比較的意義;第二,至少要有大半季以上的數據才能體現球隊的「實力」,否則剛好一隊連場對弱隊,另一隊連場對強隊,數據顯示的「實力」就會有明顯偏差;第三,一些極端的數據也會造成偏差,比如一隊平時得失球數字很小的球隊突然有一兩場6:0的賽果。

      刪除
    4. 明白,所以小弟希望找一些方法去彌補這個不足。

      刪除
    5. 日數做加權平均數係有好大影響, 我用十年英超數據做分析, 例如遇上李斯特城呢一類球隊, 計出黎分別會好大

      刪除
    6. 回NoobPP兄,如此簡單的model能做到這個效果已經是難能可貴了,如果要更進一步,恐怕需要更強的model。
      此文的主旨是「簡單易用」,其中一個重點是怎麼用,如果很清楚自己打造的工具是一把「劏豬刀」,要用之有效就應該用在豬身上,無論這把刀打造得多麼完美,用來打老虎都是不適合的,也是不明智的。

      刪除
    7. 哈!忘了初衷,痴心妄想,嗚乎!愚之不惠,甚矣!

      刪除
  9. 唔好意思 池兄
    網上搵到你個BLOG 十分著迷
    想問下 ",取今個賽季祖雲達斯主場進球和羅馬客場失球取平均值,為1.75,就叫祖雲達斯的實力指數吧"
    意思係咪 Expected value (祖雲達斯主場進球) - Expected value (羅馬客場失球)?

    回覆刪除
    回覆
    1. 這個還不算是expected value,只是使用poisson function時的格式是poisson(x,mean,cumulative),需要計一個mean代入這個function。

      刪除
    2. 感謝你快速回應...另外, 波膽賠率大至上可以計算到出來, 想回一下, 主其他/和其他/客其他 這些點樣計呢?

      刪除
    3. WY兄提到是個相當難搞的難題,池某是用VBA解決的。
      用p(i) = Application.WorksheetFunction.Poisson(i,x,0)這個Function
      選取入6球以上的情況
      If (m >= 6 Or n >= 6) Then
      If m > n Then
      主其他機會率 = 1 / (goals(4, 3) + goals(5, 3) + goals(5, 4) + goals(m, n))
      End If
      If m = n Then
      和其他機會率 = 1 / (goals(4, 4) + goals(5, 5) + goals(m, n))
      End If
      If m < n Then
      客其他機會率 = 1 / (goals(3, 4) + goals(3, 5) + goals(4, 5) + goals(m, n))
      End If
      End If

      刪除
  10. 你好呀 我想問有冇少少例子關於計平均值果度 係講緊兩隊對決時既得失球
    定係各隊係主場或客場既得失球 同埋應該點除法?

    回覆刪除
    回覆
    1. 不太明白條問題,希望沒有理解錯。
      如果A球隊主場,B球隊作客。
      計算A球隊的入球指數應是A球隊過去主場入球和B球隊過去客場失球的平均數。
      計算B球隊的入球指數應是A球隊過去主場失球和B球隊過去客場入球的平均數。
      計平均數用Excel的AVERAGE function就得。

      刪除
  11. 小弟最近受池兄啟發, 用程式模擬球賽結果, 再去用莊家賠率轉化成的機會率, 尋找莊家機會率比電腦模擬機率高的結果投注。

    我的概念是, 既然所有人都懂得用統計學模擬賽果, 那麼莊家仍要將部分賽果的機會率提高, 肯定有統計學不能涵蓋的原因, 我就會選擇這些賽果。 這有一點逆向思維的想法

    經過數天的紙上投注測試, 整合所選定的數個聯賽中命中率不俗, 亦得出正回報。

    回覆刪除
    回覆
    1. 陰謀論?理論上,長線來看,以子之矛攻子之盾的方法,最多應該只能做到打和,而且還要蝕水位。

      刪除
    2. 其實我的方法是找出莊家比一般大眾看法不同的地方, 可以說我是站在莊家一方, 與眾為敵的思考角度

      刪除
    3. 思路肯定是正確的,問題係賠率也是莊家開出的,莊家不會給賭仔edge。

      刪除
  12. 想請教 「孖寶半全膽」可借那把刀去攻 「全膽」? 用波膽? 還是另有其他刀?

    路人甲

    回覆刪除
    回覆
    1. 不太明白條問題,是不是攻「孖膽」?
      理論上從「半場波膽」借刀攻「孖膽」是比較直接的,需要處理的只是一些加減乘除婆乸數,缺點是計算誤差可能較大。

      刪除
    2. 是..攻「孖膽」
      「半場波膽」是上半的 "波膽", 不過「孖膽」是要買上半場和全場結果. 上半場明白可以用「半場波膽」去借刀, 那全場的"波膽"怎樣計算?

      路人甲

      刪除
    3. 先將「半場波膽」還原為各個比分的機會率,然後逐個組合乘出來作比較,例如兩關都是1:0的賽果,就包含了4個組合:
      0:0#1:0,0:0#1:0
      0:0#1:0,1:0#1:0
      1:0#1:0,0:0#1:0
      1:0#1:0,1:0#1:0
      這個方法比較容易理解,但做起來相當麻煩,也許對熟悉排列與組合及programming技巧高超的人不難,池某則是很怕面對這樣的麻煩,在這裡只作為一種可行途徑提出,並不推薦。

      刪除
  13. 先感謝池兄耐心講教,意思是指, 假設「孖膽」第一關有 A, B 兩隊,
    從「半場波膽」還原 A, B 隊上半場各得分的機會率,

    假設第一關上半場各得分為 p(0:0), p(0:1)...etc
    推算第一關全場結果為 (0:0#0:1)= p(0:0) x p(0:1)?

    如是, 那全場的波膽用另一個彩池「波膽」去推算, 分別在?

    路人甲

    回覆刪除
    回覆
    1. 明白條問題了,池某試下咁樣解釋:
      如果以「半場波膽」推算「孖膽」,需有一個假設前提,就是要假設上下半場的入球機率分佈是一樣的。
      例如:第一關全場結果為 (0:0#0:1)的情況
      實際投注時其實是包含了兩條飛:
      第一條:p上半場(0:0)*p下半場(0:1)
      第二條:p上半場(0:1)*p下半場(0:0)
      所以用「半場波膽」是合適的,而全場波膽則無用武之地。

      刪除
  14. 可以教一下如何去用EXCEL教算?

    回覆刪除
    回覆
    1. 比分的機會率

      刪除
    2. 如第一張圖,一個一個比分照乘出來可也。當然,用vba會方便好多。

      刪除
    3. 有冇例子?如果好似頭先車路士vs曼城咁,車路士既主場得分係29,而曼城既客場失球係14,咁點樣計佢個平均值??

      刪除
    4. 咁係點樣用excel用使用POISSON函數既功能去計比賽比分的機會率!因為我係好少接觸到excel,所以唔太明

      刪除
    5. 用返第一張圖做例子
      主隊唔入球的機率:POISSON(0,1.75,0)=0.1738
      主隊入一球的機率:POISSON(1,1.75,0)=0.3041
      主隊入兩球的機率:POISSON(2,1.75,0)=0.2661
      如此類推

      刪除
    6. 點解我出黎既結果係#name? 既?係咪我打錯左D咩??我打左=POSSION(C1,$A$1,0)

      刪除
    7. 你要A1和C1果格有數字先得

      刪除
    8. 我諗我睇到了,原來大意打錯字!

      刪除
    9. 咁之後用VBA編程序去計主客和、入球大細、總入球,係咪好複雜??

      刪除
    10. 複雜或簡單見仁見智啦。池某都冇寫program根底,係上網自學VBA的。

      刪除
    11. 想問下主客和,大細同埋總入球既賠率係點揾出黎?因為我揾到比分的機會率但唔知應該點搵其他

      刪除
    12. 可以用比分的機會率按要求逐個加出來,但因涉及的組合眾多,隨時加到人都癲。要一次過搞掂所有要求最好還是用VBA。

      刪除
    13. 池大大,即係如果2.5中位數,開細只會有6個賽果,將6個賽果加起,再計其倒數就係自己計出來的細賠率?望解答,萬謝

      刪除
  15. 個實力指數既平均數係點搵??

    回覆刪除
    回覆
    1. 馬會網站「足智資料庫」有所有球隊的資料,選擇主場或客場就可得到如第二張圖的資料。
      如果A球隊主場,B球隊作客。
      計算A球隊的入球指數應是A球隊過去主場入球和B球隊過去客場失球的平均數。
      計算B球隊的入球指數應是A球隊過去主場失球和B球隊過去客場入球的平均數。

      注意這篇文章寫於2014年1月,如今用今季的數據計算,得出的數字應該是有出入的。

      刪除
    2. 但祖雲達斯既實力指數指數係點樣計到1.75??唔該曬你!!

      刪除
    3. 祖雲達斯主場入球加羅馬客場失球的平均數
      (4+1+3+4+2+3+2+4+2+1+1+0+0+0+1+0)/16=1.75

      注意第三張圖cap圖時裁掉了羅馬一些賽績,實際上羅馬當時已作客賽了8場。現在還可以從馬會網站查返。

      刪除
  16. There also have 3 way to use 借刀殺人.

    The Worst part is use your family's knife to kill your enemy.

    Middle part is use your friend's knife to kill your enemy.

    Top part is use your enemy's knife to kill your enemy.

    The reason why place the order like that because of the result.

    And I finally know how to increase my profit by using your word 借刀殺人 on my sport and stock.
    When you place your bet, the pay out for "every bet" must be profitable, and depend on the sportbook, team, company, contract, etc.

    塘人 talks about make contract that money goes to your pocker also make me can connect all the points to make profits on the stock and option.
    He should use cover call again on stock, it is same like he is buy house and rent it out.
    His story is nice too.

    Thank you very much for everyone share.

    回覆刪除
    回覆
    1. 呵呵!犀利犀利,連借刀殺人都可以演澤到三重境界。

      刪除
  17. 池兄你好,想請問主客和的賠率計法,是將主隊勝出波膽組合的機會率的總和,之後轉為倒數得出嗎?

    回覆刪除
    回覆
    1. 是的,這樣得出的是主勝的賠率。

      刪除
  18. 池兄, 花了整個月時間終於勉強可以計算到和賠率
    謝謝你用心回應每一個網友
    另外我自己用EXCEL 計你上面個波膽賠率, 將佢轉化為機會率, 發現加總不是1 而是0.988 .呢到我諗唔明....

    回覆刪除
    回覆
    1. 這是因為「主其他」、「和其他」、「客其他」的機會率是很難計得足的。
      以「主其他」為例,當中還包括了6:0至6:5,7:0至7:6,...,甚至10:0至10:9等等組合,雖然每一項的機會率都是很小很小,但這樣的組合理論上有無限個,加起來就不小。

      刪除
  19. 師兄其實你介唔介意分享個EXCEL俾大家參考下

    回覆刪除
    回覆
    1. 池某唔介意分享方法,但要擺個excel出來有幾個難點:
      第一,唔識點post出blogspot。
      第二,如文章所述,這個程度的program面對莊家必敗無疑。池某自己絕不會使用,又怎能鼓勵別人去用?
      第三,此program非為用家而寫,極不user friendly,除了池某自己,其他人恐怕連如何input data都不可能搞得清楚。

      刪除
    2. 第二點是重點,用simple average 會輸好多。

      刪除
    3. 重點是要破除練成一招就能贏錢的心態,修練之路很漫長。

      刪除
    4. 其實我想第二和第三點是並列的。程式就跟文章一樣,如果本身是完善的話,也就是說已經有一個可行的邏輯了,照池兄性格來說應該早就分享其思路而不需要貼程式碼了吧(我個人認為)。
      而如果是不完善的話,也就是說,需要改進,然而修改別人的程式是一件麻煩事,等同於要你去修改別人的文章。依我說,還倒不如自己寫一個更有效率。

      刪除
    5. 可能是池某在文章裡表達得不夠清楚,其實應該將這個program理解為一個模擬器,目的是大致把莊家開出的各項賠率模擬出來,令自己對各項機率分佈有一個印象。
      將之想像為一個搏殺工具是期望過高了。

      刪除
    6. 我覺得本文的觀賞價值, 是池兄間接向大家用最簡單的方法說明莊家如何開盤。

      各人的搏殺工具都不同, 關公用青龍偃月我用巡航導彈, 最重要是自己去找尋/研發一種有殺傷力而適合自己用的工具而已

      刪除
    7. 巡航導彈咁勁?池某連銀彈都唔多。呵呵。

      刪除
    8. 我果枝係北韓製巡航導彈, 睇得唔打得

      刪除
  20. 支持池大哥分享EXCEL,我看了很久也不明白

    回覆刪除
    回覆
    1. 此EXCEL檔不user friendly,若要在概念上理解,看一章統計入門會理解得更好。

      刪除
  21. 我還是不明計算了機率如何應用在孖膽彩池。。你說買最大機率的30注?。。那怎知派彩便會是+ev? 還是必須抽走估計多人下注如0:0 等?

    回覆刪除
    回覆
    1. 大彩池誰也不知道最後賠率,不能用ev思維考量。

      刪除
  22. 那只管買最大機率的10至30注便可??不用抽掉熱門組合?? 投注額及多寶有沒最低考慮

    回覆刪除
    回覆
    1. 這個彩池唯一可計算的是大致的機率,組合是冷是熱無法準確估算,投注額亦非個人所能控制。

      刪除
  23. 池兄 點解小弟 用番你個範例計唔到 你個主其他賠率
    我入錯咩數?

    回覆刪除
    回覆
    1. 主其他比較複雜,要將4:3和5:3和5:4以及所有主大於6的組合的機率加起來。

      刪除
    2. 謝謝指教..
      初次嘗試計比分的機會率
      另外仲想問下呢個模型下的預計賠率可以反映D咩?
      小弟買波新手

      刪除
    3. 這個模型大致可模擬一場波各項彩池的機率分佈,賭波時可參考一下是否「抵買」。

      刪除
  24. 多謝你回覆
    套番落孖寶半全膽,唔係好明"四組概率交叉相乘"呢到的意思。
    即係四組數據互相乘?
    另外我係excel新手 有無咩網可以教點寫LOOP 搵CPU幫我計主其他機率

    回覆刪除
    回覆
    1. //四組概率交叉相乘
      是四組概率按可組成的比分組合互乘。

      //有無咩網可以教點寫LOOP
      Michael兄說得對,根據自己所需去search是最有效的途徑。池某也是寫program的生手,每一個問題都是靠search解決的。

      刪除
  25. 想請教池兄如何計算到大細賠率和寫vba?

    回覆刪除
    回覆
    1. 現在的大細賠率確實有些煩,因為有的大細球數是2.5,還有2.5/3、3/3.5、3.5等等,即使用VBA也要分開處理。
      例如大細球數是2.5時,
      如果主客隊的入球機率係h(i) 同a(j)
      各個比分機率就係goals(i, j) = h(i) * a(j)
      i + j <= 2 時
      p = p + goals(i, j)就係細球的機率了。

      刪除
    2. 池兄 那如果入excel 應該如何輸入呢?

      刪除
    3. 建議用vba,只用excel效率太低。

      刪除
    4. vba是要寫的?

      刪除
    5. 池兄有無教學教埋?
      細佬以前都只係入form去計主客和轉讓球盤

      刪除
    6. 池某都冇學過VBA,都係遇到疑難就上網search。
      池某的意見係只有學識了的東西才是屬於自己的,現成的form靠唔住,否則馬會的賠率轉一轉format就死直。

      刪除
    7. 嗯嗯 明白池兄授人以漁的意思了
      細佬先去了解下vba是什麼先
      有唔明白再請教池兄 謝謝

      刪除
    8. 正是。受限於別人的想法會很被動。

      刪除
  26. 池兄,請問在excel中如果不用VBA,總入球0的計算方法或總入球1的計算方法應該是如何? 我明白去到5,6球既時候不用VBA寫會十分麻煩,奈何學職有限,只能一步一步人手做,萬分感謝!

    回覆刪除
    回覆
    1. 原來自己一直用入錯左實力指數,唔怪得計極都計唔到池兄個example,問題已解決~哈哈 :P

      刪除
  27. 你好,今日先認識到呢個BOLG, 參考完這個BLOG後
    我有數個問題想問, 請原諒我比較蠢...

    1. 實力指數那裡的方程式是?

    因為使用池兄的圖例(1), 祖雲頭7場:得19球 羅馬失5球,咁平均值即係 (19+5)/14場? = 1.7143, 跟池兄的1.75有出入..

    2. 倒數那裡得出的賠數, 該取哪一個區域的數字?

    因為圖例已經是2013年..找不到賽果是甚麼了,若跟隨圖例(4), 我們該取 1:0/2:1/1:1 嗎?

    3. 最後我想知道 圖例(4) 主客和 及 入球大細 得出的數字是base on哪一堆數字得出的? 方程式是?

    希望得池兄解答,讓我可以增加多一方面思考,謝謝

    回覆刪除
    回覆
    1. 可能網路問題..看見留不到言 所以按了數下變了幾個留言..抱歉..

      刪除
    2. 1.上面的留言談論過這個問題
      祖雲達斯主場入球加羅馬客場失球的平均數
      (4+1+3+4+2+3+2+4+2+1+1+0+0+0+1+0)/16=1.75
      注意第三張圖cap圖時裁掉了羅馬一些賽績,實際上羅馬當時已作客賽了8場。現在還可以從馬會網站查返。

      2、3.圖4的期望賠率是行program計出來的,比起圖1已計多了很多東西。完成圖4需要寫VBA。

      留言被食是google系統問題,不是兄台的錯,不需要道歉。

      刪除
  28. 請問圖4的主客和 & 大總細 係點計?
    我轉數比較慢 -.-

    回覆刪除
    回覆
    1. 有兩種方法:
      一是用圖1之法計出各個比分的機率,把1:0、2:0、2:1...等等機率加起來取倒數,就是「主」的期望賠率,如此類推。但這種方法比較繁瑣。
      二是寫program解決。

      刪除
  29. 想問一下池兄,小弟有好多地方唔明白,如果我只用計數機,
    1)祖雲實力係1.75時,入0,1,2...球既機率...要點禁計數機先正確??
    2)當計到入球機率...將2邊分數相剩之後 再1/X....得出既賠率是否全埸既比分賠率??
    感謝...

    回覆刪除
    回覆
    1. 1.計數機一般都唔會有poisson function,要配合圖1先得。
      2.係全場比分的期望賠率。

      刪除
    2. 明白....但是
      1)意味一定要用EXCEL先可以計到??
      2)如果計到個全埸比分,最底賠率=最易開出?
      3)當知道各個比分期望賠率後,我地又點先得知佢地上半埸個比分= ="""
      唔好意思池兄...小弟數學本來好廢...加上多年沒有接觸...好多地方唔明白

      刪除
    3. 1.用其他統計軟件應該都得,用excel方便啲啫。
      2.全場比分算係一個預期概率分佈啦,理論上係越熱門越易開出,實際上當然唔係實開熱門的。
      3.直接用上半場得失球數據計,計出來咪係上半場比分囉。

      刪除
    4. 例如今日銀河果埸為例啦
      我計到全埸1:0 期望賠率係8.8 2:0係9.04 2:1係10.17
      咁其實 師兄睇到呢d數據 有冇邊d取捨既技巧呢?
      或者有冇方法幫助呢??thxxx

      刪除
    5. 同埋我見到師兄 90000%回報個post,你d飛通常都會有一埸上下半埸 only買1注....想問一下...呢d係咪要靠經驗累積得反黎??

      刪除
    6. //銀河果埸
      文章最後一段有寫,池某唔會用呢種方法去賭單場。

      //90000%回報個post
      內文寫得好清楚,要買二三十注,只係冇中果啲冇post出來。

      刪除
    7. 我知道,我只會套用呢個方法係半全膽個彩池度
      原來係咁....真係唔該哂池兄用心解答小弟咁多問題
      感激不盡!

      刪除
    8. 唔好意思池兄 仲有個問題想問一下
      當主隊全埸3:3 半埸2:2
      咁我拎佢實力數據果陣 係應該拎佢全埸得球係3定係 3-2=1呢??

      刪除
    9. 計半場用半場,計全場用全場。

      刪除
  30. 我都開始計孖旦希望搵到D洗費, 不過有幾個位都唔太明...

    1. 我見樓上KWAN問實力數據, 我見您話半場用半場, 全場用全場, 即係上半場就用入左幾球同失左幾多球咁計, 而全場個實力數據就以全場比分計算(而唔係用下半場實際入左幾多球同失左幾多球咁計, 即係當兩個半場咁分開計)

    2. 其實我而家做法係先攞實力數據, 得出波旦既機會率, 之後將上半同下半既波旦相乘 (即上半場0 : 0 x 下半場0:0), 得出第一場次既0:0#0:0既機率, 之後再將第一場既0:0#0:0既機率乘第二場0:0#0:0既機率 (呢個係見您90000%個POST所學回來). 咁得左兩場乘埋既機率後就搵搵高數值嗰20個去套返入孖旦到買...唔知我有冇咩野MISS或計漏左呢?

    回覆刪除
    回覆
    1. 1.可能是池某誤會了樓上的問題,這篇文章不是談孖膽,所以以為所問的是單場。「計半場用半場,計全場用全場」並非針對孖膽而言,而是單場。孖膽應「計上半場用上半場,計下半場用下半場」。
      2.從文字表述來看是沒問題的。一般要注意兩個常犯錯誤:下半場機率不是全場機率;上半場機率不一定等於下半場機率。

      刪除
    2. 我計完今晚場"AIK蘇納 對 馬模"既孖旦:

      0 : 2#0:3 1 : 0#2:0 0.001641662
      0 : 2#0:2 1 : 0#2:0 0.001641662
      1 : 0#1:1 1 : 0#2:0 0.001641662
      1 : 0#1:0 1 : 0#2:0 0.001641662
      0 : 2#0:3 1 : 0#1:1 0.00151538
      0 : 2#0:3 1 : 0#1:0 0.00151538
      0 : 2#0:3 0 : 0#1:0 0.00151538
      0 : 2#0:3 0 : 1#1:1 0.00151538
      0 : 2#0:2 1 : 0#1:1 0.00151538
      0 : 2#0:2 1 : 0#1:0 0.00151538
      0 : 2#0:2 0 : 0#1:0 0.00151538
      0 : 2#0:2 0 : 1#1:1 0.00151538
      1 : 0#1:1 1 : 0#1:1 0.00151538
      1 : 0#1:1 1 : 0#1:0 0.00151538
      1 : 0#1:1 0 : 0#1:0 0.00151538
      1 : 0#1:1 0 : 1#1:1 0.00151538
      1 : 0#1:0 1 : 0#1:1 0.00151538
      1 : 0#1:0 1 : 0#1:0 0.00151538
      1 : 0#1:0 0 : 0#1:0 0.00151538
      1 : 0#1:0 0 : 1#1:1 0.00151538

      咁即係以上機率越大既就大機會開出?當然我明波係圓既...XD
      如果出現以上咁既情況, 我係應該全買定只揀最熱既頭5個買?

      刪除
    3. 呵呵,池某未計,但睇落唔多對路。

      刪除
    4. 即係計錯左?

      可否send我個excel比你望一望?

      刪除
    5. 未必係自由人兄計錯,可能係池某錯。池某自恃係熟手技工,好多時計都唔計篤幾注就算。

      刪除
    6. 會KEEP住每一個孖旦都計一計, 再統計下

      刪除
    7. 哈哈。賭孖膽很悶的,計計下就會冇乜心機,寧願貪方便用冇咁準的方法,或者就咁篤就算。

      刪除
    8. 因為我仲未知道當計好之後實際要買幾多注,所以要好好練習一下。希望可以搵到兩餐

      刪除
    9. 買幾多注為最好池某也不會計,若兄台能摸索出來,希望可以交流下心得。

      刪除
    10. 我發覺呢個計法可以玩埋6寶半。琴晚個孖旦令我明白左啲新野。

      刪除
    11. 6寶半哪有投注額?派彩從何來?

      刪除
  31. 池兄,我有樣野想問
    1)用實力數據 計到上半場同下半場既賠率後,係咪要拎各自最熱既賠率相剩,得出全場比分機率?可否舉個例子比小弟參考下,感謝

    回覆刪除
    回覆
    1. 如果兄台只買一注獨贏,用最熱門那個賠率相乘就夠,不過這樣很可能半年都收不到一次錢。建議買多幾注。當然,買幾多注為最佳,池某也答不出來。
      這篇文章裡那個曲線圖就是想說明這個問題:
      http://poolshunter.blogspot.hk/2016/06/90000.html

      刪除
    2. 我是買孖寶半全膽。
      因為我計到得出左上下半場賠率之後 就唔識點率落去。師兄可唔可以詳細小小講下個步驟比小弟知,萬分感謝

      刪除
    3. 得出上下半場波膽機率之後,機率相乘,比分相加,就是其中一場半全膽。另外一場同樣這樣做,兩場共四個機率相乘,就是一注孖膽組合的機率,加出來的比分,就是相對應用來填飛的組合。

      刪除
    4. Sorry池兄,小弟太蠢,仲係有唔明白
      1)得出上下半場波膽機率,機率相剩?係咪要拎上下半場最熱果組機率相剩?

      刪除
    5. 交叉相乘,不妨乘多幾組,得出一個array,再排列大細。

      刪除
    6. 例如我拎最熱果組上半場 1:1(0.5)下半場2:2(0.2) 交叉相剩係咪 1/2剩1/5?
      好似好唔對路 池兄可唔可以舉一個實例 計一計比小弟睇睇 thx

      刪除
    7. 照反上面例子 係咪即係得出上半波膽係1:1 全場係3:3?
      之後另一場賽事如是,上半(0.1)下半(0.3)
      咁我就將 第一場上半(1/2剩 1/5 )剩(1/10)(3/10) 得出呢個比數 係d咩黎?第2場既半全?

      刪除
    8. 啱。四個數乘完就係一注孖膽組合的機率。

      刪除
    9. 哦...原來係咁。
      但d組合咁多個....係簡組合方面 應該點取捨每組最熱3個?

      刪除
    10. 視乎需要買多少注了,有位兄台計了6萬幾個組合。
      http://poolshunter.blogspot.hk/2016/06/90000.html

      刪除
    11. 1)既然有幾萬個組合,其實池兄你平時係會點樣做選擇?
      2)上半場 我會搵2隊半場經常開既比數+低賠率x埋 下半場 2隊經常開既比數+低賠率
      池兄,如果我咁做 唔知能否有效計到個半全膽呢

      刪除
    12. 1.計幾多個組合都係比部電腦loop啫,沒什麼好煩惱的。
      2.建議計多幾注,確保不會錯過機會較大的組合。

      刪除
    13. 因為我係用計數機的,池兄係咪用vba?
      睇黎今晚反去都要下載黎用啦
      Anyway,感激池兄唔厭我煩 咁細心教我 謝謝你

      刪除
    14. 嘩!計數機?好難想像。
      用VBA啦。CPU唔會攰,手指會痛。

      刪除
    15. 因為我對電腦好渣 唔識點用vba
      Vba係excel入面一個功能?

      刪除
    16. 同埋洗唔洗輸入什麼程式果d?

      刪除
    17. 係。Excel內置的,要寫program控制頁面。

      刪除
    18. 上網睇左關於vba既資料
      如果我地要用vba計 咁應該用邊個函數功能最適合呢?

      刪除
    19. 要先想好個整體框架。

      刪除
  32. 池兄,我計算了2隊的平均值,之後應該怎樣?怎樣計算比分機率?

    回覆刪除
    回覆
    1. 代入poisson function,得出每隊每個入球數字的機率,兩隊按各個入球數字機率相乘,就是比分機率。

      刪除
    2. 我已經整埋波膽預計舍賠率,但係孖膽果到,半場點搞?我係馬會數據庫得入球同失球,無分上半場同下半場..

      刪除
    3. 有分的,括號裡那個是上半場的比分。

      刪除
    4. 唔係幾明,我本身直接睇佢主場得分同失分,咁孖膽係全場+半場睇曬?咁原本呢D數據無用?

      蒙特利爾衝擊
      賽事 勝 和 負 得球 失球 積分 勝比率
      所有 18 6 8 4 29 26 26 33%
      主場 8 4 3 1 16 11 15 50%
      客場 10 2 5 3 13 15 11 20%

      刪除
    5. 我原本計果個係全場??

      刪除
    6. 馬會數據中心
      美國職業聯賽(蒙特利爾衝擊)
      美職聯 03/07/2016 主 勝 新英倫革命 3:2(1:2)
      美職聯 26/06/2016 主 和 肯薩斯體育會 2:2(2:1)
      美職聯 29/05/2016 主 勝 洛杉磯銀河 3:2(1:1)

      括號入面就係上半場比分。

      刪除
    7. 池兄呢場孖膽有無玩?我想知我計出黎既野岩唔岩~~

      刪除
    8. (((((計算出兩場球賽上下半場共四組波膽的概率分佈,將這四組概率交叉相乘,就是各注“孖膽”的概率了)))))

      我計了這場蒙特利爾衝擊VS紐約城 ,怎樣交叉相乘?我有沒有計錯?

      半場 得6 失6 半場 得8 失7



      全場 得16 失11 全場 得15 失13


      半場

      1:0 0.171822461

      0:0 0.200459538

      0:1 0.150344654

      1:1 0.128866846


      全場

      1:0 0.17265443

      0:0 0.140281724

      1:1 0.126613248

      2:0 0.10624888

      0:1 0.102873264

      刪除
    9. 半場和全場怎會一樣的?

      刪除
    10. 不一樣的,

      1:0 0.171822461
      1:0 0.17265443

      刪除
    11. 將這四組概率交叉相乘,就是各注“孖膽”的概率了,是不是會有16組??

      刪除
    12. 睇落不太對路。
      四組概率交叉相乘,全部乘晒的話,應該有超過10萬個組合。

      刪除
    13. 同意池兄, 由0:0起到4:4都已經二十幾個組合, 20^4=160000

      刪除
    14. 咁應該點乘?唔係好明,可唔可以講解詳細少少,THX ~~

      刪除
    15. http://poolshunter.blogspot.hk/2016/06/90000.html
      剛答完這個問題。

      刪除
    16. 我睇左,但係講左乘完要+番,但係我想知點樣乘,我計了的數據

      半場

      1:0 0.171822461

      0:0 0.200459538

      0:1 0.150344654

      1:1 0.128866846


      全場

      1:0 0.17265443

      0:0 0.140281724

      1:1 0.126613248

      2:0 0.10624888

      0:1 0.102873264

      咁應該邊個乘邊個?

      THX,,,

      刪除
    17. 請參考樓上KEN兄留言,跟住佢咁乘就啱了。

      刪除
    18. 半場

      1:0 0.171822461

      0:0 0.200459538

      0:1 0.150344654

      1:1 0.128866846


      全場

      1:0 0.17265443

      0:0 0.140281724

      1:1 0.126613248

      2:0 0.10624888

      0:1 0.102873264


      姐係0:0 再乘 1:0?

      0.200459538 X 0.17265443 =0.0346102272714533

      D數字好似唔同KEN咁?佢計到份數..

      刪除
    19. 乘是對的,但應該用上半場乘下半場。

      刪除
  33. 上半場乘下半場?
    0:0 係半場波膽,1:0係全場波膽

    回覆刪除
    回覆
    1. 機率係上半場乘下半場,比分係上半場加下半場。
      咁先填到飛。
      不能用上半場乘全場。

      刪除
    2. 咁點為知下半場?點睇?

      刪除
    3. 下?全場比分減上半場比分咪係下半場比分囉。

      刪除
    4. 我計左,上半場+下半場,4個最大機率既波膽,跟住應該點做?

      刪除
    5. 如樓上KEN兄那個留言。
      交叉相乘,得出一個array,再排列大細。

      刪除
    6. 拎機會率最大果組相乘?

      刪除
  34. 哇 潛左水一排 個blog多左咁多新面孔 真係恭喜池兄

    回覆刪除
    回覆
    1. No la, 池某一肚苦水,Peter兄你懂的,不要嘲笑池某了。

      刪除
    2. 噢 小弟本是真心以為值得恭喜的
      但想想看也真的明白當中的難處
      讓池兄誤會了 真抱歉
      但小弟反而有個小問題
      到底是什麼能驅使你繼續寫blog呢

      刪除
    3. 腦海諗到池兄緊握拳頭, 想發而不能發的樣子。

      小弟幫手做少少Dirty works啦, 其實上面幾位新手朋友, 如果有部分基本概念都搞唔清, 真係唔好學池兄搞咁大工程, 否則就成為池兄的食物

      刪除
    4. Peter兄:
      池某寫blog只是作為讀書與思考、學習與交流、理論與實踐的一個記錄。

      刪除
    5. 神兄:
      多謝一直以來義氣襄助。

      刪除
    6. 魔師兄:
      畢竟來者是「客」,惟有忍下「氣」。

      刪除
  35. 若冇番咁上下數學根底, 要明白池兄呢個大工程, 真係一啲都唔易! 小弟話晒都係理科生都係搞咗一大輪, 又錯, 有幸有高人指點下, 先搞到個似樣既計法出黎!
    加上如果唔熟 Excel, VBA, 睇見池兄咁解釋, 真係一頭霧水架 ! 又諗唔到小弟識少少既 Excel + VBA 竟然可以咁樣學以致用法, 真係要多謝池兄 !

    如同坊

    回覆刪除
    回覆
    1. 其實說難也不難,池某收過兩位blog友傳來的excel template,都是不需要用VBA就能圓滿解決問題的。其中一位絕世excel高手更是只在一個table內就搞掂,當然,裡面是用了很多池某從來沒見的powerful excel function,算是大開眼界,也可見只要掌握一些基本知識與專長,是條條大路通羅馬的。
      最重要是要有一個步驟清晰的完整思維架構,自然能水到渠成。千萬不要以為見步行步,行完一步問下一步就能走到終點,這樣有如在迷宮裡問路,會越行越迷失。

      刪除
  36. 池兄,想請問如果是只季初,每隊只是踢了一兩場,所抽出來的數據是否參考性不大?

    回覆刪除
    回覆
    1. 要同一個聯賽超過半季以上的數據才能相對客觀地反映球隊的實力指數。季初可加埋上季的數據來做。

      刪除