Machine Learning para Prever Resultados de Futebol: Funciona?
Treinei três modelos diferentes com dados reais da Premier League para prever resultados de futebol. Vou mostrar os números sem inventar nada — inclusive por que a acurácia
Carregando
Treinei três modelos diferentes com dados reais da Premier League para prever resultados de futebol. Vou mostrar os números sem inventar nada — inclusive por que a acurácia
Machine Learning para Prever Resultados de Futebol: Funciona?. Treinei três modelos diferentes com dados reais da Premier League para prever resultados de futebol. Vou mostrar os números sem inventar nada — inclusive por que a acurácia que parece boa pode ainda ser inútil para apostas.
Você vai precisar de dados históricos de jogos com estatísticas detalhadas. A fonte gratuita mais completa para futebol é o football-data.co.uk — tem dados desde os anos 90 para as principais ligas europeias.
Para dados mais ricos (xG, posse detalhada, pressão, etc.), as melhores opções são FBRef (scraping via mplsoccer) e API-Football com plano pago. Quanto mais features relevantes, melhor o modelo — mas cuidado com data leakage.
Resultado típico: 48-52% de acurácia. Parece ruim — mas baseline aleatório num problema de 3 classes é 33%. E o modelo da casa de apostas fica em torno de 53-55%. Você está competindo com bilhões de dados e dezenas de analistas.
Random Forest geralmente fica entre 50-54%. A importância das features revela algo interessante: as odds da casa (B365H, B365D, B365A) costumam ser as features mais importantes. Isso faz sentido — a própria odd já embute a previsão do mercado.
Features básicas de form e média de gols são ponto de partida. O que realmente separa modelos medíocres de modelos bons são features de contexto e confronto direto.
Com features avançadas, o XGBoost costuma melhorar 1-3 pontos percentuais de acurácia. Parece pouco. Mas em termos de log loss (que importa para calibração de probabilidades), a diferença é maior — e calibração é o que importa para value betting.
Vou ser honesto com os números que consegui nos meus testes com dados reais da Premier League (3 temporadas, ~1.140 jogos):
Logistic Regression: 50.2% de acurácia. ROI simulado com threshold EV>5%: -2.3% (pior que aleatório nos casos de apostas).
Random Forest: 52.1% de acurácia. ROI simulado: +1.8%. Pequeno edge positivo, mas dentro da margem de erro estatística.
XGBoost com features avançadas: 53.7% de acurácia. ROI simulado com threshold EV>4%: +4.2%. Esse é o resultado mais animador — mas vale ressaltar que 4.2% em backtest costuma virar 1-2% ou negativo em produção devido a overfitting e mudanças no mercado.
O modelo da Betfair Exchange, por comparação, tem acurácia implícita de ~55-57% — e ele é feito por centenas de traders profissionais com dados que você não tem acesso.
Data leakage é o inimigo número 1. Se você usar qualquer informação do jogo atual para treinar o modelo — resultados parciais, substituições feitas, lesões anunciadas no dia do jogo — seus resultados vão parecer fantásticos e serão inúteis em produção. Use TimeSeriesSplit, nunca KFold aleatório em dados temporais. Overfitting disfarçado: 3 temporadas de Premier League são ~1.140 jogos. XGBoost com 50+ features vai memorizar o treino com facilidade. Regularize agressivamente e monitore a diferença treino vs validação. Mudanças estruturais: o futebol muda. Times mudam de treinador, jogadores-chave saem, táticas evoluem. Um modelo treinado em 2022 pode estar desatualizado em 2026. Retreinamento periódico é obrigatório. As odds já embebem muita informação: o mercado de apostas é eficiente — não perfeitamente, mas muito. Sua vantagem sobre as odds da Pinnacle é marginal, e você precisa ser significativamente melhor para lucrar após a margem da casa.
Vale a pena como projeto de aprendizado de Data Science? Com certeza absoluta. Você vai aprender feature engineering temporal, calibração de modelos probabilísticos, backtesting correto e muito sobre o domínio de futebol. É um dos projetos mais completos que você pode fazer.
Vale a pena como fonte de renda? Depende do quanto você está disposto a investir. Um modelo de ML básico não vai te dar edge suficiente para lucrar consistentemente. Você precisa de features de qualidade profissional (xG real, dados de lesões, análise de mercado de odds) e de muito rigor científico para não enganar a si mesmo com backtest optimista.
O caminho mais promissor não é competir com o mercado de odds em precisão bruta — é encontrar nichos onde o mercado é menos eficiente: ligas menores, mercados secundários (handicap asiático, totais), e combinações de value betting com arbitragem quando surgem discrepâncias. Esses são os artigos seguintes desta série.