Ti spiegherò come i quant istituzionali usano l'analisi delle serie temporali per trovare un vantaggio in qualsiasi mercato e condividerò il framework completo che puoi implementare a partire da oggi.
Andiamo dritti al punto.
Segna questo - Sono Roan, uno sviluppatore backend che lavora su system design, esecuzione in stile HFT e sistemi di trading quantitativo. Il mio lavoro si concentra su come i mercati di previsione si comportano effettivamente sotto carico. Per qualsiasi suggerimento, collaborazioni ponderate o partnership, i DM sono aperti.
Nel 2008, la maggior parte dei trader guardava ai titoli garantiti da mutui ipotecari e vedeva una linea in salita.
Vedevano un trend. Vedevano slancio. Eseguivano i loro modelli di serie temporali. I modelli dicevano di comprare. I modelli erano catastroficamente sbagliati.
Un piccolo gruppo di trader guardò la stessa linea e fece una domanda diversa. Non dove andrà la linea dopo, ma cosa sta effettivamente generando la linea? Analizzarono i dati sottostanti dei mutui. Trovarono prestiti a tasso variabile concessi a persone senza verifica del reddito. Trovarono tassi di insolvenza in aumento silenzioso nei dati, prima che il grafico dei prezzi mostrasse qualcosa. Usarono quelle informazioni, che nessun modello di serie temporali avrebbe potuto catturare da solo, per costruire posizioni che fruttarono miliardi quando il mercato crollò.
Questa è la lezione più importante in tutta l'analisi delle serie temporali. La linea sul tuo grafico è una conseguenza di qualcosa che accade nel mondo reale. Un modello di serie temporali può dirti cosa ha fatto quella linea. Non può dirti cosa la sta effettivamente causando. E nel momento in cui la realtà sottostante cambia, il tuo modello diventa una responsabilità invece che un'attività.
Ho già trattato le Catene di Markov per il rilevamento dei regimi e le Reti Neurali per la generazione di segnali in articoli precedenti. L'analisi delle serie temporali è il terzo livello essenziale dello stack di trading sistematico. Insieme, questi tre framework formano un sistema di trading quantitativo completo.
Entro la fine di questo articolo capirai esattamente cos'è una serie temporale e come i mercati le generano, perché il tuo modello di serie temporali è sempre sbagliato e perché in realtà va bene così, i tre compiti fondamentali che guidano ogni decisione di trading quantitativo, il framework di implementazione completo dai dati grezzi ai segnali di trading in tempo reale, e l'unico errore che causa il fallimento del 90% dei modelli di serie temporali prima ancora che tocchino capitale reale.
Nota: Questo articolo è volutamente lungo. Ogni parte si basa sulla precedente. Se sei seriamente intenzionato a costruire un vantaggio sistematico usando l'analisi delle serie temporali, leggi ogni singola parola. Se stai cercando una scorciatoia, questo non fa per te.
Parte 1: Cos'è Realmente una Serie Temporale e Cosa Ti Sta Nascondendo
Una serie temporale è una sequenza di osservazioni registrate a intervalli regolari nel tempo. Il prezzo di chiusura giornaliero di un'azione. Letture orarie della temperatura. Numeri mensili di disoccupazione. Ognuna è una serie di valori indicizzati nel tempo.
Questa definizione è tecnicamente corretta e praticamente incompleta.
La cosa critica che la maggior parte delle persone perde è che ogni serie temporale è generata da qualcosa. Il prezzo di un'azione non si muove casualmente nel vuoto. È il risultato di milioni di decisioni prese da investitori, algoritmi, market maker e forze macro che non puoi osservare direttamente solo dalla serie dei prezzi. Il prezzo è ciò che gli economisti chiamano una variabile conseguenza. Ciò che lo sta effettivamente guidando è la distribuzione generatrice dei dati sottostante.

