Di recente ho ricevuto una mail con una domanda molto interessante. A prima vista potrebbe sembrare banale, ma mentre rispondevo alla suddetta, mi sono accorto che in realtà ci sarebbe parecchio da ragionare sull’argomento. Il messaggio ricevuto recita come segue:
“… secondo te per avere una statistica rilevante quanti match andrebbero presi in considerazione ? 100/200/500/1000 ?”

Statistica Rilevante: Premessa
Come di consueto, prima di partire a testa bassa c’è bisogno di una premessa.
Campione statistico rilevante non significa certezza assoluta. Infatti una cosa è stimare un risultato che potrebbe verificarsi (seppur con un grado di precisione molto alto) e tutt’altra cosa è riscontrare quel risultato nella “vita vera”. Infatti il primo è un calcolo basato sui numeri mentre il secondo è qualcosa accaduto realmente. Perciò, pur essendo il più precisi possibile e raccogliendo il maggior numero di dati che riusciamo non è detto, anzi è impossibile, avere una proiezione fedele al 100% di ciò che si andrà a verificare sul campo.
Da Dove Partire per Costruirsi un Campione Statistico
Beh, do per scontato che chi sta leggendo questa pallosissima disamina sia interessato a testare per se una strategia. E che abbia già una strategia da testare. Altrimenti cosa state qui a perdere del tempo!? Dai su, vi serve una strategia. Un computer, una conoscenza scolastica di Excel, un po’ di carta igienica e colla vinilica. Fatto?
Bene, procediamo.

