Modello Elo Tennis

Caricamento...

Classifica di tennisti scritta a mano su una lavagna bianca in ambiente sportivo

Arpad Elo era un fisico ungherese appassionato di scacchi che negli anni Sessanta sviluppò un sistema per classificare i giocatori in base alla forza relativa. Non poteva immaginare che il suo metodo sarebbe diventato uno degli strumenti più usati nel betting sportivo, e nel tennis in particolare. Il sistema Elo è elegante nella sua semplicità: ogni giocatore ha un numero, quel numero sale quando vince e scende quando perde, e la variazione dipende dalla forza dell’avversario. Battere il numero uno del mondo vale più che battere il numero duecento, e perdere contro un avversario debole costa più che perdere contro uno forte.

Nel tennis, l’Elo ha trovato un terreno ideale. A differenza degli sport di squadra, dove le dinamiche collettive complicano qualsiasi classificazione individuale, il tennis è un duello puro: un giocatore contro un altro, senza compagni di squadra che mascherino i difetti o amplifichino le qualità. Ogni match produce un vincitore e un perdente, e ogni risultato aggiorna la nostra comprensione della forza relativa dei due giocatori. Il sistema Elo cattura esattamente questo flusso continuo di informazioni.

La classifica ATP, pur essendo il ranking ufficiale, ha limiti significativi come strumento predittivo. Assegna punti in base al torneo e al turno raggiunto, senza considerare la qualità degli avversari battuti. Un giocatore che raggiunge i quarti di un Masters 1000 battendo tre avversari modesti riceve gli stessi punti di uno che ci arriva superando tre top 20. L’Elo corregge questa distorsione, rendendo ogni punto guadagnato o perso proporzionale alla difficoltà della sfida.

La formula Elo adattata al tennis

Il calcolo dell’Elo si basa su due componenti: il risultato atteso e il risultato effettivo. La differenza tra i due determina l’aggiornamento del rating. La formula per il risultato atteso del giocatore A contro il giocatore B è:

E(A) = 1 / (1 + 10^((Rb – Ra) / 400))

Dove Ra è il rating di A e Rb è il rating di B. Se A ha un Elo di 1800 e B di 1600, il risultato atteso per A è: E(A) = 1 / (1 + 10^((1600 – 1800) / 400)) = 1 / (1 + 10^(-0.5)) = 1 / (1 + 0.316) = 0.76. Il modello prevede che A vinca il 76% delle volte contro B.

Dopo il match, i rating vengono aggiornati con la formula:

Ra(nuovo) = Ra(vecchio) + K x (S – E(A))

Dove S è il risultato effettivo (1 per vittoria, 0 per sconfitta) e K è il fattore di aggiornamento. Se A vince come previsto, il suo rating sale poco perché la vittoria era attesa. Se B vince a sorpresa, il suo rating sale molto e quello di A scende di conseguenza.

Il fattore K merita attenzione specifica. Negli scacchi K è standardizzato, ma nel tennis la scelta di K influenza pesantemente la reattività del sistema. Un K alto (tra 30 e 40) rende l’Elo molto sensibile ai risultati recenti, catturando rapidamente i cambi di forma ma anche amplificando il rumore statistico. Un K basso (tra 10 e 20) produce un rating più stabile ma più lento ad adattarsi. La maggior parte dei modelli Elo per il tennis usa un K compreso tra 20 e 32, con alcuni sistemi che adottano un K variabile in funzione del numero di match giocati dal tennista.

Elo per superficie: la chiave per il tennis

Il limite più evidente dell’Elo generico nel tennis è che tratta tutti i match come equivalenti, indipendentemente dalla superficie. Ma un giocatore come Daniil Medvedev, dominante sul cemento, ha un rendimento completamente diverso sulla terra battuta. Un Elo unico non cattura questa differenza fondamentale e produce stime distorte quando il match si gioca su una superficie non congeniale a uno dei due giocatori.

La soluzione, adottata dalla maggior parte dei modelli Elo seri per il tennis, è calcolare tre rating separati: uno per il cemento, uno per la terra battuta e uno per l’erba. Ogni match aggiorna solo il rating relativo alla superficie su cui si è giocato. Questo approccio migliora sensibilmente la precisione delle previsioni, soprattutto per quei giocatori il cui rendimento varia drasticamente in base al campo.

Il problema dell’Elo per superficie è la scarsità dei dati sull’erba. La stagione su erba dura poche settimane all’anno e molti giocatori disputano pochissimi match su questa superficie. Con pochi dati, il rating Elo sull’erba tende a essere instabile e poco affidabile. Una soluzione comune è usare un Elo misto che combina il rating sulla superficie specifica con il rating generale, pesando il primo proporzionalmente al numero di match giocati su quella superficie. In questo modo, per un giocatore con 100 match sul cemento e solo 10 sull’erba, il rating sul cemento sarà quasi interamente basato sui dati specifici, mentre quello sull’erba attingerà maggiormente dal rating generale.

