Φτιάξε το δικό σου μοντέλο πρόβλεψης ποδοσφαίρου
Τα δεδομένα που χρειάζεσαι, ένα μοντέλο Poisson που χτίζεται βήμα βήμα σε πλήρη πίνακα σκορ, οι διορθώσεις που αξίζει να προσθέσεις, ο έλεγχος με walk-forward που κρατά το μέλλον έξω, και η αριθμητική που λέει πότε ένα μοντέλο δεν αξίζει τις ώρες.
Ένα μοντέλο πρόβλεψης ποδοσφαίρου είναι μια διαδικασία που μετατρέπει την ιστορία των αγώνων σε πιθανότητα για κάθε πιθανό σκορ, και από αυτόν τον πίνακα σε απόδοση για κάθε αγορά του δελτίου. Ο πυρήνας του είναι μία κατανομή και δύο αριθμοί ανά αγώνα — πόσα γκολ αναμένεται να πετύχει κάθε πλευρά. Ό,τι ακολουθεί είναι υγιεινή δεδομένων, διορθώσεις και έλεγχος, που είναι εκεί όπου τα περισσότερα σπιτικά μοντέλα αποτυγχάνουν σιωπηλά.
Με λίγα λόγια.
- Χρειάζεσαι αποτελέσματα αγώνων με ημερομηνίες και έδρες, όχι μέσους όρους σεζόν. Δώδεκα εντός και δώδεκα εκτός έδρας αγώνες ανά σύλλογο είναι το ελάχιστο για να δουλέψει.
- Το βασικό μοντέλο είναι Poisson: δύο τιμές αναμενόμενων γκολ παράγουν έναν πίνακα σκορ, και το 1Χ2, τα over/under και το γκολ/νο γκολ είναι όλα αθροίσματα κελιών σε αυτόν τον πίνακα.
- Στο παράδειγμα που δουλεύουμε, ο πίνακας δίνει 51,4% εντός, 24,5% ισοπαλία, 24,1% εκτός — δίκαιες αποδόσεις 1,95, 4,08 και 4,14.
- Κάνε έλεγχο walk-forward ή καθόλου: κάθε αριθμός που υπολογίζεται από ολόκληρη τη σεζόν περιέχει το αποτέλεσμα του αγώνα που στοιχηματίζεις.
- Το σημείο αναφοράς δεν είναι το κέρδος αλλά η αγορά: αν οι πιθανότητές σου δεν είναι καλύτερες από αυτές του δελτίου, κανένα πλάνο στοιχηματισμού δεν τις σώζει.
Τι πρέπει να ξεπεράσει το μοντέλο
Η σύγκριση δεν είναι το μοντέλο σου ενάντια στην πραγματικότητα αλλά ενάντια στην απόδοση. Ένα τριπλό δελτίο συνήθως αθροίζει περίπου στο 105%, οπότε η προμήθεια είναι περίπου πέντε μονάδες κατανεμημένες στα αποτελέσματα — ο υπολογισμός υπάρχει στον οδηγό για το περιθώριο του bookmaker.
Αυτό θέτει τον πήχη. Για να αξίζει να στοιχηματίσεις, η πιθανότητά σου πρέπει να ξεπεράσει αυτήν της αγοράς περισσότερο από το περιθώριο στην πλευρά που στηρίζεις. Το να είσαι περίπου εξίσου καλός με το δελτίο είναι πραγματικό επίτευγμα και παρόλα αυτά χάνεις χρήματα με σταθερό ρυθμό.
Τα δεδομένα που πραγματικά χρειάζεσαι
Ξεκίνα με τον μικρότερο πίνακα που υποστηρίζει το μοντέλο: κάθε επιπλέον στήλη είναι ένα ακόμη πράγμα να διατηρείς καθαρό.
| Πεδίο | Γιατί χρειάζεται | Συνηθισμένη παγίδα |
|---|---|---|
| Ημερομηνία και ώρα έναρξης | Ταξινομεί τα δεδομένα για έλεγχο και στάθμιση πρόσφατων αγώνων | Ταξινόμηση με βάση τον γύρο αντί για την ημερομηνία μετά από αναβολές |
| Εντός και εκτός έδρας σύλλογος | Διαχωρίζει κάθε αριθμό με βάση την έδρα | Αλλαγές ονομάτων και διπλότυπες γραφές που δημιουργούν δύο συλλόγους |
| Γκολ για κάθε πλευρά | Η μόνη υποχρεωτική μεταβλητή εξόδου του μοντέλου | Καταγραφή γκολ παράτασης ή πέναλτι σε αγώνες κυπέλλου |
| Διοργάνωση | Οι αγώνες πρωταθλήματος και κυπέλλου συμπεριφέρονται διαφορετικά | Ανάμειξη εγχώριου πρωταθλήματος με ευρωπαϊκούς αγώνες |
| Σουτ και αναμενόμενα γκολ, αν υπάρχουν | Λιγότερο θορυβώδης είσοδος από τα ίδια τα γκολ | Ανάμειξη αριθμών από δύο παρόχους με διαφορετικούς ορισμούς |
| Η απόδοση που μπορούσες να πάρεις | Μετατρέπει μια πρόβλεψη σε στοίχημα που μπορεί να ελεγχθεί | Αποθήκευση της σημερινής απόδοσης και προσποίηση ότι ήταν διαθέσιμη τότε |
Δύο σεζόν μιας κατηγορίας αρκούν για να χτίσεις και μία ακόμη για να ελέγξεις. Τα γκολ είναι θορυβώδη — μια ομάδα μπορεί να παίξει καλά και να χάσει 0-1 — γι' αυτό οι εισροές που βασίζονται στην τύχη βοηθούν μόλις δουλέψει η βασική έκδοση: δες τι είναι τα αναμενόμενα γκολ και την ευρύτερη λίστα με στατιστικά που προβλέπουν αποτελέσματα.
Το βασικό μοντέλο σε τρία βήματα
Βήμα πρώτο — το επίπεδο του ίδιου του πρωταθλήματος. Ας πούμε ότι το πρωτάθλημα έχει παίξει 240 αγώνες με 612 γκολ: 2,55 ανά αγώνα. Οι γηπεδούχοι πέτυχαν 336 από αυτά και οι φιλοξενούμενοι 276, άρα η βάση για τους γηπεδούχους είναι 336 ÷ 240 = 1,40 και για τους φιλοξενούμενους 276 ÷ 240 = 1,15. Αυτοί οι δύο αριθμοί περιέχουν ήδη την έδρα, μετρημένη και όχι υποτιθέμενη.
Βήμα δεύτερο — τέσσερις δείκτες. Για τον γηπεδούχο σύλλογο, διαίρεσε τα γκολ που πέτυχε εντός έδρας ανά αγώνα με το 1,40 και τα γκολ που δέχθηκε εντός έδρας ανά αγώνα με το 1,15. Για τους φιλοξενούμενους, διαίρεσε τα γκολ που πέτυχαν εκτός έδρας με το 1,15 και τα γκολ που δέχθηκαν εκτός έδρας με το 1,40. Ένας δείκτης 1,00 σημαίνει ακριβώς μέτριος σε αυτό το κομμάτι.
Βήμα τρίτο — δύο τιμές αναμενόμενων γκολ. Πολλαπλασίασε, ποτέ μην προσθέτεις. Ας πούμε ότι ο γηπεδούχος έχει δείκτη 1,30 στην επίθεση εντός έδρας και οι φιλοξενούμενοι 0,91 στην άμυνα εκτός έδρας· η τιμή για τον γηπεδούχο είναι 1,40 × 1,30 × 0,91 = 1,65. Αν οι φιλοξενούμενοι έχουν δείκτη 1,05 στην επίθεση εκτός έδρας και ο γηπεδούχος 0,87 στην άμυνα εντός έδρας, η τιμή για τον φιλοξενούμενο είναι 1,15 × 1,05 × 0,87 = 1,05.
Ο πίνακας σκορ και τι προκύπτει από αυτόν
Οι αριθμοί γκολ ακολουθούν τη μορφή Poisson αρκετά κοντά για να στοιχηματίσεις: η πιθανότητα για ακριβώς k γκολ όταν αναμένονται μ είναι e−μ × μk ÷ k παραγοντικό, ο τύπος που αναλύεται στον οδηγό για τις γραμμές over/under. Για μ = 1,65 οι πιθανότητες του γηπεδούχου για 0, 1, 2, 3 και 4 γκολ είναι 19,2%, 31,7%, 26,1%, 14,4% και 5,9%. Για μ = 1,05 οι πιθανότητες των φιλοξενούμενων είναι 35,0%, 36,7%, 19,3%, 6,8% και 1,8%.
Πολλαπλασίασε κάθε τιμή του γηπεδούχου με κάθε τιμή του φιλοξενούμενου και έχεις τον πίνακα. Οι τιμές είναι ποσοστά· οι σειρές είναι τα γκολ του γηπεδούχου, οι στήλες τα γκολ του φιλοξενούμενου.
| Εντός / εκτός | 0 | 1 | 2 | 3 | 4 |
|---|---|---|---|---|---|
| 0 | 6,72 | 7,06 | 3,70 | 1,30 | 0,34 |
| 1 | 11,09 | 11,64 | 6,11 | 2,14 | 0,56 |
| 2 | 9,15 | 9,61 | 5,04 | 1,77 | 0,46 |
| 3 | 5,03 | 5,28 | 2,77 | 0,97 | 0,25 |
| 4 | 2,08 | 2,18 | 1,14 | 0,40 | 0,11 |
Αυτά τα είκοσι πέντε κελιά καλύπτουν το 96,9% των αποτελεσμάτων, οπότε υπολόγισε μέχρι οκτώ ή δέκα γκολ πριν αθροίσεις. Κάθε αγορά είναι τότε ένα άθροισμα κελιών: κάτω από τη διαγώνιο είναι νίκη γηπεδούχου, η διαγώνιος ισοπαλία, πάνω από αυτήν νίκη φιλοξενούμενου.
Προσθέτοντας ολόκληρο τον πίνακα έχουμε 51,4% εντός, 24,5% ισοπαλία και 24,1% εκτός. Οι δίκαιες αποδόσεις είναι οι αντίστροφοι: 1 ÷ 0,514 = 1,95, 1 ÷ 0,245 = 4,08, 1 ÷ 0,241 = 4,14. Ο ίδιος πίνακας λέει ότι και οι δύο ομάδες σκοράρουν στο 52,5% των περιπτώσεων (δίκαιη απόδοση 1,90) και ότι τρία ή περισσότερα γκολ έρχονται στο 50,6% των περιπτώσεων (δίκαιη απόδοση 1,97), άρα ένας υπολογισμός δίνει τιμή σε ολόκληρο το δελτίο.
Παράδειγμα. Το δελτίο δείχνει 1,85 / 3,60 / 4,40. Μετατρέποντας αυτά σε ποσοστά έχουμε 54,1% + 27,8% + 22,7% = 104,6%, άρα το δελτίο έχει προμήθεια 4,6% — η μέθοδος είναι στο μετατρέποντας τις αποδόσεις σε πιθανότητες. Σε σύγκριση με τον πίνακα σου, η τιμή για τον γηπεδούχο είναι ακριβή: 0,514 × 1,85 − 1 = −4,9%, άρα προσπερνάς. Η τιμή για τον φιλοξενούμενο δεν είναι: 0,241 × 4,40 − 1 = +6,0%, που σε ένα στοίχημα 5 € είναι 0,30 € αναμενόμενης αξίας. Σε σαράντα τέτοια στοιχήματα των 5 € — 200 € τοποθετημένα — είναι περίπου 12 €, που έρχονται σε μια πολύ ακανόνιστη σειρά.
Διορθώσεις που αξίζει να προσθέσεις, με σειρά
- Στάθμιση πρόσφατων αγώνων. Ένας αγώνας από τον περασμένο Οκτώβριο δεν θα έπρεπε να μετράει όσο ένας από τον Μάρτιο. Στάθμισε κάθε αγώνα με έναν παράγοντα φθοράς — το να μειώνεται στο μισό περίπου κάθε τριάντα αγώνες είναι μια λογική αρχή — αντί για ένα απότομο όριο στα δέκα παιχνίδια.
- Συρρίκνωση για μικρά δείγματα. Μια ομάδα που ανέβηκε κατηγορία με έξι αγώνες δεν θα έπρεπε να έχει δείκτη επίθεσης 1,60. Με k αγώνες και σταθερά 10, πάρε k ÷ (k + 10) του αρχικού δείκτη και το υπόλοιπο από τον μέσο όρο του πρωταθλήματος.
- Διόρθωση για χαμηλά σκορ. Η ανεξάρτητη Poisson υπολογίζει ελαφρώς λιγότερο τα 0-0 και 1-1 και περισσότερο τα 1-0 και 0-1, επειδή σε έναν πραγματικό αγώνα τα δύο σκορ δεν είναι ανεξάρτητα. Το να προσαρμόσεις αυτά τα τέσσερα κελιά είναι η τυπική πρώτη βελτίωση.
- Διαχωρισμός διοργανώσεων. Οι αγώνες κυπέλλου, τα αδιάφορα παιχνίδια και οι ευρωπαϊκές αναμετρήσεις συμπεριφέρονται διαφορετικά: μοντελοποίησέ τους ξεχωριστά ή απέκλεισέ τους.
- Χειροκίνητες παρεμβάσεις, με φειδώ. Μια επιβεβαιωμένη απουσία βασικού επιθετικού ή τερματοφύλακα αξίζει προσαρμογή. Δύο παρεμβάσεις ανά αγώνα είναι μοντέλο με βοηθό· δέκα είναι άνθρωπος που μαντεύει με επιπλέον βήματα.
Έλεγχος χωρίς προκατάληψη μελλοντικών δεδομένων
Η προκατάληψη μελλοντικών δεδομένων είναι κάθε πληροφορία στο τεστ σου που δεν θα είχες τη στιγμή του στοιχήματος. Είναι σιωπηλή, πάντα κολακεύει, και είναι ο λόγος που τα περισσότερα σπιτικά μοντέλα δείχνουν εξαιρετικά στην ιστορία και χάνουν χρήματα ζωντανά.
| Συντόμευση | Τι διαρρέει | Επίδραση στο αποτέλεσμα |
|---|---|---|
| Δείκτες χτισμένοι από ολόκληρη τη σεζόν | Το αποτέλεσμα του αγώνα που στοιχηματίζεις | Κολακεύει πολύ· το μοντέλο μισοξέρει την απάντηση |
| Έλεγχος στα ίδια δεδομένα που χρησιμοποιήθηκαν για να επιλέξεις τα όρια | Η δική σου εκ των υστέρων γνώση για το ποιοι κανόνες δούλεψαν | Κάθε όριο φαίνεται βέλτιστο |
| Χρήση των τελικών αποδόσεων ως απόδοσης που πήρες | Πληροφορία που έφτασε μετά το στοίχημά σου | Υπερεκτιμά το πλεονέκτημα, αφού οι τελικές αποδόσεις είναι πιο ακριβείς |
| Αφαίρεση αγώνων με ελλιπή δεδομένα | Συνήθως οι εγκαταλελειμμένοι και περίεργοι αγώνες | Αφαιρεί ακριβώς τα αποτελέσματα που πληγώνουν |
| Ταξινόμηση με βάση τον γύρο αντί για την ώρα έναρξης | Αναδιαταγμένοι αγώνες που παίχτηκαν αργότερα | Μικρή αλλά συστηματική, και πάντα υπέρ σου |
Η θεραπεία είναι ο έλεγχος walk-forward. Ταξινόμησε κάθε αγώνα με βάση την ώρα έναρξης· για κάθε αναμέτρηση ξαναχτίσε τους δείκτες από αγώνες που τελείωσαν πριν από αυτήν, δώσε τιμή, καταγράψε το στοίχημα που θα έβαζε ο κανόνας και την απόδοση που ήταν διαθέσιμη τότε, και προχώρα. Κράτησε μία σεζόν ανέγγιχτη μέχρι να ολοκληρωθεί το μοντέλο, και αντιμετώπισε το πρώτο αποτέλεσμα από αυτήν ως το πραγματικό.
Σημαντικό. Μέτρησε κάθε στοίχημα που γεννά ο κανόνας, συμπεριλαμβανομένων αυτών που θα έπειθες τον εαυτό σου να αποφύγει. Ένα backtest που αφαιρεί σιωπηλά αγώνες δεν είναι έλεγχος του μοντέλου αλλά της μνήμης σου, και η ίδια πειθαρχία ισχύει για το αρχείο των πραγματικών σου στοιχημάτων — δες καταγραφή των στοιχημάτων σου.
Βαθμονόμηση: είναι τα ποσοστά ειλικρινή;
Το κέρδος είναι ένα αργό και θορυβώδες μέτρο ενός μοντέλου. Η ακρίβεια είναι πιο γρήγορη: πάρε την πιθανότητα που έδωσες, αφαίρεσε 1 αν το γεγονός συνέβη και 0 αν δεν συνέβη, και ύψωσε τη διαφορά στο τετράγωνο. Όσο χαμηλότερο τόσο καλύτερο, και ο μέσος όρος σου μπορεί να συγκριθεί άμεσα με αυτόν της αγοράς.
| Αγώνας | Μοντέλο | Αγορά | Αποτέλεσμα | Σφάλμα² μοντέλου | Σφάλμα² αγοράς |
|---|---|---|---|---|---|
| 1 | 55% | 50% | Νίκη | 0,2025 | 0,2500 |
| 2 | 40% | 45% | Ήττα | 0,1600 | 0,2025 |
| 3 | 62% | 58% | Νίκη | 0,1444 | 0,1764 |
| 4 | 30% | 35% | Ήττα | 0,0900 | 0,1225 |
| 5 | 48% | 52% | Νίκη | 0,2704 | 0,2304 |
| 6 | 25% | 22% | Ήττα | 0,0625 | 0,0484 |
Το σύνολο του μοντέλου είναι 0,9298 σε έξι αγώνες, μέσος όρος 0,155· της αγοράς είναι 1,0302, μέσος όρος 0,172. Σε αυτό το μικρό δείγμα το μοντέλο είναι πιο ακριβές — και έξι αγώνες δεν αποφασίζουν τίποτα, που είναι το νόημα. Πόσο καιρό χρειάζεται πραγματικά μια ετυμηγορία εξηγείται στο διακύμανση και μέγεθος δείγματος.
Τρέξε το ίδιο μέτρο και ανά κατηγορία. Αν ό,τι βαθμολογείς με 60% κερδίζει περίπου το 60% των φορών, το μοντέλο είναι βαθμονομημένο· αν η σίγουρη κατηγορία αποδίδει σταθερά λιγότερο, οι δείκτες τεντώνονται υπερβολικά.
Πότε ένα μοντέλο δεν αξίζει να χτιστεί
Μέτρησε τις ώρες ειλικρινά: σαράντα για να φτιάξεις την πρώτη έκδοση, και μετά δύο ή τρεις την εβδομάδα για να κρατάς τα δεδομένα ενημερωμένα. Ας πούμε ότι παράγει είκοσι επιλέξιμα στοιχήματα την εβδομάδα των 5 € με πραγματικό πλεονέκτημα 3%. Αυτό είναι 20 × 5 € = 100 € τζίρου και 15 € την εβδομάδα αναμενόμενης αξίας — περίπου 5 € την ώρα συντήρησης, πριν από έναν μόνο μήνα με απώλειες.
Τρία πράγματα το κάνουν χειρότερο: αγορές που δεν μπορείς να μοντελοποιήσεις, όπου τα δεδομένα σου είναι πιο αραιά από του χειριστή· πρωταθλήματα με μεγάλη επαγγελματική προσοχή, όπου η απόδοση περιέχει ήδη ό,τι ξέρει ο πίνακας σου· και η ίδια η επιτυχία, αφού ένας λογαριασμός που συνεχίζει να κερδίζει την απόδοση βλέπει τα στοιχήματά του να περιορίζονται — δες περιορισμένοι λογαριασμοί.
Ένα μοντέλο αξίζει να χτιστεί αν θέλεις έναν αριθμό για να διαφωνείς αντί για ένα συναίσθημα, και μπορείς να αποδεχτείς ότι το κύριο προϊόν του είναι οι αρνήσεις. Για το αποτέλεσμα χωρίς τη συντήρηση, η δομημένη ανάλυση ενός μεμονωμένου αγώνα σε πάει σχεδόν μέχρι εκεί — δες πώς να αναλύσεις έναν αγώνα και τα πρωταθλήματα στη σελίδα διοργανώσεων.
Συχνές ερωτήσεις
Χρειάζομαι δεξιότητες προγραμματισμού για να το φτιάξω;
Όχι για την παραπάνω έκδοση. Ένα υπολογιστικό φύλλο με μία σειρά ανά αγώνα, τέσσερις δείκτες ανά σύλλογο και έναν πίνακα είκοσι πέντε κελιών κάνει ό,τι περιγράφεται εδώ. Ο κώδικας γίνεται απαραίτητος για έλεγχο walk-forward σε πολλές σεζόν, επειδή το να ξαναχτίζεις δείκτες με το χέρι πριν από κάθε αγώνα είναι μη πρακτικό.
Γιατί το μοντέλο διαφωνεί τόσο συχνά με την αγορά;
Συνήθως επειδή του λείπει πληροφορία και όχι επειδή βρίσκει αξία. Απουσίες, αλλαγή προπονητή, ουδέτερη έδρα και ροτέισον πριν από αγώνα κυπέλλου είναι όλα στην απόδοση και κανένα δεν είναι στον πίνακα. Αντιμετώπισε ένα μεγάλο κενό ως προτροπή να ελέγξεις τις εισροές, και προσπέρνα όταν δεν μπορείς να εξηγήσεις από πού προέρχεται.
Θα έπρεπε να χρησιμοποιήσω αναμενόμενα γκολ αντί για πραγματικά γκολ ως είσοδο;
Μόλις δουλέψει η βασική έκδοση, ναι. Τα γκολ είναι ένα μικρό δείγμα μιας θορυβώδους διαδικασίας και η ποιότητα των ευκαιριών σταθεροποιείται πιο γρήγορα, άρα οι δείκτες που βασίζονται σε αναμενόμενα γκολ κινούνται λιγότερο με ένα περίεργο σκορ. Τρέξε και τα δύο για μια σεζόν και σύγκρινε τα τετραγωνικά σφάλματα πριν αλλάξεις.
Πόση ιστορία θα έπρεπε να χρησιμοποιούν οι δείκτες;
Περίπου μιάμιση σεζόν με φθορά, αντί για σταθερό παράθυρο. Πολύ λίγη και ένα 4-0 ξαναγράφει έναν δείκτη· πολύ μεγάλη και περιγράφεις ένα ρόστερ που δεν υπάρχει πια. Συρρίκνωσε προς τον μέσο όρο του πρωταθλήματος όποτε λιγότεροι από οκτώ αγώνες στην αντίστοιχη έδρα υποστηρίζουν έναν αριθμό.
Αυτό το άρθρο είναι μόνο για ενημέρωση και δεν αποτελεί προτροπή για τζόγο. Ο στοιχηματισμός ενέχει τον κίνδυνο απώλειας χρημάτων — μην ποντάρεις ποτέ περισσότερα από όσα μπορείς να αντέξεις να χάσεις. 18+. Αν ο τζόγος πάψει να είναι ψυχαγωγία, διάβασε τον οδηγό υπεύθυνου παιχνιδιού και ζήτησε βοήθεια.