滚球分析 利用聚类分析预测

首先本人也是足球爱好者 大学读的计算机专业 平时呢喜欢看看足球比赛 偶然机会呢接触到这个玩法。自己有7年看球经验+4年的编程经验 自然将这个足球比赛和程序联想到一起了。这篇文章主要讲讲这个策略的基本构思 以及程序的基本组成。

项目地址GitHub - wangzurong/football_predict: 足球走地分析

Kmeans算法

K-means算法是一种无监督学习算法,主要用于对数据进行聚类。该算法将数据集分为K个簇,每个簇包含最接近其质心的数据点。K-means算法将数据集视为具有n个特征的n维空间,并尝试通过最小化簇内平方误差的总和来将数据点划分为簇。它是一种迭代算法,通过将每个数据点分配到最近的质心并计算新的质心来迭代地改进簇的质量,直到质心不再变化或达到最大迭代次数为止

这是百度上摘抄的 我们只要知道 这个算法可以让我们将一堆比赛分成很多类。通过我们选取的这个特征值 我们就能将几十w场比赛变成几k类比赛。说到这里 大家应该能猜到 这个策略的核心思想就是 从历史比赛中去寻找一类能够实现盈利的比赛。

具体实现

我从某个著名的网站中获取了大量的历史数据。需要将这些数据通过kmeans算法来分类。第一点就是要选取特征值。很明显 比赛进行中的一些进攻数据 赔率 让分这些我们都可以认为是特征。特征值的选取要精准。无关的特征值会导致我们的分类效果不好。这个我后面会讲。通过kmeans分类之后。我们就需要对每一类的比赛进行数据的回测。

数据回测(盈利率)

我们拥有历史数据 就可以对当时的让分进行模拟投注 针对当前的比分和比赛结果进行模拟投注之后我们可以计算出我们的盈利。 在对每一类的比赛进行模拟投注之后。我们就能够得到每一类比赛的盈利率。盈利率就是我们的利润/(我们的投入)。这里我们就需要讲到抽水了。长赌必输讲的是啥呢。即使你是无规则的投注。其实在数学上来看 我们的胜负应该是五五开 。但是因为抽水 我们最后的盈利率肯定是小于0的。所以说,我们必须要达到一定的胜率(在一定的赔率上)。我们才能够战胜抽水。使得盈利率大于0。 我的历史数据是通过某个平台获取的。那么我的盈利率是在这个平台的抽水率之上进行计算的。意味着 如果某类比赛的盈利率大于0 那么我在这个平台上。这类比赛是可以盈利的。但是换到另外一个平台,这就需要对比两个平台的抽水率。下面是我进行回测之后。部分盈利率比较高的比赛种类。

可以看到 经过分类之后 在长期的模拟投注中 我们是可以实现盈利 战胜长赌必输这个法则的。

实时预测

得到我们的目标比赛种类之后 我们就能够通过训练好的kmeans模型来预测我们正在进行的比赛。也就是进行实战了。

经过一个月的实战和模拟投注。实战和模拟投注只是在某些比赛的某些时间赔率变化比较大。其他时候是相差不大的。只要你人能够跟住策略的推送。下面是一个月的模拟投注的情况。

每天平均是10个注单的推送。实现盈利率14% 命中率63% 。这个结果已经能够让我满意了。只要满足长期投注+均衡资金 即可实现收益。

web网站搭建

策略在理论和实战都取得一定的效果。那么如何将策略进行实战部署。也是一个工作。我分为策略分析端 数据抓取端 以及用户使用端。 策略分析端就是部署了kmeans模型的服务器接收实时传过来的特征数据 返回比赛类型 数据抓取端就是抓取比赛的进攻数据和指数 用户展示端就是将实时预测和历史预测的结果放置在网页上 方便使用。 这是网站的图片

其他问题

目前需要解决的就是即时推送的问题 因为策略的盈利和指数由很大的关系。需要及时的跟住策略的推送。人不可能24h盯着网页。需要通过一个推送程序及时通知用户。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值