🏆 I built a live AI-powered match predictor for the 2026 FIFA World Cup — and it updates itself every hour, automatically.
48 teams. 104 matches. The biggest sporting event on the planet.
So I asked myself: can machine learning predict what no one can?
🤖 𝗧𝗛𝗘 𝗠𝗢𝗗𝗘𝗟
Not just another ELO-based predictor. This one combines:
⚡ Live ELO ratings — recalculated after every WC match
📈 Recent form — last 5 & 10 official matches
⚔️ Head-to-head history — including World Cup-only records
👥 Squad strength — EA FC 26 player ratings
💰 Market value — Transfermarkt squad valuations
🎯 Penalty shootout win rate — the "clutch factor" most models ignore
🔥 Knockout pressure — encoded as a binary feature
⚠️ Upset detection — flags weaker teams in better form
Dual-model ensemble: XGBoost + Poisson Regression
22 engineered features across 9 categories
Trained on 49,477 international matches (1872–2026)
🔧 𝗧𝗛𝗘 𝗥𝗘𝗔𝗟 𝗘𝗡𝗚𝗜𝗡𝗘𝗘𝗥𝗜𝗡𝗚 𝗖𝗛𝗔𝗟𝗟𝗘𝗡𝗚𝗘
Building the model wasn't the hard part — keeping it LIVE was.
Results change daily, teams get eliminated mid-tournament, and shootouts aren't always recorded immediately.
The solution: an update engine that runs every hour — fetching results, detecting eliminated teams, recalculating ELO, and handling shootouts with smart fallback logic. Fully automated.
📊 𝗧𝗛𝗘 𝗕𝗜𝗚𝗚𝗘𝗦𝗧 𝗧𝗛𝗜𝗡𝗚 𝗜 𝗟𝗘𝗔𝗥𝗡𝗘𝗗
Early versions suffered from "ELO Dominance" — assuming the stronger team almost always wins. Statistically wrong.
The fix: convert raw ELO difference into a calibrated win probability using the standard logistic formula. Now a +300 ELO advantage means ~88% win probability, not 100%.
Because football is unpredictable. That's what makes it beautiful.
🖥️ 𝗧𝗛𝗘 𝗗𝗔𝗦𝗛𝗕𝗢𝗔𝗥𝗗
A 6-page Streamlit app featuring:
🔮 Match prediction — Win/Draw/Loss probabilities
🔵 Group stage simulation — Monte Carlo standings
🏆 Championship probability per team
📄 Downloadable PDF report
🌙 Dark/Light mode
🇸🇦 Arabic / 🇬🇧 English support
🎬 Full walkthrough in the video below 👇
🔴 Live App →
https://lnkd.in/e8BuSUh7
🐙 GitHub →
https://lnkd.in/ej8w_cUq
⚠️ Built for educational & portfolio purposes. Predictions are probabilistic — not guarantees 😄
What feature would YOU add to improve upset prediction? Drop it below 👇
#MachineLearning #DataScience #Streamlit #SportsAnalytics #FIFA2026