Questa distinzione è enormemente importante per il trading. Quando applichi un modello di serie temporali ai dati di mercato, stai modellando l'output visibile di un processo invisibile. Finché il processo invisibile rimane più o meno lo stesso, il tuo modello cattura schemi utili. Nel momento in cui il processo sottostante cambia, il tuo modello si sta silenziosamente adattando a qualcosa che non esiste più.
Pensa alla temperatura a New York. Se è dicembre e attualmente ci sono -6 gradi Celsius, cosa farà domani? La tua risposta sarà probabilmente intorno ai -6 gradi, più o meno. Non stai facendo una previsione precisa. Stai producendo un'aspettativa basata sullo stato attuale e sui modelli stagionali noti. Quell'aspettativa sarà approssimativamente corretta la maggior parte del tempo in condizioni normali.
Ora immagina che un vulcano erutti in Islanda e faccia aumentare le temperature globali di 8 gradi in una settimana. Il tuo modello non ha informazioni su quel vulcano. La sua previsione sarà violentemente sbagliata. Non perché il modello sia cattivo. Perché il processo di generazione dei dati sottostante è cambiato in un modo completamente invisibile nella sola serie delle temperature.
Questo è esattamente ciò che è successo con i titoli ipotecari nel 2008. La serie temporale dei prezzi diceva che tutto andava bene. Il processo sottostante, l'effettiva affidabilità creditizia dei prestiti, era già cambiato. L'informazione esisteva. Semplicemente non era nella serie dei prezzi.
Una serie temporale può essere scomposta in tre componenti:
Il trend è il movimento direzionale a lungo termine. La traiettoria complessiva che la serie segue per periodi prolungati. La stagionalità è uno schema ricorrente che si verifica a intervalli fissi. Cicli di vendita mensili, effetti trimestrali sugli utili, schemi giorno-settimana nel volume di trading. Lo shock o i residui sono le fluttuazioni casuali attorno alle componenti di trend e stagionalità. Eventi inaspettati, notizie, sorprese.
L'intuizione chiave su trend e stagionalità è che sono significativi solo se sono stabili. Se stai modellando i prezzi intraday delle azioni e il trend si inverte ogni poche ore, la componente di trend non ti dice nulla di utile. La stabilità è il prerequisito affinché qualsiasi modello di serie temporali abbia valore predittivo.
Compiti a casa: Prendi qualsiasi asset che attualmente negozi. Scrivi in una frase quello che credi sia il fattore principale che guida i suoi movimenti di prezzo. Quel fattore è ciò che dovresti monitorare insieme a qualsiasi modello di serie temporali che costruisci. Se quel fattore cambia, il tuo modello deve essere ricostruito.
Parte 2: I Tre Compiti e Perché le Previsioni Sono Sempre Sbagliate
Ogni applicazione dell'analisi delle serie temporali rientra in una di tre categorie. Capire quale compito stai effettivamente eseguendo ti salverà dall'errore più comune e costoso nella finanza quantitativa.
Il filtraggio stima lo stato attuale del sistema utilizzando dati passati e presenti. Stai cercando di rimuovere il rumore e vedere cosa sta realmente accadendo ora. Una media mobile è un filtro. Non predice il futuro. Smussa il presente. Ogni indicatore che hai mai messo su un grafico in una piattaforma di trading sta eseguendo una qualche forma di filtraggio. Quando usi una media mobile a 20 giorni, stai dicendo: voglio vedere lo stato sottostante di questo asset privo del rumore giorno per giorno. Questo è tutto ciò che stai facendo.
Lo smoothing utilizza sia dati passati che futuri per stimare qual era lo stato in un punto precedente nel tempo. Richiede una conoscenza globale del percorso, il che significa che devi vedere cosa succede dopo un punto nel tempo per caratterizzare al meglio cosa stava accadendo in quel punto. Lo smoothing è utile per analizzare dati storici e costruire dataset di ricerca, ma non può essere utilizzato per decisioni di trading in tempo reale perché richiede informazioni dal futuro.
La previsione utilizza lo stato attuale e passato per produrre un'aspettativa sul futuro. È qui che la maggior parte dei trader concentra la propria attenzione e dove risiede la maggior parte degli equivoci.
Ecco la verità fondamentale che la maggior parte dell'educazione al trading si rifiuta di affermare chiaramente.
Una previsione non è una predizione. È un'aspettativa. Queste non sono la stessa cosa.
L'aspettativa è il singolo numero che minimizza l'errore quadratico medio su tutti i possibili risultati futuri. Matematicamente è la media condizionale:
E[Xₜ₊₁ | X₁, X₂, ..., Xₜ]
Quando lanci un dado equilibrato, l'aspettativa è 3,5. Può un dado atterrare su 3,5? No. Ma 3,5 è comunque la risposta migliore che puoi dare prima di lanciare. È il valore che minimizza il tuo errore medio su tutti i lanci futuri.
Le previsioni di mercato funzionano esattamente allo stesso modo. Il tuo modello produce il miglior valore atteso date le informazioni disponibili. Quel valore atteso non sarà essenzialmente mai uguale al prezzo realizzato. Ma se è corretto in media e fai trading attorno ad esso in modo sistematico, puoi generare rendimenti costanti. Questo è esattamente il modo in cui operano i market maker. Non hanno bisogno di sapere dove andrà il prezzo. Hanno bisogno di conoscere il prezzo atteso, quotare uno spread attorno ad esso e raccogliere quello spread su migliaia di operazioni.
La prova che questo funziona anche quando il modello è sbagliato proviene da una semplice simulazione di market making. Immagina di quotare uno spread denaro-lettera attorno al valore atteso di un processo la cui vera aspettativa cambia casualmente nel tempo. Una media mobile traccia quell'aspettativa in modo imperfetto. È sempre leggermente sbagliata. Ma se fai trading sullo spread attorno a quella stima imperfetta, accumuli comunque un P&L positivo nel tempo perché sei corretto in media.
Questo è il cuore del trading sistematico che utilizza l'analisi delle serie temporali. Non hai bisogno di previsioni perfette. Hai bisogno di previsioni direzionalmente corrette abbastanza spesso da superare i costi di transazione. E hai bisogno di un framework rigoroso per sapere quando il tuo modello ha smesso di essere approssimativamente corretto.

