30 Settembre 2026 · ricerca

Il tuo backtest adorava l’ora migliore. Puoi tradarla dopo il cambio d’ora?

Il tuo backtest adorava l’ora migliore. Puoi tradarla dopo il cambio d’ora?

Hai trovato un risultato convincente: la tua strategia crypto realizza la maggior parte dei rendimenti tra le 13:00 e le 14:00 UTC. Hai controllato le commissioni, rieseguito il backtest e testato il segnale in paper trading. Ora stai preparando una versione per le azioni statunitensi e l’ora più redditizia sembra essere quella tra le 09:30 e le 10:30, ora di New York.

Prima di fidarti di uno dei due risultati, controlla cosa è successo all’orologio. L’ora legale negli Stati Uniti sposta l’apertura di New York di un’ora rispetto all’UTC. Se le tue feature, le etichette delle sessioni e gli ordini si basano su concezioni diverse del tempo, la strategia potrebbe sfruttare un confine di calendario invece di un pattern di mercato ripetibile.

Non devi abbandonare la ricerca sugli orari intraday. Devi stabilire a quale orologio si riferisce la tua ipotesi e poi assicurarti che ogni parte del backtest lo usi in modo coerente.

Per prima cosa, chiarisci cosa significa quell’ora

“La prima ora” sembra un’indicazione precisa, finché non specifichi l’orologio di riferimento. Potrebbe significare i primi 60 minuti dopo l’apertura del NYSE, le 09:30–10:30 secondo l’ora civile di New York oppure un intervallo UTC fisso. Queste definizioni coincidono per una parte dell’anno e divergono in prossimità dei cambi dell’ora legale.

Per l’ipotesi sulle azioni, usa l’ora locale della sessione di negoziazione: le 09:30 a New York sono le 09:30 sia con l’EST sia con l’EDT. Per l’ipotesi sulle crypto, la variabile desiderata potrebbe essere un’ora UTC fissa. Le crypto si scambiano senza interruzioni, quindi non c’è un’apertura della sede di negoziazione a cui ancorare l’affermazione.

Metti la definizione per iscritto prima di ottimizzare. “Tradare la prima ora dopo l’apertura della sessione regolare” si può verificare. “Tradare l’ora in cui il segnale funziona meglio” invita l’ottimizzatore a scegliere una convenzione oraria insieme alla strategia.

Dove si insinuano le discrepanze tra orologi

Immagina che i dati azionari siano archiviati in UTC, che il codice delle feature raggruppi le righe per ora UTC e che le regole di esecuzione aprano posizioni alle 09:30, ora di New York. Dopo il cambio dell’ora legale, l’apertura del mercato passa dalle 14:30 UTC alle 13:30 UTC. Una feature etichettata come “prima ora” in base al raggruppamento UTC ora corrisponde a una porzione diversa della sessione.

Una trappola simile si presenta quando costruisci le barre a partire dai timestamp. Se fai il resampling in UTC e poi converti le etichette all’ora di New York, potresti ottenere confini inattesi, soprattutto durante il passaggio all’ora legale in primavera, quando un’ora locale non esiste, e il ritorno all’ora solare in autunno, quando un’ora locale si ripete due volte. Un timestamp come le 01:30 ora locale è ambiguo in quella domenica autunnale, a meno che non includa un offset UTC o sia rappresentato in UTC.

Anche per il tuo risultato sulle crypto il calendario può essere rilevante. Una strategia basata sulle ore UTC può coincidere con l’attività dei mercati statunitensi per mesi, per poi sembrare spostarsi quando negli Stati Uniti cambia l’ora. Questo non invalida la strategia, ma cambia ciò che puoi affermare. Potresti aver misurato un pattern legato a un’ora UTC fissa, che a volte si sovrappone all’apertura statunitense, anziché un effetto legato a quell’apertura.

Integra l’orologio della sessione nel test

Conserva i timestamp degli eventi in UTC come riferimento canonico. Ricava i campi della sessione locale da un fuso orario con nome, ad esempio America/New_York, usando un database dei fusi orari che gestisca i cambiamenti storici delle regole. Non impostare valori fissi come “UTC meno cinque” o “UTC meno quattro”: nessuno dei due offset definisce l’ora di New York per tutto l’anno.

DecisioneEsempio azionarioEsempio crypto
Orologio dell’ipotesiMinuti dall’apertura della sessione regolareOra UTC del giorno
Fonte delle sessioniCalendario della borsa, con festività e chiusure anticipateCalendario UTC continuo
Orario degli ordiniPrimo evento eseguibile dopo il segnalePrimo evento eseguibile dopo il segnale

Poi testa separatamente le settimane a cavallo del cambio d’ora. Confronta le performance prima e dopo ogni passaggio all’ora legale e verifica se l’intervallo vincente resta legato alla sessione di mercato o rimane fisso in UTC. Se hai cercato tra molte ore, date e offset per trovare il risultato migliore, includi anche questa ricerca nel calcolo dell’overfitting: la scelta dell’orologio è stata un’ulteriore prova.

Un fuso orario è un insieme di regole, non un numero di ore da sottrarre. Archivia gli eventi in UTC e ricava l’ora locale del mercato quando ti serve.

Cosa dovrebbe confermare il paper trading

Quando trasferisci la strategia al paper trading, registra sia il timestamp UTC dell’evento sia il minuto relativo alla sessione. Così puoi accorgerti rapidamente se la strategia crede che l’apertura sia alle 09:30, ma in realtà invia l’ordine alle 10:30 ora locale. Controlla anche le festività e le chiusure anticipate: applicando a tutti i giorni feriali un orario standard di sessione, la strategia finirà per generare operazioni anche nei giorni in cui la borsa è chiusa.

E quando cambia l’ora, resisti alla tentazione di “correggere” un risultato spostando il segnale finché la curva azionaria non torna familiare. Per prima cosa verifica l’ipotesi dichiarata, il calendario e l’orario degli ordini. Se il risultato si sposta insieme alla sessione di mercato, hai imparato qualcosa sul comportamento della sessione. Se resta sulla stessa ora UTC, hai imparato qualcos’altro. Il backtest deve mantenere chiara questa distinzione.

stagionalità intradayfusi oraribacktestingorari di mercatoingegneria dei dati
← Tutti gli articoli