La prima cosa da fare, che è anche la più scontata, è capire, più o meno, quale sarà il win rate della strategia che intendete testare. Vi sento già: “Eh, grazie al cazzo? Ma io quello dovrei calcolare! Mo’ come faccio a saperlo?”
Ragazzi, non serve essere precisi, precisi a 6 cifre dopo lo zero. Basta un approssimazione. E la cosa migliore per approssimare è guardare a che quote operiamo mediamente*. Ovvero, se la mia strategia prevede di puntare l’over 1,5 nel secondo tempo in partite sullo 0-0 presumibilmente la quota media si attesterà circa tra 1,80 e 2,20. Ergo, il win rate totale dovrebbe trovarsi attorno al 50%. Magari sarà 40, o magari 60 (se siete dei fenomeni) ma di sicuro non avrete un win rate dell’85%. Vedremo poi perché questo dato è utile, ma a grandi linee ci serve ad approssimare il numero di eventi per cui dovremmo testare la strategia.
Ovviamente, nulla vi vieta, anzi io ve lo consiglio, di iniziare proprio a testare la strategia per una cinquantina di eventi per avere un win rate più allineato con la realtà, anche se con così pochi match potrebbe discostarsi ancora molto dall’atteso, ma non credo più di un 10% (anche se molto dipende dal WR target).
*Questo lo scrivo prima che qualcuno se lo chieda. Ovviamente questo discorso vale maggiormente per strategie che puntano (o bancano) a una quota e tengono la posizione aperta. Se fate scalping e entrate/uscite 150 volte nel giro di 30 minuti da una posizione non vi serve a una mazza il discorso che stiamo facendo. Invece se entrate in un trade per poi fare cashout più tardi potete lo stesso seguire l’articolo ma sarà logicamente un po’ più complicato stimare il win rate all’inizio, basandosi solo sulla quota. Se questo è il vostro caso vi consiglio di passare subito al test sul campo della strategia per una cinquantina di eventi.
La Regola Base per un Campione Statistico Attendibile
Più il win rate della strategia è elevato e meno eventi vi serviranno per avere un campione attendibile. Più il win rate è basso maggior sarà il numero di eventi richiesto.
Attenzione però che sotto la soglia del 50% le cose cambiano un pochino. Infatti avere un win rate del 25% è da interpretare come l’inverso di un tasso di successo al 75%. Praticamente vincerne il 25% o perderne il 75% è la stessa cosa, a livello statistico, di vincerne il 75% e perderne il 25%. La proporzione sempre quella è.
Va sottolineato però che è vero a livello statistico. Poi però quando si tratta di soldi le cose cambiano un pochino. Ma cerchiamo di non incasinarci troppo che l’argomento è già abbastanza intricato così com’è.
In poche parole è possibile affermare che se la mia strategia ha un win rate del 75% avrò sicuramente bisogno di un numero inferiore di eventi rispetto a una strategia con tasso di successo del 53% per poter fare valutazioni statisticamente affidabili.
Ok, tutto chiaro. Ma come fare dunque a sapere per quante partite testare una strategia per affermare di avere un database attendibile?
Semplice, usiamo un calcolatore come questo qui.
Utilizzarlo è molto semplice. Impostate il cursore “Level of Confidence” almeno a 0,98. Ovvero al 98%*. Alla voce “Expected Proportion” impostate il win rate approssimativo della strategia. Cioè, se tenete un tasso di successo del 55% allora porterete il cursore a 0,55.
In ultimo impostiamo il valore del “Margin of Error“. Questa è la tolleranza in cui il nostro tasso di successo (expected proportion) sarà compreso. Ovviamente più il numero sarà piccolo più la precisione alta e il campione necessario corposo.
Bene, fatto ciò il numero che vedrete comparire sulla destra, evidenziato di azzurro, sarà il campione stimato che vi serve per sapere, con un precisione del 98%, che il vostro win rate rilevato sarà quello reale con un tolleranza pari al valore impostato come margin of error.
*Il perché di questo valore esula dallo scopo di questo articolo. In soldoni il LoC è la percentuale di sicurezza (dove 100 è la certezza assoluta, a livello teorico, mentre 0 è il suo contrario) con cui quella data percentuale di riuscita si troverà nell’intervallo da noi stabilito con il “margin of error”.
Perciò prendetelo per buono a ‘sto giro, se vi va. Altrimenti andate a studiarvi un po’ di statistica per conto vostro.
Un Campione Statistico Reale
Per illustrare tutto il discorso fin qui esposto propongo di seguito un caso di studio su un campione reale da me rilevato.
Dopo 59 trade ho registrato un win rate del 74,58%. Ora, arrotondando quest’ultimo al primo numero intero inserirò dunque nel calcolatore 0,75 come Expected Proportion.
Voglio mantenere un Level of Confidence del 98% (inutile inserire 100%, tanto la certezza assoluta non esiste comunque, tanto vale trovare un compromesso buono abbastanza) e un Margin of Error pari al 2%.
La scelta di un valore del 2% come MoE è del tutto personale e dettata dalla conformazione della strategia stessa. Infatti se io ho riscontrato un win rate del 75% una tolleranza del 2% mi metterà nelle condizioni di testare per un win rate reale che si attesti tra il 73% e il 77%. Il margine inferiore scelto, dunque, è il minimo che mi concede comunque di avere un guadagno. Dovessi scendere sotto al 72% infatti la strategie non sarebbe più vincente in quanto la quota media che uso per entrare a mercato non mi garantirebbe più un profitto.
Questo è il risultato che ottengo:
da www.statulator.com
Okay, quindi cos’abbiamo scoperto?
Beh, che se voglio essere “abbastanza” sicuro che la mia strategia funzioni e che il win rate che ho registrato in questi primi 59 eventi tradati sia reale beh … dovrò tradarne altri 2478. Non la migliore delle prospettive. Mmh …
La cosa interessante è che si mi accontento di un margin of error (tolleranza) del 3% il numero di eventi richiesto si abbasserebbe sensibilmente. Addirittura è molto più che dimezzato ora. In questo modo sarei “sicuro” che al limite più basso del mio win rate (sarebbe meglio chiamarla RUN) sarei comunque in break even.
Prestate attenzione che il valore che impostate come margin of error va ad aumentare (o diminuire) in modo incredibilmente forte il campione necessario. Così, per esempio, con un MoE del solo 1% il campione richiesto supera i 10k eventi!