Dall’Elo alla probabilità di vittoria: il passaggio alle scommesse

La formula del risultato atteso E(A) che abbiamo visto sopra produce direttamente una probabilità di vittoria. Se l’Elo di superficie prevede che il giocatore A abbia il 65% di possibilità di vincere, possiamo confrontare questa stima con la probabilità implicita nella quota del bookmaker. Se il bookmaker offre 1.70 su A (probabilità implicita del 58.8%), il nostro modello segnala una value bet con un margine di circa 6 punti percentuali.

La qualità di questo confronto dipende interamente dalla calibrazione del modello Elo. Un modello ben calibrato è uno in cui, tra tutti i match in cui ha previsto una probabilità di vittoria del 65%, circa il 65% si è effettivamente concluso con la vittoria del giocatore favorito. La calibrazione si verifica empiricamente, confrontando le previsioni con i risultati su un ampio campione di match storici. Se il modello prevede il 65% ma la percentuale reale di vittorie è il 70%, il modello sottostima i favoriti e va aggiustato.

Un approccio pratico per verificare la calibrazione è dividere le previsioni in fasce (50-55%, 55-60%, 60-65% e così via) e calcolare la percentuale effettiva di vittorie in ciascuna fascia. Un grafico di calibrazione perfetto mostrerebbe una linea diagonale: le previsioni corrispondono ai risultati. Le deviazioni dalla diagonale indicano dove il modello è troppo ottimista o troppo pessimista e suggeriscono correzioni mirate.

Costruire il proprio modello Elo: dati e implementazione

Costruire un modello Elo per il tennis non richiede competenze avanzate di programmazione. I dati storici del circuito ATP sono disponibili gratuitamente nel repository GitHub di Jeff Sackmann, che include risultati di decine di migliaia di match con date, nomi, superficie e punteggio. Per il circuito WTA, dataset analoghi sono disponibili dallo stesso autore.

L’implementazione base richiede pochi passaggi. Si parte assegnando un rating iniziale a tutti i giocatori, tipicamente 1500. Si processano i match in ordine cronologico, aggiornando il rating dopo ogni partita con la formula vista sopra. Si scelgono i parametri K e si verifica la calibrazione su un set di dati di test separato dal set di addestramento. L’intero processo può essere realizzato in un centinaio di righe di codice Python.

Le migliorie più comuni al modello base includono il decadimento temporale del rating per i giocatori inattivi, l’aggiustamento per il vantaggio del servizio e l’inclusione del margine di vittoria (ciòè non solo chi ha vinto, ma con quale punteggio). Quest’ultimo punto e particolarmente interessante: un giocatore che vince 6-1 6-2 sta dimostrando una superiorità molto maggiore rispetto a uno che vince 7-6 7-6, e il modello dovrebbe riflettere questa differenza nell’aggiornamento del rating.

Un’altra estensione utile è l’Elo aggiustato per il livello del torneo. I match dei tornei Slam, giocati al meglio dei cinque set, hanno dinamiche diverse rispetto ai match al meglio dei tre set. Un giocatore con grande resistenza fisica e mentale potrebbe avere un Elo significativamente diverso nei cinque set rispetto ai tre set. Separare questi due contesti migliora la precisione del modello per i quattro tornei dello Slam.

I numeri non mentono, ma possono ingannare

L’Elo è uno strumento potente, ma trattarlo come un oracolo infallibile è un errore che il mercato punisce con regolarità. Il primo rischio è l’overfitting: ottimizzare i parametri del modello fino a replicare perfettamente i risultati passati, senza che questo si traduca in previsioni accurate per il futuro. Un modello con K = 27.3 e decadimento temporale di 0.987 per partita potrebbe funzionare magnificamente sui dati del 2020-2024, ma fallire miseramente nel 2026 perché ha memorizzato il rumore invece del segnale.

Il secondo rischio è ignorare le informazioni che l’Elo non cattura. Gli infortuni, la forma fisica recente, le condizioni meteorologiche, il cambio di allenatore, la motivazione per un torneo specifico: tutti fattori che possono spostare la probabilità reale di un match di 5 o 10 punti percentuali rispetto alla stima Elo, e che nessun rating numerico può incorporare automaticamente. Lo scommettitore intelligente usa l’Elo come punto di partenza e poi applica aggiustamenti qualitativi dove necessario.

Il terzo rischio è la tentazione di complicare il modello all’infinito. Aggiungere variabili, creare sotto-Elo per ogni condizione, pesare ogni fattore con coefficienti raffinati: a un certo punto la complessità aggiuntiva non migliora le previsioni ma le peggiora, perché ogni parametro in più è un’opportunità in più di overfitting. I migliori modelli Elo per il tennis sono quelli che bilanciano accuratezza e parsimonia, catturando i pattern principali senza inseguire ogni sfumatura. Come diceva lo stesso Elo a proposito degli scacchi: il sistema funziona non perché è perfetto, ma perché è abbastanza buono.