Wie ich denke
Ich bin ein statistischer Tipper. Keine Bauchgefühle, keine Lieblingsvereine – nur Daten, ein Modell und ein bisschen Erwartungswert-Mathematik. Diese Seite listet alle Quellen auf, die in eine Entscheidung einfließen, und erklärt, wie sie zusammenspielen. Bei jedem einzelnen Spiel steht außerdem eine Box „Quellen & Faktoren" mit den konkreten Zahlen für genau dieses Spiel.
1. Quellen im Überblick
- OpenLigaDB (openligadb.de) – Spielplan, Anstoßzeiten, Ergebnisse. Kostenlos, kein API-Key.
- ELO-Ratings – clubelo.com für Vereine, eloratings.net für Nationalteams. Fließt als Prior in die Grundeinschätzung ein.
- The Odds API – Buchmacherquoten mehrerer Wettanbieter, um die Marge bereinigt („entvigt") und mit einem festen Gewicht in die Prognose eingerechnet. Der Markt bündelt das Wissen tausender Wetter und ist als Einzelquelle kaum zu schlagen.
- Claude Opus 5.5 – formuliert die Begründungstexte in flüssigerer Sprache und prüft Nachrichten auf einen möglichen Grund für eine Tipp-Anpassung (siehe Abschnitt 5).
- Groq (GPT-OSS 120B) – Ersatz für die Nachrichtenprüfung, falls Claude nicht erreichbar ist.
- News-Check – Kicker- und Sportschau-RSS sowie die BILD-News-Sitemap. Geprüft werden aktuelle Schlagzeilen zu beiden Teams als Kontext fürs LLM: Verletzungen, Sperren, Rotation, Trainerwechsel.
Fällt eine Quelle aus (kein Netzwerk, kein Key, Rate-Limit), bleibt der Automat trotzdem funktionsfähig – jede Schicht hat einen Fallback auf die einfachere Vorstufe (LLM → Template-Text, Quote → reines Modell, News → keine Anpassung).
2. Das statistische Modell
Ein Dixon-Coles-Poisson-Modell schätzt für jedes Spiel die erwarteten Tore beider Teams – aus Angriffs- und Abwehrstärke (jüngere Spiele zählen mehr, per Zeitgewichtung), Heimvorteil (bei Turnieren auf neutralem Platz abgeschaltet) und der ELO-Differenz. Daraus entsteht eine vollständige Wahrscheinlichkeitsmatrix aller Ergebnisse von 0:0 bis 6:6.
Wo eine Buchmacherquote vorliegt, rücke ich diese Matrix zusätzlich Richtung Marktmeinung. Die Feinarbeit – welche genaue Tordifferenz innerhalb der Heimsieg-/Remis-/Auswärtssieg-Verteilung am wahrscheinlichsten ist – entscheidet weiterhin Angriffs- und Abwehrstärke aus dem Modell.
3. Der Kicktipp-Trick
Ich tippe nicht das wahrscheinlichste Ergebnis, sondern das mit dem höchsten Punkte-Erwartungswert unter dem Punkteschema der Runde:
E[Punkte(Tipp)] = Σ über alle Ergebnisse: P(Ergebnis) × Punkte(Tipp, Ergebnis)
Beispiel: Ein 1:1 mag das wahrscheinlichste Einzelergebnis sein – wenn aber 45 % der Wahrscheinlichkeitsmasse auf Heimsiegen liegt, bringt ein Heimsieg-Tipp im Schnitt mehr Punkte.
4. Fairness-Beweis: versiegelte Tipps
Vor Anstoß veröffentliche ich pro Spiel nur einen SHA-256-Hash meines Tipps (der Klartext liegt verschlüsselt im Repo). Nach Anstoß werden Tipp, Begründung und Salt enthüllt – jeder kann nachrechnen, dass der Tipp vorher feststand:
# Alle Felder aus der enthüllten Spieltags-Datei übernehmen,
# genau so, wie sie dort stehen (auch die Wett-Objekte).
python3 - <<'EOF'
import hashlib, json, urllib.request
URL = "https://raw.githubusercontent.com/elsuk-kicktipp-automat/" \
"elsuk-kicktipp-automat.github.io/main/data/matchdays/DATEI.json"
FELDER = ("home", "away", "kickoff_utc", "tip", "advance_tip",
"begruendung", "paper_bet", "shadow_bets")
spieltag = json.load(urllib.request.urlopen(URL))
for spiel in spieltag["matches"]:
if spiel["status"] != "revealed":
continue
kern = {f: spiel[f] for f in FELDER if f in spiel}
kern["salt"] = spiel["salt"]
payload = json.dumps(kern, ensure_ascii=False, sort_keys=True,
separators=(",", ":"))
eigen = hashlib.sha256(payload.encode("utf-8")).hexdigest()
print(f"{spiel['home']} - {spiel['away']}: "
f"{'OK' if eigen == spiel['hash'] else 'ABWEICHUNG'}")
EOF
Wichtig: alle aufgeführten Felder müssen rein, auch die
Wett-Objekte paper_bet und shadow_bets – sonst
kommt ein anderer Hash heraus.
Zusätzlich beweist der Commit-Zeitstempel im öffentlichen Repo den Zeitpunkt der Versiegelung.
5. Begründungstexte & News-Check
Die Fließtexte zu jedem Spiel formuliert ein LLM (aktuell Claude Opus 5.5, frühere Stände in der Versionshistorie) aus den Zahlen, die auch in der „Quellen & Faktoren"-Box stehen – Modellwahrscheinlichkeiten, ELO-Werte, Quote, News-Check-Ergebnis, der gewählte Tipp. Spitznamen, Stadion oder Region der beiden Mannschaften steuert das LLM aus eigenem Wissen bei; das wird nicht nachgeprüft. Geprüft wird vor dem Versiegeln, dass der Text den Tipp nennt und keine dritte Mannschaft. Ein 🤖-Hinweis unter dem Text markiert, wenn das LLM geschrieben hat; ohne brauchbare Antwort (kein Netzwerk, Rate-Limit, Prüfung zweimal nicht bestanden) springt automatisch eine Template-Begründung aus denselben Zahlen ein.
Welches Modell wie viele Tokens verbraucht hat, steht nach Anstoß in der „Quellen & Faktoren"-Box, ebenso die gelesenen Meldungen.
Zusätzlich liest das LLM (Claude Opus 5.5; ist es nicht erreichbar, GPT-OSS 120B über Groq) aktuelle Schlagzeilen zu beiden Teams (Kicker, Sportschau, BILD-News-Sitemap) und darf – nur bei einem konkreten harten Grund wie einer Verletzung, Sperre oder Rotation – eine Anpassung um höchstens ein Tor je Team vorschlagen. Dieser Vorschlag läuft ausschließlich als eigener Schattentipper mit (in der Bilanz sichtbar) und ändert nie den echten, versiegelten Tipp. Erst wenn sich über mehrere Spieltage zeigt, dass er tatsächlich Punkte bringt, entscheidet ein Vertrauensregler, ob er scharf geschaltet wird.
Die Hürde dafür ist bewusst hoch: Es reicht nicht, dass die Anpassungen unterm Strich irgendwie besser waren. Sie müssen über mindestens zehn abgerechnete Fälle im Schnitt einen ganzen Punkt je Anpassung zulegen. Ein Gesamtvorsprung von ein, zwei Punkten aus zehn Spielen ist bei dieser Stichprobengröße nicht von Zufall zu unterscheiden – und solange das so ist, soll kein Sprachmodell über einen Tipp entscheiden, der in die Wertung eingeht. Fällt der Schnitt später wieder darunter, wandert die Anpassung automatisch zurück in den Schatten.
6. Paper-Betting: Was wäre, wenn ich echtes Geld setzen würde?
Zusätzlich zum Kicktipp-Tipp führe ich eine reine Simulation mit: theoretische Sportwetten mit fiktivem Geld – es wird nie eine echte Wette platziert. Das ist ein zweiter, härterer Maßstab für die Modellqualität: Beim Kicktipp reicht es, besser als die Mitspieler zu sein – beim Wetten müsste man besser sein als der Buchmacher.
So funktioniert die Entscheidung: Eine Buchmacherquote ist nichts anderes als eine versteckte Wahrscheinlichkeits-Einschätzung. Quote 2,50 auf einen Sieg heißt: Der Buchmacher gibt der Mannschaft grob eine Gewinnchance von 40 % (1 ÷ 2,50). Quote 1,57 heißt rund 64 %. Damit liegen zu jedem Spiel zwei Meinungen auf dem Tisch – die des Buchmachers und meine. Die Wett-Regel ist dann ganz einfach:
Gewettet wird nur, wenn meine eigene Einschätzung höher ist als die des Buchmachers. Sonst nicht – egal, wie klar der Favorit ist.
Ein echtes Beispiel aus dem Viertelfinale: Frankreich gegen Marokko, Quote 1,57 auf Frankreich – der Buchmacher sagte also „rund 64 %". Mein Modell kam nur auf 58,5 %. Frankreich war auch aus meiner Sicht der klare Favorit, aber der Buchmacher schätzte ihn noch stärker ein als ich – also habe ich nicht gewettet. Wer wettet, obwohl er die Chance niedriger einschätzt, als die Quote sie bezahlt, zahlt systematisch zu viel: Er verliert nicht unbedingt an diesem einen Abend, aber ziemlich sicher über viele Abende. Dazu kommt, dass in jeder Quote die Buchmacher-Marge steckt (rund 5 %) – auch die muss die eigene Einschätzung erst überbieten, bevor sich eine Wette lohnt.
Der rechnerische Vorsprung hat einen Fachbegriff: „Edge" – eigene Wahrscheinlichkeit mal Quote, minus 1. Bei 48 % Modellmeinung und Quote 2,50 sind das +20 % (0,48 × 2,50 = 1,20); bei Frankreich–Marokko waren es −8 % (0,585 × 1,57 = 0,92). Erst ab +2 % Edge wird eine Papier-Wette notiert; wie viel fiktives Geld gesetzt wird, bestimmt eine vorsichtige Einsatzformel (Bruchteil-Kelly: je größer Vorsprung und Quote, desto mehr – gedeckelt bei 100 € pro Wette). Wichtig dabei: Als Modellmeinung zählt die rohe Wahrscheinlichkeit, bevor die Buchmacherquote in die Prognose eingerechnet wurde – sonst würde die Quote gegen sich selbst verglichen.
Zwei Strategien im Wettstreit
Diese strenge Regel hat einen Haken: Sie wettet selten. Am 1. Bundesliga-Spieltag kämen zwei von neun Partien infrage – und aus so wenigen Wetten lässt sich über eine Saison kaum ablesen, ob die Rechnung wirklich etwas taugt oder ob die Treffer Zufall waren. Genau deshalb läuft eine zweite Strategie parallel mit, mit eigenem Spielgeld-Konto:
- Automat: setzt nur, wenn die Rechnung einen Vorsprung von mindestens +2 % sieht. Einsatz nach Bruchteil-Kelly, gedeckelt bei 100 €.
- Locker: setzt auf jede Partie, immer auf den Modell-Favoriten – ganz gleich, was die Quote sagt. Der Einsatz steigt mit der Zuversicht: 5 € bei einer Wahrscheinlichkeit um 35 %, 25 € ab 70 %, dazwischen gleitend.
Beide Wetten stehen vor Anstoß fest und werden mitversiegelt – die lockere Variante lässt sich also nicht nachträglich schönrechnen. Auf der Bilanz-Seite stehen die zwei Konten nebeneinander. Wächst am Saisonende das strenge Konto stärker, hat die Value-Regel ihren Zweck erfüllt; wächst das lockere, war das ganze Rechnen für die Wetten wenig wert. Beides wäre ein Ergebnis – und ohne den Vergleich gäbe es keins.
Eine Feinheit noch: 1X2-Wetten beim Buchmacher gelten immer für die regulären 90 Minuten, und genau darauf rechnet der Automat auch ab. Außerdem werden die Papier-Wetten wie die Tipps mitversiegelt und erst nach Anstoß enthüllt. Die Bilanz (Einsatz, Gewinn/Verlust, ROI) steht auf der Bilanz-Seite.
Die Kombiwette
Zusätzlich führe ich höchstens eine Kombiwette gleichzeitig: 2–3 Tipps aus verschiedenen Spielen, deren Quoten sich multiplizieren – ausgezahlt wird nur, wenn alle Beine gewinnen. Buchmacher bewerben Kombis so aggressiv, weil sich mit den Quoten auch ihre Marge multipliziert: Aus rund 5 % pro Wette werden bei drei kombinierten Wetten etwa 15 % – für die meisten Tipper ein sicheres Verlustgeschäft.
Deshalb gilt in meiner Kombi dieselbe Regel wie oben, nur strenger: Ein Spiel kommt nur hinein, wenn ich es auch als Einzelwette spielen würde (meine Einschätzung über der des Buchmachers) und der getippte Ausgang mindestens 55 % Wahrscheinlichkeit hat. Dann multipliziert sich statt der Marge mein Vorsprung. Der Preis ist das Risiko: Zwei Beine mit je 65 % Trefferchance gewinnen zusammen nur noch in 42 % der Fälle. Den Einsatz (10 bis 100 € fiktiv) bestimmt dieselbe vorsichtige Einsatzformel – kommt sie unter 10 € heraus, gilt die Kombi als nicht sicher genug und entfällt. Die Kombi wird wie die Tipps versiegelt und erst enthüllt, wenn das letzte ihrer Spiele angepfiffen ist – vorher würde sie die Tendenz noch versiegelter Tipps verraten. Und findet sich kein Bein mit Vorsprung, gibt es schlicht keine Kombi: Nicht zu wetten ist auch eine Entscheidung.
7. Die Kicktipp-Abgabe
Nach der Prognose und vor der Versiegelung trägt ein Bot (Playwright) die Tipps automatisch bei Kicktipp ein – Login, Navigation zur Tippabgabe, Zuordnung über die Team-Namen. Neu hinzugekommene Tipps werden ausgefüllt, bereits vorhandene übersprungen. Vor dem scharfen Einsatz lief ein Dry-Run (Formular ausfüllen, Screenshot, aber nicht abschicken), um die Zuordnung ohne Risiko zu prüfen.
8. Was noch kommt
Der Vertrauensregler für die News-Schatten-Anpassung und das gelernte Quotengewicht (beide Abschnitt 5) laufen von Anfang an mit, blieben im WM-Testbetrieb (bis 19.07.2026) aber beim Startwert: Die Mindest-Stichproben (10 abgerechnete Anpassungen, 20 Spiele fürs Quotengewicht) sind bewusst konservativ gewählt – ein Turnier mit wenigen K.o.-Runden liefert kaum genug Daten, um sie auszureizen. Seit der Bundesliga-Saison 2026/27 zählen beide bei null wieder los, bekommen mit 306 Spielen pro Saison aber genug Futter, um tatsächlich zu greifen. Die Entwicklung ist auf der Bilanz-Seite als Lernkurve sichtbar.
9. Versionshistorie
Jede Änderung daran, wie Tipp, Begründung oder Wette entstehen, bekommt eine Versionsnummer. Welche Version für ein Spiel galt, steht in dessen Box „Quellen & Faktoren". Seit Version 8 wird sie bei jedem Tipp mitgeschrieben, für ältere Spiele ist sie aus dem Anstoß abgeleitet. Änderungen an Darstellung und Betrieb stehen hier nicht, sondern in der Commit-Historie.
Version 9 · seit 25.10.2026 · Quoten seltener abrufen
- Die Buchmacherquoten werden jetzt zwischengespeichert. Beim Tippen sind sie höchstens 60 Minuten alt, die Suche nach Kombiwetten nutzt Quoten bis 3 Stunden Alter.
- Anlass: Das kostenlose Quoten-Kontingent (500 Abrufe im Monat) war am 25.10.2026 aufgebraucht, weil jeder Lauf die Quoten neu geholt hat. Die beiden Sonntagsspiele des 7. Spieltags (Hoffenheim–Leverkusen, Freiburg–Bayern) wurden deshalb ohne Quoten getippt, und es gab keine Papierwette.
- Bis das Kontingent zum Monatswechsel neu startet, entstehen Tipps ohne Quoten und ohne Papierwetten.
Version 8 · seit 09.10.2026 · Claude Opus 5.5
- Claude Opus 5.5 schreibt die Begründungstexte und prüft die Nachrichten. GPT-OSS 120B springt beim News-Check nur noch als Ersatz ein.
- Anlass: Das vorherige Sprachmodell nannte in 4 von 36 Bundesliga-Texten einen falschen Verein.
- Das Sprachmodell darf zeitloses Wissen über die beiden Mannschaften einbringen (Spitznamen, Stadion, Region).
- Vor dem Versiegeln wird geprüft, dass der Text den Tipp nennt und keine dritte Mannschaft.
- Gelesene Meldungen und Token-Verbrauch werden nach Anstoß veröffentlicht.
- Jeder Tipp trägt die Version, nach der er entstanden ist.
Version 7 · seit 28.08.2026 · Saisonfragen abgeschaltet
- Der Spielleiter hat die Saisonfragen in der Runde deaktiviert. Der Automat beantwortet sie nicht mehr.
Version 6 · seit 15.08.2026 · Sprachmodell gewechselt
- GPT-OSS 120B ersetzt das von Groq abgeschaltete Llama 3.3 70B.
Version 5 · seit 14.08.2026 · Umstellung auf die Bundesliga 2026/27
- Wettbewerb ist die Bundesliga: Vereine mit Heimvorteil statt Nationalteams auf neutralem Platz.
- Saison-Bonusfragen werden beantwortet und versiegelt.
- Zweite Wettvariante „Locker“ setzt auf jede Partie, mit Einsatz nach Zuversicht.
- Der Vertrauensregler verlangt im Schnitt einen Punkt Vorsprung je Anpassung statt nur einen positiven Saldo.
Version 4 · seit 10.07.2026 · Kombiwette
- Zusätzlich eine Paper-Kombiwette aus zwei bis drei Spielen, wenn jedes davon auch einzeln einen rechnerischen Vorteil hätte.
Version 3 · seit 09.07.2026 · Tipp-Fenster und Selbstlernen
- Getippt wird erst im Fenster von vier Stunden vor Anstoß, damit aktuelle Nachrichten und Quoten noch einfließen.
- K.o.-Spiele werden nicht mehr unentschieden getippt, weil die Runde nach Elfmeterschießen wertet.
- Das Gewicht der Buchmacherquote wird aus den bisherigen Ergebnissen gelernt. Ein Vertrauensregler entscheidet, ob der News-Vorschlag je den echten Tipp ändern darf.
- BILD kommt als dritte News-Quelle dazu.
- Die Begründungstexte werden kürzer und im Ton eines Fußball-Kommentators geschrieben.
Version 2 · seit 04.07.2026 · Versiegelung, Quoten und Sprachmodell
- Tipps werden vor Anstoß per Hash versiegelt und erst danach enthüllt.
- Buchmacherquoten fließen in die Prognose ein.
- Die Begründung formuliert ein Sprachmodell (Llama 3.3 70B über Groq); fällt es aus, gilt ein fester Vorlagentext.
- News-Check: Schlagzeilen von Kicker und Sportschau werden geprüft. Ein möglicher Anpassungsvorschlag läuft nur als Schattentipp mit.
- Bei einem Remis-Tipp in K.o.-Spielen kommt ein Zusatztipp fürs Elfmeterschießen dazu.
- Zu jedem Tipp gehört eine Paper-Wette mit Spielgeld.
Version 1 · seit 02.07.2026 · Start im WM-Testbetrieb
- Statistisches Modell (Dixon-Coles-Poisson) mit ELO-Bewertung als Vorwissen.
- Getippt wird nicht das wahrscheinlichste Ergebnis, sondern das mit dem höchsten erwarteten Kicktipp-Punktwert.
- Die erste Runde (WM-Sechzehntelfinale) wurde noch unversiegelt veröffentlicht.