这个存储库包含用于复制我们的足球比赛投注策略的代码,正如由Lisandro Kaunitz(1,2)、中申军(3)和哈维尔·克里纳(4)撰写的用自己的号码击败博彩公司,以及在线体育博彩市场是如何被操纵的论文中所描述的那样。
@inProcestions{BeatTheBookies,作者={Lisandro Kaunitz and Shenjun zhong and Javier Kreder},title={用自己的号码击败博彩公司-以及在线体育博彩市场是如何被操纵的},Journal={arxiv:1710.02824v1},Year={2017}。
此存储库包含数据集、代码和指向在线仪表板的链接,该仪表板显示来自我们的投注策略的在线建议。如果你是一名体育博彩爱好者,并决定用纸质交易或真正的博彩来测试我们的建议,请记住,你这样做是在自己承担风险和责任。我们不对以下情况承担任何责任:A)您可能使用我们的代码,B)我们的在线仪表盘中包含的信息,或C)您在投注过程中可能遭受的任何金钱损失。
本软件按原样提供,没有任何明示或暗示的担保,包括但不限于适销性、特定用途适用性和不侵权的担保。在任何情况下,作者或版权所有者均不对因软件或软件中的使用或其他交易而引起、产生或与之相关的任何索赔、损害赔偿或其他责任,无论是在合同诉讼、侵权诉讼或其他诉讼中承担任何责任。
我们的策略是基于在网上寻找定价错误的赔率。我们提供我们使用的仪表盘以及我们战略的建议。你可以找到这个策略的一般性的非数学的简短解释(这里)。
仪表板显示了我们的策略建议为错误定价的游戏和赔率。如果博彩公司没有封锁我们的账户,我们肯定会在这些比赛上下注。除此之外,我们真的相信,考虑到投注和金钱回报的时间,部署这种策略的努力是完全没有价值的。
仪表板的外观是这样的。它显示即将到来的游戏、赔率、博彩公司和游戏开始前的剩余时间。
注意:SQL数据库文件大约有1.8 GB的数据。由于空间限制,SQL数据库只能通过Google Drive或Dropbox下载。
Sudo apt-add-pository ppa:octave/stablesudo apt-get update udo apt-get install octavesudo apt-get install octave-control octave-image octave-io octave-Optim octave-signal octave-Statistics octave-nan。
这些脚本是用Matlab测试的,但它们在Octave中也应该工作得很好,只需稍作调整。
这些分析再现了我们论文中的图1和图2。将关闭文件";Closing_odds.cvs";放入";/data";中。文件夹结构应如下所示:
第一次运行脚本时,请将";runStrategy";设置为1,以便脚本可以生成策略结果(之后,可以将";runStrategy";设置为";0";以节省一些时间)。然后运行:
此分析与论文中的图2B和图3相对应。在/data/中解压缩文件";ODDS_Series";和";Paper_trading_real_betting_Series";。文件夹保护应如下所示:
对于那些对使用数据集执行自己的分析感兴趣的人,我们提供了两个SQL数据库。两者都以从MySQL数据库导出的SQL转储的形式提供:
(1)";CLOSING_odds.csv";和";CLOSING_ODDS_SQL_db";。从2000-01-01到2015-09-06全球912个联赛880,494场足球比赛的历史收盘赔率和比赛信息。CSV文件是游戏(行)x特征(球队、比分、联赛等)的矩阵。有关功能的说明,请参阅MATLAB脚本。
(2)";ODDS_Series";和";ODDS_Series_SQL_db";。从2015年9月到2016年3月,全球553个联赛的31,074场足球比赛的连续赔率系列(带有赔率运动的赔率系列)和比赛信息。
(3)";ODDS_Series_b";和";ODDS_Series_b_SQL_db";。从2016年3月到2016年11月,全球658个联赛的82,786场足球比赛的连续赔率系列(带有赔率运动的赔率系列)和比赛信息。
提供的赔率被禁用的日期(可能为空,即它们在比赛开始前仍处于活动状态),在历史赔率数据库中不可用。
表";ODDS_HISTORY_SELECTION";:对于表ODDS_HISTORY中的每个条目,该表包含ODDS系列,即每次更新ODDS时都包含一个条目。
指定条目是否对应于成交赔率。值1表示成交赔率,任何其他值都表示不是成交赔率。
指定成交赔率在成交时是否处于活动状态,仅在历史赔率数据库中有效。
主场获胜的最大赔率时间与比赛开始之间的时间差(以秒为单位)。
平局的最大赔率时间与比赛开始之间的时间差(以秒为单位)。
提供最大赔率时间与客场取胜比赛开始之间的时间差(以秒为单位)
获得ID为170088的比赛的结束赔率(比利时:朱庇勒联赛,拉阿鲁维罗伊斯vs鲁格俱乐部,2004年2月11日),结果主场获胜:
使用CLOSING_ODDS;SELECT*FROMMATCH MINNER JONDDS_HISTORY OHON m.ID=oh.IDnerjoinJoinODDS_HISTORY_SELECTION OHSON oh.ODDS_HISTORY_ID=ohs.ODDS_HISTORY_IDWHEREM.ID=170088 AND OPENING_CLOSING=1 AND O。
使用ODDS_SELECTION;SELECT*FROM MATCHIES MINNER JOODDS_HISTORY OHON m.ID=oh.IDner JONER JONDES_HISTORY_SELECTION oh.ODDS_HISTORY_ID=ohs.ODDS_HISTORY_IDWHEREM.ID=879672 AND Oh.result=1 AND BOOKER=';YOWIN';;
对于那些对使用数据集感兴趣的人,我们提供了php和sql脚本来生成本文中使用的CSV文件。