大家好,歡迎來到 Crossin的編程教室 ,! 歐洲杯馬上就要決賽了,。這屆歐洲杯全是烏龍和冷門。于是網(wǎng)上少不了冒出各種“天臺(tái)”梗,。有人會(huì)很懂地告訴你:現(xiàn)在的足球比賽都是被操縱的,水很深,。還衍生出球隊(duì)配合“盤口”踢的說法,。所謂盤口,就是指國(guó)外一些博彩公司給一場(chǎng)比賽的勝負(fù)開出的賠率,。更有甚者會(huì)神秘地告訴你,,通過分析盤口,你就能看出來接下來的一場(chǎng)比賽是什么結(jié)果,。 那博彩公司究竟是如何操縱比賽,,從而讓自己賺得盆滿缽滿呢,?哎,別急,!我是說不知道他們有沒有操縱比賽以及如何操縱比賽,。但如果讓我開一家這樣的公司,我一樣有辦法可以把你們的錢都賺進(jìn)我的口袋,。因?yàn)?strong>做到這一點(diǎn)這壓根兒就不需要操縱比賽,,只要一要東西,那就是:假設(shè)現(xiàn)在A,、B兩隊(duì)要進(jìn)行一場(chǎng)比賽,。阿汪同學(xué)說他覺得A隊(duì)要贏,并愿意為此押上100枚硬幣,;阿喵同學(xué)說他覺得B隊(duì)要贏,,也愿意押100枚硬幣。我說那行,,我來給你們做個(gè)見證,,你們把硬幣都放我這里,最后誰對(duì)了,,我就把硬幣全給誰,。不過,我得從所有硬幣里拿走10枚,,也就是5%的硬幣,,作為我的辛苦費(fèi)。也就是說,,贏的人最終可以拿走190枚硬幣,。阿汪和阿喵都有動(dòng)機(jī),,唯獨(dú)不可能是我,。因?yàn)椴还苷l贏誰輸,我都穩(wěn)賺10枚硬幣,。那我究竟是吃飽了撐的沒事干,,還是跟誰有深仇大恨,寧可瞞天過海偷天換日只為了把一人的錢轉(zhuǎn)移給另一個(gè)人,?有人要說了,,你舉的這個(gè)例子不對(duì)。贏的人能拿多少錢走是博彩公司定的,,所以他們會(huì)輸小贏大,!不同賠率的存在不是由博彩公司或者說莊家決定,,而是由投注的人決定,。同樣是剛才的例子阿汪依舊押100枚硬幣支持A隊(duì)贏;而B隊(duì)這邊,,除了阿喵同學(xué)押了100枚,,阿咩同學(xué)也押了100枚。這時(shí)候,,我依舊從中拿走5%,,現(xiàn)在是15枚,。如果A隊(duì)贏了,阿汪可以得到 285 枚硬幣,,所以押A隊(duì)的賠率是 (300-10)/100=2.85,;而B隊(duì)贏了,阿喵和阿汪同學(xué)各可以拿走 142.5 枚硬幣,,所以押B隊(duì)的賠率是 (300-10)/2/100=1.425,。作為莊家,我當(dāng)然可以把賠率定的更低,,比如A隊(duì)為2.5,,B隊(duì)為1.2,這樣我可以賺到更多的錢,。但三位同學(xué)也不傻,,他們一算,不對(duì)啊,,怎么不管誰贏,,我都還私藏了一部分硬幣,以后就不來找我做公證了,。于是我連原本穩(wěn)賺的那5%也沒了,。在現(xiàn)有普遍的博彩規(guī)則中,莊家需要在別人下注前預(yù)先給出明確賠率,。這就要求博彩公司開出的賠率既要保證不管誰贏,,自己都是能賺錢的,又要保證賠率盡可能高以便吸引人下注,。給出一個(gè)盡可能準(zhǔn)的初始賠率 根據(jù)下注情況動(dòng)態(tài)調(diào)整賠率 比如對(duì)于本屆歐洲杯的決賽,,某個(gè)網(wǎng)站給出了:勝2.50 - 平3.10 - 負(fù)2.88 計(jì)算一下就可以發(fā)現(xiàn),此時(shí)它的預(yù)期抽成為:我用一段程序來模擬一場(chǎng)比賽的投注過程,,來看看是不是真的可以僅通過調(diào)整賠率就讓自己穩(wěn)賺不賠,。為了簡(jiǎn)化模型,這里只考慮A隊(duì)勝和B隊(duì)勝兩種情況,,沒有平局,。假設(shè)初始預(yù)估的勝率各為50%,而投注者們的偏好是80%會(huì)押A,,20%押B,。我的動(dòng)態(tài)調(diào)整策略就是:根據(jù)最近1000個(gè)投注者的選擇作為依據(jù),按照前面說的方法計(jì)算出新的賠率,。當(dāng)然,,我依舊會(huì)從中抽取5%,。當(dāng)有十萬人次投注之后,我得到的結(jié)果是這樣的:藍(lán)色曲線是A隊(duì)勝利后我需要根據(jù)每個(gè)投注者當(dāng)時(shí)賠率所需支付的獎(jiǎng)金,;綠色曲線則是B隊(duì)勝利后需支付的獎(jiǎng)金;黃色虛線和青色虛線則分別是AB兩隊(duì)的即時(shí)賠率,。可以很明顯地看出來,,除了一開始因?yàn)槌跏假r率定得過于隨意,導(dǎo)致出現(xiàn)短暫的輕微虧損外,,之后時(shí)間里,,我都是穩(wěn)賺不賠的。有人又要說了,,你這個(gè)情況太理想,,觀眾投注分布不會(huì)這么穩(wěn)定的!OK,,沒關(guān)系,,我們繼續(xù)來模擬。現(xiàn)在假設(shè)每經(jīng)過一萬人次的投注,,大家就更看好B隊(duì)一點(diǎn),,A隊(duì)的投注偏好就會(huì)在現(xiàn)有基礎(chǔ)之上降低10%。其他條件和策略不改變,。我們將會(huì)得到這樣的結(jié)果:從投注開始到結(jié)束,,盡管球迷們對(duì)AB兩隊(duì)的看好程度徹底發(fā)生了反轉(zhuǎn),但這依舊不影響我賺錢的穩(wěn)定性,。再進(jìn)一步,,我設(shè)定在投注期間,有萬分之一的幾率出現(xiàn)隨機(jī)的球迷投注偏好的集體大波動(dòng),,也就是說莊家完全無法預(yù)測(cè)比賽的勝負(fù),。即使在這種奇葩的情況下,我的收益還是穩(wěn)如老狗,!為了更有說服力,,同樣的規(guī)則,重復(fù)100次,,投注人次依次為 10000 到 110000遞增,,把收益比畫出來:看見沒,不過來多少人,,收益始終可以維持在5%左右,,也就是我預(yù)設(shè)的抽成比例,而且人越多越接近這個(gè)比例,。這就是概率學(xué)上大數(shù)定律的體現(xiàn),,即重復(fù)的次數(shù)越多真實(shí)發(fā)生的頻率就越趨近于理論上的概率,。現(xiàn)在,還有人覺得我需要去操縱某支隊(duì)獲勝嗎,?有必要嗎,?我要的只是有很多很多人都來投注,越多越好,。我不關(guān)心哪支球隊(duì)狀態(tài)更好,,天氣更適宜,主力球員的感情生活更穩(wěn)定,,甚至初始的賠率也并不重要,。唯一關(guān)鍵的就是投注的實(shí)時(shí)情況。我調(diào)整賠率不是為了坑你上天臺(tái),,反而恰恰是為了讓不同方的下注者更加平衡,,避免贏小賠大或贏大賠小的情況出現(xiàn)。所以,,決定賠率的不是我,,而是在我這里投注的阿汪阿喵阿咩們。我不需要?jiǎng)尤魏问帜_,,只要你堅(jiān)持投注,,把自己老婆本賠光是必然的事情。假設(shè)所有比賽的賽前預(yù)計(jì)勝率都是合理的,,比如預(yù)計(jì)A隊(duì)勝率80%,,那實(shí)際就是有80%的可能贏球。在此基礎(chǔ)上,,阿汪帶著1個(gè)w的硬幣來了,。每場(chǎng)比賽,他都會(huì)押上1000硬幣,,也就是初始總額的1/10,。這樣,一直持續(xù)下去,,結(jié)果會(huì)怎樣?我模擬了100次,,這是硬幣數(shù)量的變化曲線,。雖然也有不少時(shí)候,1萬硬幣會(huì)贏到兩三萬甚至更多,,但絕大部分情況下,,在不到100次的時(shí)候,硬幣數(shù)就歸零了,。而拉長(zhǎng)到1000次,,更是幾乎不可能幸免,。如果阿汪執(zhí)迷不悟,繼續(xù)借錢參與:可以看到,,由于莊家抽成的存在,,硬幣數(shù)量的整體曲線是在不斷下降的。而假如阿汪還很激進(jìn),,動(dòng)不動(dòng)就 All-in,,那么可以大大提速這個(gè)過程:基本上兩三次也就賠光了。運(yùn)氣爆棚的話能狗屎運(yùn)多撐幾次,,但最后的結(jié)局總是一樣的,。在一個(gè)零和游戲中,作為注定劣勢(shì)的一方,,最好的策略就是一次都不要參與,,這樣數(shù)學(xué)期望才是最大的。 獲取文中模擬實(shí)驗(yàn)代碼,,請(qǐng)?jiān)诠娞?hào) Crossin的編程教室 中回復(fù)關(guān)鍵字
|