Parte 3: Il Problema della Radice Unitaria che Distrugge la Maggior Parte dei Modelli di Trading
Questa è la sezione che ti salverà dall'errore più comune e costoso nel trading quantitativo con dati di serie temporali.
La maggior parte delle persone che cerca di costruire un modello predittivo per i prezzi delle azioni inizia eseguendo una regressione del prezzo di chiusura di domani contro il prezzo di chiusura di oggi. Quando lo fanno, ottengono un valore R-quadrato superiore a 0,99. Credono di aver scoperto una relazione predittiva quasi perfetta.
Non l'hanno fatto. Sono caduti in una delle trappole statistiche più documentate chiamata regressione spuria.
Ecco cosa succede realmente. Esegui la stessa regressione ma sostituisci i prezzi di chiusura con i rendimenti giornalieri. L'R-quadrato scende a circa 0,01. Sei passato dallo spiegare il 99 percento della variazione allo spiegare l'1 percento della variazione. Lo stesso asset sottostante, gli stessi dati, la stessa struttura del modello, risultati completamente diversi.
Il motivo è la radice unitaria.
Una serie temporale ha una radice unitaria quando il suo valore corrente è uguale al suo valore precedente più uno shock casuale:
Xₜ = Xₜ₋₁ + εₜ
Questo è chiamato un random walk. I prezzi delle azioni seguono approssimativamente questo processo. Quando regredisci un random walk contro un altro random walk, troverai quasi sempre una forte relazione statistica anche se le due serie sono completamente non correlate. Questa è la regressione spuria ed è la fonte di innumerevoli falsi segnali di trading nel settore.
Il test per questo è il test Augmented Dickey-Fuller. L'ipotesi nulla è che la serie abbia una radice unitaria. Un p-value inferiore a 0,05 significa che puoi rifiutare l'ipotesi nulla e la serie è probabilmente stazionaria. Un p-value superiore a 0,05 significa che la serie ha probabilmente una radice unitaria e i modelli di regressione grezzi produrranno risultati spuri.
Scoprirai che la serie dei prezzi fallisce il test e la serie dei rendimenti lo supera. Questo ti dice esattamente cosa modellare. Non costruire mai modelli predittivi sui livelli di prezzo grezzi. Trasforma sempre in rendimenti, log-rendimenti o altre quantità derivate stazionarie prima di applicare modelli di serie temporali.
La trasformazione che converte una serie di prezzi in una serie stazionaria è chiamata differenziazione del primo ordine:
rₜ = ln(Pₜ) - ln(Pₜ₋₁)
I log-rendimenti sono approssimativamente stazionari, sebbene le serie di rendimenti finanziari presentino ancora fatti stilizzati come il clustering della volatilità e le code pesanti che la pura stazionarietà non cattura completamente. Affronteremo questi aspetti nella sezione GARCH qui sotto.
Compiti a casa: Prendi qualsiasi modello di trading che stai attualmente utilizzando o hai utilizzato in passato. Controlla se è stato costruito sui livelli di prezzo o sui rendimenti. Se è stato costruito sui livelli di prezzo, esegui il test Dickey-Fuller sui dati sottostanti. Se il p-value è superiore a 0,05, i risultati del tuo backtest sono probabilmente gonfiati da correlazione spuria.
Parte 4: I Modelli che Funzionano Realmente e Come Usarli
Ora che capisci cos'è una serie temporale, i tre compiti fondamentali e il problema della radice unitaria, sei pronto per costruire modelli che funzioneranno realmente nei mercati dal vivo.
La famiglia di modelli che costituisce la spina dorsale del trading sistematico è la famiglia ARMA e le sue estensioni. Ogni modello in questa famiglia cattura un aspetto diverso della struttura di dipendenza seriale nelle serie temporali finanziarie.
AR: Modelli Autoregressivi
Un modello autoregressivo di ordine p, scritto AR(p), dice che il valore corrente di una serie è una funzione lineare dei suoi p valori precedenti più uno shock casuale:
Xₜ = φ₁Xₜ₋₁ + φ₂Xₜ₋₂ + ... + φₚXₜ₋ₚ + εₜ
I coefficienti φ sono i parametri autoregressivi. Catturano quanto del valore corrente è spiegato da ogni ritardo. Nel trading, i modelli AR sono utili per catturare le dinamiche di momentum a breve termine e di mean reversion. Un modello AR(1) dove φ₁ è positivo cattura il momentum. Un modello AR(1) dove φ₁ è negativo cattura la mean reversion.
MA: Modelli a Media Mobile
Un modello a media mobile di ordine q, scritto MA(q), dice che il valore corrente è una funzione lineare degli shock casuali correnti e passati:
Xₜ = εₜ + θ₁εₜ₋₁ + θ₂εₜ₋₂ + ... + θqεₜ₋q
I modelli MA catturano l'effetto delle sorprese passate sui valori correnti. Sono particolarmente utili per modellare come i mercati rispondono agli eventi di cronaca.
ARMA: Combinare Entrambi
Il modello ARMA(p,q) combina entrambe le componenti:
Xₜ = φ₁Xₜ₋₁ + ... + φₚXₜ₋ₚ + εₜ + θ₁εₜ₋₁ + ... + θqεₜ₋q
Per serie non stazionarie, applichi prima la differenziazione per rendere la serie stazionaria, e il modello risultante è chiamato ARIMA(p,d,q) dove d è l'ordine di differenziazione.
GARCH: Modellare la Volatilità
Il problema con i modelli ARMA per i dati finanziari è che assumono una volatilità costante. I rendimenti finanziari mostrano un clustering della volatilità: grandi movimenti tendono ad essere seguiti da grandi movimenti, e piccoli movimenti tendono ad essere seguiti da piccoli movimenti. Questo è l'effetto ARCH, ed è uno dei fatti stilizzati più documentati in tutta la finanza.
Il modello GARCH(1,1) affronta questo problema modellando la varianza del termine di errore come un processo che varia nel tempo:
σₜ² = ω + α₁εₜ₋₁² + β₁σₜ₋₁²
Dove σₜ² è la varianza condizionale al tempo t, εₜ₋₁² è lo shock al quadrato del periodo precedente, e σₜ₋₁² è la varianza del periodo precedente. Questo modello cattura esattamente il clustering della volatilità che osservi nei mercati: alta volatilità oggi predice alta volatilità domani.
Per il trading, GARCH è essenziale per il dimensionamento della posizione. Quando σₜ² è alta, riduci la dimensione della posizione. Quando σₜ² è bassa, puoi assumerti più rischio. Questa singola intuizione, ridimensionare dinamicamente la dimensione della posizione in base alla volatilità stimata, è responsabile di una frazione significativa dei rendimenti corretti per il rischio generati dai fondi sistematici.

