Il look-ahead bias è l'uso, in un test storico, di informazioni non ancora disponibili quando la decisione simulata è stata presa: il dato di una società letto prima della sua pubblicazione, o un ordine eseguito a un prezzo non ancora battuto. Il test vede di fatto il futuro, quindi i risultati sono lusinghieri e non riproducibili con denaro reale.
Altri nomi: lookahead bias, fuga di informazioni
Il look-ahead bias è un errore di tempistica nei dati che alimentano la decisione, non un difetto nella logica della strategia: le stesse regole, avendo a disposizione solo ciò che era conoscibile allora, avrebbero prodotto un risultato diverso e di norma molto peggiore.
Come si comporta in Fincanva?
Un backtest di Fincanva riproduce le regole della tua strategia in ordine cronologico — un walk-forward replay — così ogni decisione usa solo i dati disponibili fino a quel punto dello storico. Arriva fino all'ultima chiusura di mercato disponibile e mai nel futuro, quindi una decisione datata 2015 non può attingere a dati del 2016.
Questo toglie al calcolo la possibilità di guardare avanti. Non può togliere una regola che legge un dato che il mercato a quella data non aveva ancora: per questo il verbo giusto è ridurre, non eliminare.
Da cosa nasce il look-ahead bias in un backtest?
Il look-ahead bias compare ogni volta che la data con cui un valore è etichettato differisce dalla data in cui è diventato pubblico, e il test usa l'etichetta. Le fonti ricorrenti sono:
- Il ritardo di pubblicazione dei dati di bilancio. Un dato trimestrale descrive un trimestre chiuso settimane o mesi prima che la comunicazione uscisse. Associare quel dato alla data di chiusura del trimestre permette a una decisione di agire prima che qualcuno potesse leggerlo.
- Rettifiche e revisioni. Molte serie vengono riviste dopo la prima pubblicazione. Usare il valore finale rettificato come se fosse stato noto alla data della prima uscita importa informazioni che allora non esistevano.
- Esecuzione nello stesso istante. Decidere sul prezzo di chiusura di una giornata e poi eseguire all'apertura della stessa giornata, oppure usare un massimo o un minimo di seduta non ancora formato, dà all'esecuzione un prezzo che la decisione non poteva conoscere. Quale prezzo usa un'esecuzione dipende dall'orario esecuzione.
- La composizione di oggi applicata a ieri. Testare sui componenti di un indice così come è oggi su un periodo in cui la composizione era diversa unisce look-ahead e survivorship bias.
Cosa succede se gli utili vengono usati prima della pubblicazione?
Uno screen ordina le società per ultimi utili riportati e ribilancia il 1° febbraio. Il trimestre fiscale della società A si è chiuso il 31 dicembre, ma i risultati sono stati pubblicati solo il 20 febbraio. Un test che archivia il dato di dicembre alla data del 31 dicembre lo vede il 1° febbraio e ci compra sopra; un test che lo archivia al 20 febbraio non lo vede ancora e compra qualcos'altro. Ripeti la cosa su ogni comunicazione per dieci anni e la strategia ha goduto di tre settimane di vantaggio su ogni sorpresa sugli utili: un vantaggio sistematico che nessun conto reale ha avuto. Per questo conta che il lag di un filtro sia contato in Report Fa invece che in mesi di calendario: sono le comunicazioni, non il calendario, a decidere quando un dato era conoscibile. Vedi lag, periodo e moltiplicatore per il funzionamento di quelle unità.
In cosa differisce il look-ahead bias dagli altri bias del backtest?
Il look-ahead bias riguarda quando l'informazione era disponibile; i suoi vicini riguardano cosa hai testato e come leggi il risultato. Il survivorship bias è un campione a cui mancano i nomi che non sono sopravvissuti. Il selection bias è un campione scelto col senno di poi. Il data-snooping bias consiste in molti test di cui si riporta solo il vincente. L'overfitting è una strategia modellata così strettamente sui dati passati da catturare rumore. Il data-quality bias è il vicino più prossimo di tutti: una conclusione guidata dai dati archiviati che sono essi stessi sbagliati, ed è lì che finiscono rettifiche e revisioni quando il valore corretto è il solo che hai. Un test può essere del tutto privo di look-ahead bias e soffrire comunque di tutti gli altri.