White’s Reality Check contro il data snooping nei backtest di strategie
Scopri come White’s Reality Check confronta la strategia migliore di una ricerca con un benchmark e usa il massimo di un bootstrap che tiene conto delle dipendenze
In questa guidaIl test chiede se il vincitore della ricerca supera un benchmark scelto
Breve sintesi
White’s Reality Check chiede se il miglior candidato di una ricerca definita superi un benchmark specificato, tenendo conto del fatto che è stato selezionato come massimo. Il test applica il bootstrap alle differenze di performance congiunte e dipendenti nel tempo, quindi confronta il massimo osservato con una distribuzione nulla di massimi bootstrap. Un p-value corretto piccolo è un’evidenza contro l’ipotesi nulla congiunta di assenza di superiorità per quella famiglia e rispetto a quel benchmark; non prevede la redditività in tempo reale.
Il test chiede se il vincitore della ricerca supera un benchmark scelto
Un ricercatore può provare decine di finestre per le medie mobili, regole di breakout, periodi di detenzione, mercati e filtri, poi presentare la strategia con il punteggio di backtest più alto. Quel vincitore non è un normale candidato singolo: la ricerca gli ha dato molte occasioni per sembrare eccezionale. Testarlo da solo come se fosse stato scelto prima di vedere i dati ignora il processo di selezione.
White’s Reality Check include la selezione nel test. Chiede se un candidato della famiglia esaminata abbia una performance attesa superiore a un benchmark definito. White formula l’ipotesi nulla come intersezione di confronti unilaterali: la performance attesa relativa al benchmark di ogni candidato è al massimo zero. L’alternativa è che almeno un candidato abbia un vantaggio atteso positivo. Il benchmark può essere buy-and-hold, una semplice regola di previsione o un altro riferimento, ma deve corrispondere alla domanda di ricerca ed essere definito prima di osservare il risultato. La formulazione formale è nell’articolo originale di White.
È una domanda sulla famiglia nel suo complesso, non una garanzia sulla strategia che casualmente risulta vincente. Rifiutare l’ipotesi nulla indica evidenza di superiorità nella famiglia documentata, secondo la statistica e le ipotesi scelte. Non dimostra che ogni candidato sia utile, che il vincitore resti il migliore o che il vantaggio sopravviva a un nuovo regime di mercato.
Esprimi ogni candidato come una differenza di performance confrontabile
Sia d[k,t] la performance del candidato k meno quella del benchmark nello stesso periodo t; un valore più alto deve sempre favorire il candidato. Per confrontare i rendimenti, una definizione possibile è il rendimento netto del candidato meno quello netto del benchmark. Se la decisione riguarda invece la perdita previsionale, orienta la differenza come perdita del benchmark meno perdita del candidato. La convenzione dei segni deve fare in modo che un valore positivo sia favorevole al candidato.
Ogni riga deve riferirsi allo stesso intervallo temporale per tutti i candidati. Usa un’unica valuta, convenzione di rendimento, trattamento del finanziamento e regola dei costi. Se l’affermazione riguarda rendimenti effettivamente eseguibili, sottrai commissioni, spread, slippage, funding e costi di prestito pertinenti prima di calcolare d[k,t]. Testare i rendimenti lordi e citare i costi solo in una nota risponde a una domanda diversa.
La media campionaria per il candidato k è d̄[k] = (1/T) Σ_t d[k,t]. L’ipotesi nulla congiunta è H0: max_k E[d[k,t]] ≤ 0; l’alternativa è H1: max_k E[d[k,t]] > 0. Il benchmark è comune a tutta la famiglia e ogni candidato viene valutato con lo stesso criterio. Se ci sono date mancanti o frequenze di osservazione diverse, definisci un campione comune difendibile prima di calcolare le differenze; non concedere inavvertitamente a un candidato una finestra più favorevole.
Includi l’intera famiglia di candidati nell’affermazione di ricerca
La famiglia è l’insieme delle regole candidate che possono aver influito sulla scelta del vincitore riportato. Può comprendere lookback testati, soglie d’ingresso, combinazioni di segnali, universi di attività, periodi di detenzione, vincoli di portafoglio e ipotesi di esecuzione. Include anche le varianti manuali provate e poi scartate dopo averne osservato i risultati. Nel suo articolo del 2000 White usa «specification search» in senso ampio: il processo di scelta, non solo la tabella finale, crea il problema della selezione.
Ci sono due errori opposti. Omettere gli esperimenti che hanno contribuito a scegliere la strategia rende il test corretto troppo ottimistico, perché il bootstrap vede una ricerca più piccola di quella effettivamente svolta. Aggiungere in seguito molte regole arbitrarie e non pertinenti può renderlo inutilmente conservativo e ridurre la capacità di rilevare un candidato utile. Definisci la famiglia a partire dal processo di selezione reale e conserva un registro di ricerca che ne renda verificabile il perimetro.
Il test non può dedurre gli esperimenti mai registrati. Un quaderno con solo i parametri vincenti non basta per ricostruire la ricerca. Conserva insieme l’elenco dei candidati, la versione dei dati, le date di valutazione, l’obiettivo, le ipotesi sui costi e le decisioni di selezione. Se la famiglia è cambiata dopo aver visto i risultati, dichiara cosa è cambiato e perché; non presentare una famiglia costruita a posteriori come se fosse stata fissata prima.
La statistica del massimo porta la selezione nella distribuzione nulla
Calcola la performance relativa media di ciascun candidato e poi prendi il valore più alto. Una statistica comune non studentizzata è Vobs = √T × max_k d̄[k]. Il massimo è essenziale: rappresenta la stessa operazione «scegli il migliore» che ha prodotto il vincitore apparente. Testare solo la colonna vincente eliminerebbe tale operazione dalla distribuzione di riferimento.
Il bootstrap stima quanto potrebbe essere grande un massimo per semplice variabilità campionaria se fosse vera l’ipotesi nulla congiunta di non superiorità. A ogni replica b, ricampiona il vettore temporale delle differenze di tutti i candidati e calcola una statistica centrata, ad esempio V*b = √T × max_k(d̄*[k,b] − d̄[k]). Il centramento colloca le medie dei candidati sul confine meno favorevole dell’ipotesi nulla, dove i vantaggi attesi sono zero, mentre il massimo conserva la selezione tra candidati. L’articolo di White sviluppa la distribuzione bootstrap del massimo e la confronta con la statistica osservata.
Ripeti il processo molte volte. Il p-value corretto è la quota di massimi bootstrap almeno pari a Vobs. Con un numero finito B di repliche, uno stimatore Monte Carlo comune è (1 + count{V*b ≥ Vobs})/(B + 1). Le implementazioni possono differire per studentizzazione o per dettagli dei modelli stimati: documenta quindi la statistica e la regola di centramento sotto l’ipotesi nulla. Il punto essenziale è ricalcolare a ogni replica il massimo della famiglia, invece di valutare soltanto il vincitore osservato.
Conserva la dipendenza quando ricampioni la storia dei candidati
Le osservazioni finanziarie sono ordinate nel tempo. Un rimescolamento indipendente può cancellare la dipendenza seriale, i raggruppamenti di volatilità e le sequenze di guadagni o perdite correlate. Può anche alterare la relazione tra strategie che spesso reagiscono agli stessi giorni di mercato. Queste caratteristiche influenzano la coda della statistica massima; ricampionare ogni candidato separatamente o estrarre singoli giorni con reinserimento può quindi produrre una distribuzione di riferimento errata.
White descrive metodi per dati dipendenti, come il moving-block bootstrap, e analizza lo stationary bootstrap di Politis e Romano. In quest’ultimo, un blocco estratto di solito prosegue con l’osservazione temporale successiva; a un riavvio casuale riparte da un’altra data estratta. Le lunghezze dei blocchi risultano geometriche, con una media scelta. In base alle ipotesi e ai parametri del metodo, questa procedura conserva le sequenze di breve periodo meglio di un campionamento i.i.d. Vedi l’articolo di Politis e Romano sullo stationary bootstrap.
Per una famiglia di strategie, estrai una sequenza condivisa di indici temporali e applicala all’intero vettore di riga (d[1,t], …, d[K,t]). In questo modo conservi sia l’ordine temporale nei blocchi estratti sia la dipendenza contemporanea fra i candidati. Scegli la lunghezza dei blocchi considerando l’orizzonte della strategia e le diagnosi di dipendenza, e riporta la sensibilità a alternative ragionevoli. Se il processo di ricerca ristima i parametri, stabilisci se anche quel passaggio rientra nell’oggetto dell’inferenza e, quando serve, ripetilo in ogni replica. Ricampionare solo rendimenti stimati e fissati può condizionare via una parte della procedura.
Un esempio ipotetico di bootstrap cambia l’interpretazione
Supponi che un ricercatore confronti tre strategie con un benchmark su T = 252 giorni di negoziazione. Le differenze giornaliere medie, al netto dei costi, sono +2.0, +1.0 e −0.5 punti base. La media del vincitore è quindi 2.0 punti base e la statistica osservata è √252 × 2.0 bp ≈ 31.75 bp·√giorno di negoziazione. Questa scalatura fa parte della statistica; non è una statistica t perché non viene divisa per un errore standard stimato.
Ora supponi 9.999 repliche di stationary bootstrap, con le stesse date estratte per tutti e tre i candidati. In questo risultato ipotetico, 1.199 massimi di replica raggiungono o superano 31.75. La stima Monte Carlo con correzione di uno è (1 + 1,199)/(9,999 + 1) = 0.12. Un test separato del solo vincitore potrebbe ipoteticamente dare 0.03, ma ignorerebbe la ricerca tra tre candidati. Il p-value del Reality Check considera il confronto dell’intera famiglia; con una soglia del 5%, in questo esempio l’ipotesi nulla congiunta non sarebbe rifiutata.
Questi numeri sono inventati per illustrare il calcolo, non rappresentano rendimenti di mercato misurati né risultati dell’articolo di White. Un p-value di 0.12 non significa che la strategia abbia il 12% di probabilità di perdere. Significa che, con il bootstrap e la costruzione della nulla specificati, un massimo almeno così grande non è abbastanza raro da rifiutare l’ipotesi al livello scelto. Le medie campionarie non indicano inoltre se il rendimento sia economicamente rilevante dopo rischio, capacità ed esecuzione.
Interpreta il p-value corretto come evidenza su una famiglia specificata
Un p-value piccolo del Reality Check è evidenza contro l’affermazione che nessun membro della famiglia inclusa superi il benchmark scelto in termini di performance attesa, date le ipotesi del test. Poiché la nulla è congiunta, il test non individua automaticamente il candidato con un vantaggio duraturo. Il vincitore può cambiare tra campioni e l’evidenza per una singola strategia può restare debole anche se la nulla di famiglia viene respinta.
Un p-value grande indica che non si rifiuta l’ipotesi nulla, non che tutte le strategie siano equivalenti al benchmark. Un campione breve, performance rumorose, una famiglia molto ampia, misurazioni imprecise o bassa potenza possono spiegare il risultato. Il p-value non è neppure la probabilità che la nulla sia vera: è una probabilità di coda calcolata con una distribuzione di riferimento che dipende dall’insieme di candidati, dalla misura di performance, dal benchmark, dal disegno del bootstrap e dai dati osservati.
La domanda di White è relativa. Una regola può superare un benchmark debole pur perdendo denaro, oppure non superare un benchmark forte pur ottenendo rendimenti positivi. Riporta insieme risultati assoluti e relativi, incertezza, turnover, drawdown, capacità e costi realistici. L’evidenza statistica di superiorità predittiva relativa e il caso economico per investire sono decisioni distinte.
Controlla ipotesi e limiti prima di affidarti al risultato
La teoria originale richiede condizioni di regolarità per il processo delle differenze di performance e per la sua distribuzione limite. Il quadro di White include serie temporali stazionarie e fortemente mixing; anche il bootstrap dipendente richiede una sequenza adeguata di lunghezze dei blocchi. In campioni finiti, cambi di regime, rotture strutturali, memoria lunga, salti rari e volatilità instabile possono rendere discutibile l’approssimazione tramite ricampionamento stazionario. Il block bootstrap preserva parte della dipendenza locale, ma non ricrea un regime futuro sconosciuto.
Il test eredita anche gli errori dei dati e della valutazione della strategia. Leakage di informazioni future, survivorship bias, dati rivisti, esecuzioni irrealistiche, costi omessi, gestione errata di operazioni societarie e benchmark scelto dopo aver visto i risultati possono invalidare le differenze di performance. Se i periodi di detenzione si sovrappongono, i rendimenti possono essere dipendenti per costruzione; l’unità di ricampionamento e la lunghezza dei blocchi devono rappresentare tale dipendenza. Se la metrica finale è non lineare, come lo Sharpe ratio, ricalcolala in ogni replica invece di presumere che un bootstrap del rendimento medio la testi automaticamente.
Le implementazioni del Reality Check possono essere conservative, soprattutto se un grande insieme di candidati contiene molte alternative chiaramente scadenti. Una distribuzione del massimo più ampia può rendere difficile il rifiuto anche in presenza di un buon candidato. Il test Superior Predictive Ability di Hansen è un metodo bootstrap correlato che tratta diversamente le alternative scadenti; non è un sostituto universale e anche le sue ipotesi vanno controllate. Confronta i metodi in funzione della domanda di ricerca e riporta la sensibilità, invece di scegliere quello che dà il risultato preferito.
Usalo insieme alla validazione cronologica e ad altri strumenti di selezione
White’s Reality Check affronta la domanda se una famiglia di ricerca documentata contenga un candidato superiore al benchmark dopo aver considerato la selezione. Non sostituisce un holdout cronologico o una valutazione walk-forward di una strategia congelata. Non risolve da solo la sovrapposizione delle etichette né il leakage. Si distingue anche dal PBO, che riassume quanto spesso il vincitore in-sample si colloca sotto la mediana dei candidati in partizioni combinatorie; l’articolo originale sul PBO formalizza questa diagnosi del rischio di selezione. Le procedure di false discovery riguardano la quota attesa di risultati falsi fra più rifiuti. Il Deflated Sharpe Ratio corregge invece una valutazione di significatività basata sullo Sharpe per selezione e rendimenti non normali. Continua con le guide a test multipli e false discovery rate in finanza, PBO e CSCV, validazione walk-forward e cross-validation purgata ed embargo.
In una revisione pratica, fissa benchmark e definizione di performance, ricostruisci la famiglia effettivamente usata, calcola differenze appaiate per ciascun periodo, scegli e giustifica un disegno di ricampionamento che tenga conto delle dipendenze e riporta statistica massima e probabilità di coda bootstrap. Poi valuta il processo di selezione congelato su dati cronologici successivi e analizza separatamente costi e fattibilità di esecuzione. L’applicazione di Sullivan, Timmermann e White alle regole di trading tecnico mostra perché conta l’universo delle regole: la conclusione cambia se nell’inferenza entra la ricerca completa invece del solo vincitore pubblicato. Reality Check corregge uno specifico problema di selezione; non certifica che un backtest sopravvivrà al trading reale.
Domande frequenti
Q1Che cosa testa White’s Reality Check?
Testa se il miglior candidato di una famiglia di ricerca definita ha una performance attesa superiore a un benchmark scelto, considerando la selezione fra candidati.
Q2Un p-value piccolo del Reality Check dimostra che una strategia sarà redditizia?
No. È un’evidenza contro l’ipotesi nulla di assenza di superiorità della famiglia, date le ipotesi su benchmark, metrica, dati e bootstrap. Non garantisce rendimenti futuri né redditività netta.
Q3Perché usare un block bootstrap invece di ricampionare i giorni in modo indipendente?
I blocchi possono conservare parte della dipendenza seriale locale; date comuni per tutti i candidati preservano anche le loro relazioni contemporanee. Il disegno dei blocchi deve comunque adattarsi ai dati e alla domanda di ricerca.
Fonti e approfondimenti
Segnala un problema
Prepareremo un’e-mail con il link a questo articolo. Mark riceverà la segnalazione solo dopo l’invio
Controllo rapido
Hai finito la guida? Verifica ciò che hai capito con 3 domande
Domanda 01
Che cosa afferma l’ipotesi nulla congiunta di White?
Scegli una risposta per vedere la spiegazione
Glossario delle opzioni
Definizioni chiare dei termini essenziali, da call, put e catene di opzioni a IV, greche, interesse aperto e max pain
Sfoglia il glossario delle opzioni