Parte 5: Il Pipeline di Implementazione Completo
Questa sezione assembla tutto in un sistema funzionante che puoi eseguire su dati reali oggi.
Tre cose critiche da capire su questa implementazione prima di implementarla.
Primo: Il dimensionamento della posizione basato su GARCH sta facendo più lavoro della direzione della previsione ARIMA. Ridurre l'esposizione durante i regimi di alta volatilità è il vantaggio più affidabile nell'intero sistema. Previsioni direzionali con un'accuratezza dal 52 al 55 percento combinate con un dimensionamento scalato per la volatilità producono rendimenti corretti per il rischio migliori rispetto a un'accuratezza del 60 percento con dimensionamento fisso.
Secondo: La struttura walk-forward non è negoziabile. Ad ogni passo stai adattando il modello solo sui dati storici e prevedendo un passo avanti. Non adattare mai sull'intero dataset e generare previsioni in-sample chiamandolo backtest. Quello non è un backtest. È un curve fit con un'etichetta.
Terzo: I dati alternativi sono il tetto di ciò che l'analisi delle serie temporali può raggiungere. Il framework che hai costruito qui è il pavimento. Cattura gli schemi che esistono all'interno della serie dei prezzi. I trader che ottengono costantemente risultati superiori aggiungono informazioni che la serie dei prezzi non può contenere. Sentiment delle chiamate sugli utili. Squilibrio del flusso di ordini dal book. Segnali del mercato del credito. Informazioni sul regime cross-asset. Questi non sono miglioramenti al modello. Sono input da un set informativo fondamentalmente diverso.

