Analysis updated 2026-05-18
Pull team rankings, player ratings, and match history from HLTV's mobile API.
Run a Monte Carlo simulation of an entire Swiss bracket to estimate outcomes.
Find the pickem ticket with the best chance of getting five or more predictions correct.
Backtest the model's picks against actual results from past Major stages.
| leclowndu93150/pickem-prediction-model | 920linjerry-stack/capital-studio | adya84/ha-world-cup-2026 | |
|---|---|---|---|
| Stars | 16 | 16 | 16 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | easy | easy |
| Complexity | 3/5 | 3/5 | 2/5 |
| Audience | general | researcher | general |
Figures from each repo's GitHub metadata at analysis time.
Needs Python plus curl_cffi to mimic HLTV's mobile app, and a full 20,000-simulation run takes about 10 minutes.
This project is a prediction tool for the Counter-Strike Major pickem game hosted on HLTV, the main stats and news site for professional CS. The pickem challenge asks fans to predict which teams will finish at the top, middle, or bottom of each Swiss stage, a tournament format where teams play opponents with the same win-loss record until they reach three wins or three losses. The tool is split into two parts. The first is a Python wrapper around HLTV's mobile app internal API, pulling team rankings, player ratings, match history, map statistics, and head-to-head records. The second is a Monte Carlo simulator that plays out the entire Swiss bracket thousands of times with randomized match results to estimate probabilities, then finds the ticket with the best chance of getting five or more predictions correct, the threshold for earning a reward in the game. The model combines several signals when simulating matches: each team's Elo rating (a number representing relative competitive strength), HLTV's VRS standing (Valve's own ranking used to seed Majors), player-level performance ratings, head-to-head history between teams, and map pool comfort for best-of-three series. The simulator also models the veto process where teams pick and ban maps before a series begins. On a three-event sample, the model averaged 6.7 out of 10 correct predictions per stage, compared to 5.7 for simple rank-based approaches. The README is candid that three events is too small to draw firm conclusions. Setup requires Python and the curl_cffi library, which impersonates the mobile app's network fingerprint so HLTV's servers accept the requests. Running the full simulation for one event stage takes about 10 minutes at 20,000 simulations. Reducing the simulation count to 5,000 speeds things up considerably with little change to the final ticket selection.
A Monte Carlo simulator that predicts Counter-Strike Major Swiss stage results to help pick the best HLTV pickem ticket.
Mainly Python. The stack also includes Python, curl_cffi.
The README does not state a license.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly general.
This repo across BitVibe Labs
Verify against the repo before relying on details.