2018年7月10日 星期二

炒埋一碟

馬會在6月30日將賽馬資料和即時賠率格式由XML轉為JSON之後,池某這裡意外地成了一眾程式賭馬者分享發現和討論心得的地方,池某也想不到這個遊戲竟有這麼多同道中人,真乃吾道不孤也。

有讀者來信反映,明明在Google search到相關的內容,但click入池某的blog之後怎麼找也找不到。池某照做一次後發現,問題的根本還是池某懶惰之過,由於已半年沒有更新文章,上一篇blog文已累積了370多條留言,而blogger.com只會顯示頭200條,之後的就“深藏不露",要不斷按最底的“載入更多"才會出現,難怪新讀者search得到但看不到。

真是酒香也怕巷子深。既然那些都是blog友們有心分享的發現,沒理由讓這些有用訊息因池某的懶惰而淹沒在雜亂的留言之中,現在將相關的link炒埋一碟,集中呈現,也歡迎大家補充其他新發現。

排位

相當於舊版XML的getXML.aspx?type=Starters

新版(credit: raylam):
http://bet.hkjc.com/racing/getJSON.aspx?type=rdt

與舊版不同的是,JSON版會一次過顯示賽日所有場次的資料,不能像舊版那樣只要單場的。

即時賠率

JSON版links(credit:賭人、都好客、Unknown)

獨贏
http://bet.hkjc.com/racing/getJSON.aspx?type=win&date=2018-07-01&venue=ST&raceno=1

位置
http://bet.hkjc.com/racing/getJSON.aspx?type=pla&date=2018-07-01&venue=ST&raceno=1

連贏
http://bet.hkjc.com/racing/getJSON.aspx?type=qin&date=2018-07-01&venue=ST&raceno=1

位置連贏
http://bet.hkjc.com/racing/getJSON.aspx?type=qpl&date=2018-07-01&venue=ST&raceno=1

單T
http://bet.hkjc.com/racing/getJSON.aspx?type=tri&date=2018-07-01&venue=ST&raceno=1

四連環
http://bet.hkjc.com/racing/getJSON.aspx?type=ff&date=2018-07-01&venue=ST&raceno=1

孖寶
http://bet.hkjc.com/racing/getJSON.aspx?type=dbl&date=2018-07-01&venue=ST&raceno=1

三揀一分配
http://bet.hkjc.com/racing/getJSON.aspx?type=raceres&date=2018-07-01&venue=ST&raceno=1

各項彩池投注額
http://bet.hkjc.com/racing/getJSON.aspx?type=pooltot&date=2018-07-01&venue=ST&raceno=1

JSON版可以指定同時要多場賠率(credit:賭人、都好客):
http://bet.hkjc.com/racing/getJSON.aspx?type=winodds&date=2018-07-01&venue=ST&start=1&end=10
更改start=和end=後面的數字就可以。

JSON版也可以同時要獨贏和位置的賠率,單場及多場都可以(credit:賭人):
http://bet.hkjc.com/racing/getJSON.aspx?type=winplaodds&date=2018-07-01&venue=ST&start=1&end=10

JSON版的好處是數據結構很簡單,感覺上更新也稍快一點,壞處是用excel處理不如XML版方便,最大的缺點是,JSON版賠率沒有“winwillpay"這列數據,1.3倍和1.35倍都只會顯示為1.3倍,10.0倍至10.9倍一概顯示為10倍,故使用Kelly calculator計算注碼的偏差較大。


感謝blog友phpops為大家找到一個可用的新版XML:http://iosbsinfo02.hkjc.com/infoA/AOSBS/HR_GetInfo.ashx?QT=HR_ODDS_ALL&Race=*&Venue=*&Result=1&Dividend=1&JTC=1&JKC=1&Lang=zh-HK

這一條link包含了賽日所有場次的排位和各項賠率,如果只想要單個彩池賠率,把HR_ODDS_ALL改成HR_ODDS_WIN、HR_ODDS_PLA等等就可以了;若只想要單場排位和賠率,可以把Race=*的“*"改為想要的場次。池某就改成這樣來用:
http://iosbsinfo02.hkjc.com/infoA/AOSBS/HR_GetInfo.ashx?QT=HR_ODDS_win&Venue=*&Race=1

2018年1月15日 星期一

以一敵四

去年這個時候經常和macaupro兄隔海吹水,聽他細說30年來的賭壇趣事,相當過癮。

其中有一段是他早年和Bill Benter來往的所見所聞,“大約1986年,我到Bill在銅鑼灣的住所,Alan Woods和他同住。Bill向我介紹他的電腦賽馬程式,Bill請了個香港人幫他輸入資料。當時是剛開始用電腦賭馬,試驗階段。大約1989年,他們住在太古城,請了4個菲律賓大學生處理電腦輸入,還有一個香港大學數學教授幫他們研究數學問題。”

根據公開的報道,Bill Benter和Alan Woods是從1986至1987年度馬季開始贏錢的,而且一開始就贏大錢。而從macaupro兄的見聞可看到,他們的研究成功之後,並沒有就此坐享成果而唔do,反而投入更大的財力和人力追逐下去,連處理資料的人手也由一個增加至四個。

今季季初輸錢之後,池某曾大幅刪減model的參數數量(見舊文)。若是在以前,池某絕對不會這樣做,正確地說是不捨得這樣做,因為每一個data的處理、每一個參數的計算,都是耗費無數心力才得來,很難做到話刪就刪那麼瀟灑。

現在回過頭來看,如果當初一直困於原來的想法,只是綁手綁腳地不時作些小修小補而不能大破大立,如今的處境恐怕不敢想像。但敢破敢立是需要底氣的。Model的根本,還是在於data。沒有data,就是無米之炊;有data,才有底氣。

池某當然不可能像Bill Benter那樣請四個人來處理data,但找到一個能以一敵四的好幫手,嚴格來說還不是一個人頂四個人,而是一個程式就勝於四個人。完成這個重任的,毫無疑問就是IT人了。

過去每加一組或改一組data都感無比頭痛,要一個一個頁面copy and paste,再寫code提取自己想要的部份,小小改動就是好幾天腰酸背痛的煎熬,結果卻往往是無功而還,以致很多不甚確定的嘗試,都懶得、也確實沒有足夠的精力去做。

IT人的想法是,只要是重複的、格式劃一的工序,都可以將之自動化,只要是網上存在的data,都可以讓電腦自動提取,不必經人手copy。

實際上還真能做到。例如池某想要過去所有上陣馬的晨操資料,第二天IT人就傳來從蘋果馬網取得的過去三年的所有晨操紀錄,後來池某發現蘋果馬網的晨操數據與馬會的出入很大,IT人很快又傳來一個馬會版本。池某知道蘋果馬網的格式與馬會的截然不同,IT人卻總是可以交來一個池某所要求的格式,真不知道他是怎樣做到的。甚至池某突發奇想,無厘頭地要求一組過去所有上陣馬上一仗賽後報告某些字眼的數據,他亦能輕鬆做到。

如果30年前識打字、識電腦輸入算是一種能力,在30年後的今天,這些還算是有價值的能力嗎?還能像當年受僱於Bill Benter的四名菲律賓大學生那樣未畢業就找到一份“筍工"嗎?答案顯然是否定的。低端的、沒有附加值的所謂能力,機器輕易就可取代,而且能做得更好、更有效率、更準確。那麼,那些開班奴大師們總是洗腦式地叫人安於“能力圈”,是何居心?