La limitazione pratica più importante: Tutti i modelli della famiglia ARMA assumono che le proprietà statistiche della serie siano approssimativamente stabili durante la finestra di stima. Nei mercati finanziari questa assunzione viene violata continuamente. La mitigazione standard è una finestra di stima mobile di 252 giorni di trading che scarta i dati vecchi man mano che arrivano nuovi dati. Finestre più corte si adattano più velocemente ma producono stime dei parametri più rumorose. Finestre più lunghe sono più stabili ma sono in ritardo rispetto ai cambiamenti di regime. La lunghezza ottimale della finestra è una questione empirica che deve essere risolta separatamente per ogni strumento e ogni strategia.
Il Riepilogo
L'analisi delle serie temporali non predice il futuro. Ciò che fa è produrre l'aspettativa matematicamente ottimale del futuro dato lo stato attuale e la storia osservata. Quando quell'aspettativa è direzionalmente corretta abbastanza spesso e combinata con un dimensionamento della posizione scalato per la volatilità, genera un vantaggio consistente.
Il framework completo è in questo articolo. Controlla la stazionarietà prima di costruire qualsiasi modello. Usa i rendimenti, non i prezzi, come input. Adatta ARIMA per catturare il segnale direzionale nelle autocorrelazioni dei rendimenti. Sovrapponi GARCH per modellare la volatilità che varia nel tempo e ridimensionare dinamicamente la dimensione della tua posizione. Convalida tutto utilizzando una struttura walk-forward mobile. E ricorda sempre che i movimenti più grandi, quelli che generano o distruggono la maggior parte del capitale, provengono da cambiamenti di regime che nessun modello di serie temporali vedrà mai arrivare.
Quell'ultima parte non è una limitazione dei modelli. È una descrizione della realtà. I trader che hanno costruito le strategie sistematiche di maggior successo nella storia capivano esattamente cosa i loro modelli potevano e non potevano fare. Usavano le serie temporali per ciò in cui sono veramente brave: estrarre schemi stabili da regimi stabili. E usavano dati alternativi e rilevamento dei regimi per sapere quando quei regimi stavano per cambiare.
Ora hai entrambi. Il framework delle serie temporali è in questo articolo. Il framework di rilevamento dei regimi con Catene di Markov è nell'articolo precedente. Il framework di generazione di segnali con reti neurali è nell'articolo prima di quello.
Ora hai uno stack di trading sistematico completo.
Ecco la domanda su cui voglio che tu rifletta.
Un modello GARCH ti dice che la volatilità sta per impennarsi basandosi sugli schemi nella sola storia dei rendimenti. Una Catena di Markov ti dice che il mercato sta per passare da un regime di bassa volatilità a un regime di alta volatilità basandosi sullo stato attuale. Se entrambi i segnali concordano, quella convergenza è uno dei segnali di gestione del rischio più forti disponibili. Se sono in disaccordo, quella divergenza è di per sé un'informazione. Cosa potrebbe causare il loro disaccordo e cosa ti direbbe quel disaccordo sulle attuali condizioni di mercato?
Lascia la tua risposta nei commenti.
Non esiste una risposta sbagliata, ma ce ne sono di molto rivelatrici.





