实施机器学习方法来制定有利可图的足球投注策略。

实施机器学习方法来制定有利可图的足球投注策略。

预测足球博彩的结果是一项棘手的工作。下注者不仅要处理大量变量并判断它们对结果的影响,还要巧妙地下注,使其随着时间的推移超过博彩公司的预测。我在本文中详细介绍的项目的目的是开发一个预测模型和一个简单的基于规则的投注系统,这将成功地为投注者带来健康的长期赌注回报。

为了使任务更容易,我避免尝试预测比赛的最终结果。我们专注于预测更简单的事件,例如上半场进球、两队得分、超过/低于 2.5 个进球以及半场结果。我使用 python 中的 selenium 包构建了一个网络爬虫,使用 jupyter notebook 为两个团队收集固定装置并形成数据。在处理和特征工程之后,我们构建了一个预测模型并开发了一组规则以应用于模型预测。本文只关注上半场进球的预测。

网络爬虫抓取每支球队的主场和客场数据,以及每支球队在主场或客场的联赛表现。我还收集了联赛范围内的进球数据——即所有联赛结果的平均值。我排除了比赛数量不足的联赛。收集的数据是平均进球数和平均失球数。

我没有收集球员统计数据。这样做的原因是我想要大量的数据样本,而许多较小的联赛都没有球员统计数据。排除这些较小的联赛将删除许多始终以上半场进球为特色的联赛。我没有包括任何整体表格数据,感觉整体表格统计数据将是主客场表格之上不必要的补充。刮板还从每场比赛的 5 家博彩公司那里收集了上半场进球的平均价格,以及主场获胜、客场获胜和中场平局的平均价格。抓取的数据被收集并存储在字典中,由此我生成了结果数据框:

最后一列“上半场目标”是一个二元分类变量。这是目标变量。我们数据集中的比赛有超过 70% 的时间是上半场进球。

在继续进行特征工程之前,我从数据框中删除了所有空值,最终得到一个包含 2,042 个观测值和 16 个变量的数据框。特征工程过程很简单。我使用数据框中的平均值计算了 k = 0 时的泊松累积密度函数。总共创建了六个新变量。我还计算了博彩公司赔率的隐含概率,并将这些新列添加到数据框中。

我不会在本文中概述接下来的步骤。即:模型选择、特征选择和超参数调优。我选择了一个 XGBoost 分类器,使用 AUC 评估指标。在删除了最密切相关的变量和一些较弱的变量后,我有以下数据框来训练模型:

训练的结果可以在下面的截图中看到:

为了构建有利可图的策略,我们真正感兴趣的是模型识别重要赌注的能力。因此,我们使用以下代码来查看模型精度和各种阈值下的召回率:

鉴于我们数据集中 70% 的比赛都有上半场进球,我认为很明显该模型具有良好的预测能力。然而,模型召回的低值意味着我们错过了大量的获胜赌注。

基于这些结果,我选择了 0.8 的阈值。我们现在将排除所有其他预测,并寻求为我们的投注策略制定一套规则。在这一步之前,我们看一下单独行动的模型的财务:

不好;我们有一个预测良好但无法超越博彩公司的模型!然而,经过一些实验,我能够设计出以下简单的规则来帮助我们从模型的选择中选择最佳投注:

  1. 如果模型预测的概率超过 0.85,并且模型的预测高于博彩公司的概率,我们下注 2 个单位。
  2. 如果模型预测超过 0.80 并且这高于博彩公司的概率,我们下注 1.5 个单位。
  3. 如果模型预测超过 0.7 并且模型预测比博彩公司的赔率高 0.05 以上,我们下注 1.25 个单位。
  4. 最后,如果模型预测超过 0.8 并且模型的预测在博彩公司概率的 0.05 以内,我们下注 1 个单位。

我们用下面截图的代码来计算这个系统的成功:

这是一个巨大的进步! 一个 41 次投注 39.05% 回报 .我们看到规则为我们提供了一个有用的过滤器,去除了一些失败的预测,也为我们的获胜预测带来了更大的回报。

完成我的足球预测项目的第一阶段后,我的收获是双重的。首先,这个项目给我留下了深刻的印象,即模型通常在为决策提供信息方面最有用。没有模型是完美的,因此不应该盲目地使用模型来做出决策。第二个是简单性胜过复杂性。我们在模型中使用的变量很容易计算,并且它们的包含是完全直观的。生成的模型在很短的时间内就完成了训练,接下来我们可以轻松地将变量添加到我们的模型中,看看它们是否可以提高性能。

接下来的议程是半场结果,以及 BTTS(两队得分)预测!跟我来阅读这些即将发布的文章和更多内容!

我将每天在我的推特提要上发布预测列表以及推荐的赌注,可以在这里找到: https://twitter.com/ML_Soccer_Bets

9 月 10 日星期六发布的榜单得分为 32/37(超过 86%),而今天早些时候发布的榜单得分为 4/5!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/30314/34211208

posted @ 2022-09-12 08:35  哈哈哈来了啊啊啊  阅读(436)  评论(0编辑  收藏  举报