Metodo Montecarlo e Python
Per testare e validare tutto questo discorso sul come calcolare un campione statistico rilevante ho anche provveduto a creare un piccolo calcolare in Python. Non è che non mi fidassi del sito che vi ho riportato qui sopra ma ero curioso di vedere se l’analisi con il metodo Montecarlo avrebbe confermato o ribaltato il giudizio finale. Ehm, no. Intendevo se l’analisi Montecarlo sarebbe stata in linea con quanto trovato sul sito.
Ebbene, come si vede dall’immagine qui sotto ho inserito nel calcolatore il win rate rilevato, il sample e il numero di iterazioni che la mia simulazione dovrà eseguire. Praticamente così sto simulando 59 eventi casuali con win rate del 74,58% per 10k volte.

Le ultime tre righe rappresentano la tolleranza (in più o meno) del win rate inserito nel simulatore.
Così, per capirci avrò il 90,43% di probabilità che il win rate reale della strategia si attesti tra 64,58% e 84,58%.
E a questo punto vi starete chiedendo (almeno spero):
“a che cazzo mi serve sapere che con quel campione sono un po’ sicuro che il mio win rate possa avere uno swing dell 20%!?“
Appunto, non serve a una benemerita mazza di niente! Infatti questo dovrebbe iniziare a farvi inquadrare la questione di quanto grande debba essere un campione perché possa essere realmente attendibile. Cinquantanove trade (che potrebbero aver richiesto 2-3 mesi per essere raccolti) non sono nulla. Una caccola in confronto a quante operazioni sarebbero realmente utili per un analisi “certa” e approfondita.
Okay, ma dopo questo esercizio di miseria vediamo un’altra cosa. Infatti ho provato a inserire nel calcolatore il sample size consigliato dal sito che abbiamo visto poca fa. Quindi 2537 operazioni in modo da poter avere una tolleranza del 2% sul win rate con una sicurezza (Level of Confidence) del 98%. E indovinate un po’ cosa salta fuori!?

Visto che roba! Ora ho il 100% di probabilità che il win rate abbia una tolleranza del 5% … ma solo il 75,04% che la tolleranza sia dell’1%.
Per la cronaca questo risultato è stato trovato dopo aver simulato 25.370.000 trade.
Ma siccome sono un gran babbo ho sbagliato a impostare gli step di tolleranza nel mio calcolatore e sono stato molto “largo” inserendo 1%, 5% e 10% … e quest’ultimo potrebbe essere davvero poco rilevante. Ma siccome non avevo voglia di rifare tutto proviamo un ultima simulazione e utilizziamo come target una tolleranza dell’1%.
La Resa dei Conti Finale

Statulator.com ci dice che se pretendiamo di avere una precisione dell’1% allora dovrò testare la mia strategia per ben 10.148 eventi!
Okay. Il mio simulatore Montecarlo invece ci darà notizie migliori?

Assolutamente no!
Anzi, siamo decisamente in linea. Com’era preventivabile per altro.
Insomma, con un win rate del 75% e un sample di 10.148 eventi avrò il 98% di sicurezza che il win rate abbia realmente una tolleranza di più/meno 1%. Mentre sarò “totalmente” certo che il win rate non si discosterà mai di +/- 5 punti percentuali … in teoria!
Conclusione
Tutta questa disquisizione è servita principalmente a due scopi, secondo me:
- Illustrare come avere un idea più o meno precisa (ma che può anche essere intesa in maniera più spannometrica) del sample di eventi necessario su cui testare una strategia di betting o trading sportivo.
- Dimostrare (spero in maniera definitiva) che purtroppo la realtà è spesso molto peggio di quel che ci si aspetta. Nella fattispecie che poter dire con fiducia di essere dei trader vincenti -o perdenti- è davvero difficile. Sarà necessario un campione decisamente corposo per poter affermare con tutta certezza di essere campioni mondiali di trading. Tutto il resto, spiace dirlo, ma sono cazzate.