1. Sintesi
Valutazione finale dal 2018Domanda: il deep learning prevede la volatilità di indici azionari meglio di modelli semplici come HAR e GARCH? Risposta: solo in parte. Una GRU piccola, stimata su tutti e tre gli indici insieme e mediata su 5 seed, è il miglior modello a 1 e 5 giorni, soprattutto sugli indici europei. A 22 giorni l'HAR resta il migliore. Ridge e LightGBM non battono l'HAR. Nel volatility targeting tutte le strategie basate sui modelli centrano il 10% di volatilità, ma la GRU non dà uno Sharpe diverso da quello dell'HAR: il miglioramento statistico non diventa un guadagno economico misurabile.
Da dove vengono questi numeri: sono conteggi fatti dal generatore sulle tabelle F1, F3 e S3 di docs/results.md, non ricalcoli.
2. Dati e proxy di volatilità
Descrittivo — dati dal 2000 (date di inizio per asset)Tre indici di prezzo da Yahoo Finance (dividendi esclusi). La volatilità non si osserva: si usa lo stimatore di Parkinson, basato sul range massimo-minimo del giorno. Nessun prezzo né rendimento grezzo è incluso in questa pagina: solo quantità derivate.
Lunghezza delle serie, inizio affidabile e righe rimosse
Cosa guardare: righe totali, righe "stale" rimosse (festività con dato fittizio) e giorni con massimo = minimo. Cosa significa: il campione utile parte dalla data affidabile di ciascun indice; l'Euro Stoxx 50 ha dati solo dal 2007.
Cosa guardare: quante sedute cadono in stima iniziale, tuning e valutazione. Cosa significa: il periodo di valutazione è lo stesso per tutti gli indici; cambia solo la lunghezza della stima iniziale.
Cosa guardare: il rapporto tra Parkinson e rendimento al quadrato, anno per anno. Cosa significa: nessuna rottura nella costruzione dei dati storici: il proxy è omogeneo nel tempo.
Anomalie anno per anno, rapporto Parkinson/r² per anno, giorni rimossi, rendimenti estremi, VIX, floor del proxy
Cosa guardare: giorni anomali per anno (stale, massimo = minimo, apertura uguale alla chiusura precedente). Cosa significa: le anomalie sono concentrate nella storia più lontana.
Cosa guardare: l'ultima colonna (rapporto diviso la mediana). Cosa significa: fuori da [0,80; 1,25] l'anno è segnalato; violazioni isolate sono eventi di mercato, non errori nei dati.
Giorni rimossi perché stale (solo data; i prezzi non sono mostrati).
Giorni con |rendimento| oltre il 10%, segnalati e non modificati (solo data).
VIX allineato alla data di borsa di ciascun indice, mai con date successive.
Valori del proxy ≤ 0 sostituiti con un floor calcolato solo sul passato.
Proxy di Parkinson nel tempo
Cosa guardare: la linea scura (media mobile a 22 sedute) e i picchi grigi giornalieri. Cosa significa: la volatilità si muove a ondate (2008, 2011, 2020, 2022): è prevedibile proprio perché persiste.
Fatti stilizzati
Cosa guardare: le autocorrelazioni di r², |r| e log-Parkinson restano positive per molti ritardi. Cosa significa: memoria lunga della volatilità, la ragione per usare medie a 5, 22 e 66 giorni.
Cosa guardare: curtosi in eccesso e frequenza dei giorni oltre 4 deviazioni standard. Cosa significa: code molto più pesanti di una normale (l'ultima colonna dice quante volte di più); per questo i GARCH usano una t di Student.
3. Periodo di tuning (2013-2017)
Tuning 2013-2017 — non è la valutazioneQuesti numeri servono solo a scegliere iperparametri e candidati, con regole fissate prima. Non vanno confrontati con quelli della valutazione finale.
Classifica dei modelli per QLIKE
Cosa guardare: le barre più corte. Cosa significa: QLIKE più bassa = previsioni migliori nel tuning. La "media" è la media semplice delle 9 celle della tabella 2 di results.md; le varianti di robustezza (non riscalate) e lo scenario con VIX sono in tinta chiara; la previsione naive è esclusa dal grafico (molto peggiore, è nella tabella).
Tabelle QLIKE e MSE del tuning
Griglie degli iperparametri
Cosa guardare: la barra piena è la configurazione scelta. Cosa significa: vince la QLIKE media più bassa sulle 9 celle (regola dichiarata prima, A5.6); per i modelli lineari la curva è quasi piatta.
Cosa guardare: GRU con finestra 60 o 120 giorni e 32 o 64 unità. Cosa significa: la rete più piccola vince (regola A6.7); reti più grandi non aiutano.
Tabelle complete delle griglie
Ridge contro HAR, e HAR con la media a 66 giorni
L'HAR a 66 giorni è un'analisi esplorativa post-hoc (A5.9)Cosa guardare: quanto la barra dell'HAR con 66 giorni si avvicina a Ridge. Cosa significa: a 5 e 22 giorni il vantaggio di Ridge viene quasi tutto dalla variabile a 66 giorni, non dal modello.
Importanze SHAP di LightGBM
Cosa guardare: le variabili con le barre più lunghe. Cosa significa: a 1-5 giorni conta la media a 5 giorni, a 22 giorni la media a 66 giorni; il rendimento negativo (leva) pesa poco. Ultima ri-stima del tuning.
Reti neurali: dispersione tra seed, ensemble, locale contro globale
Cosa guardare: la barra va dal seed migliore al peggiore, in rapporto alla QLIKE dell'ensemble (= 1); il punto vuoto è la media dei seed (rapporti calcolati dalla tabella 10). Cosa significa: i singoli seed differiscono di qualche punto percentuale, quanto le differenze tra modelli; l'ensemble è sotto la media dei seed: senza ensemble il confronto sarebbe una lotteria.
Cosa guardare: le celle in cui il modello unico sui tre indici batte quelli separati. Cosa significa: il modello globale aiuta soprattutto i modelli flessibili (LightGBM, GRU), poco Ridge.
Diagnostica delle stime (GARCH, controllo incrociato R/Python, addestramento delle reti)
4. Valutazione finale (dal 2018)
Valutazione finale dal 2018 — eseguita una volta dopo il tag pre-evalDieci candidati, uno per famiglia (versione locale e globale dove esiste), scelti nel tuning con regole dichiarate. Benchmark: HAR con termine di leva.
Perdite per modello, indice e orizzonte
Tabella
Diebold-Mariano contro l'HAR (QLIKE)
Cosa guardare: le celle blu con l'asterisco. Cosa significa: statistica negativa = candidato con perdita più bassa dell'HAR; * = p < 0,05. Test singoli, non corretti per i confronti multipli (per quello c'è il MCS).
Model Confidence Set (α = 0,10)
Cosa guardare: le celle verdi sono i modelli nel set dei migliori, con il p-value MCS (1,00 = il migliore). Cosa significa: a 1 e 5 giorni sugli indici europei restano quasi solo le GRU; sull'S&P 500 HAR e GRU globale non sono distinguibili; a 22 giorni restano quasi tutti.
Mincer-Zarnowitz: pendenza (R²)
Cosa guardare: pendenze vicine a 1. Cosa significa: sotto 1 le previsioni sono troppo variabili rispetto al realizzato (l'HAR), sopra 1 troppo piatte.
Regimi: calma, stress, Covid 2020, anno 2022
Cosa guardare: il colore delle righe GRU nello stress. Cosa significa: QLIKE relativa all'HAR nel regime; descrittivo, senza test. Nello stress la GRU globale è sotto 1 in tutte le celle; nella calma vince a 1-5 giorni e perde a 22.
5. Previsioni contro volatilità realizzata
Valutazione finale dal 2018Cosa guardare: la linea grigia è la volatilità realizzata (Parkinson medio sui giorni successivi), le altre sono le previsioni; le bande evidenziano Covid 2020 e 2022. Trascina per ingrandire. Cosa significa: l'HAR esplode dopo i giorni estremi di marzo 2020; GRU ed EGARCH sono più smussati. Episodi illustrativi, non una prova.
6. Differenza cumulata di QLIKE rispetto all'HAR
Valutazione finale dal 2018Cosa guardare: se la curva scende sotto zero e in che momenti. Cosa significa: somma nel tempo di QLIKE(candidato) − QLIKE(HAR): sotto zero il candidato ha accumulato perdite più basse; un salto indica un singolo episodio decisivo. Descrittivo: la significatività è nel Diebold-Mariano.
7. Robustezza ed esplorativo
Esplorativo / robustezza — non cambia i risultati principaliS&P 500 con campione dal 2007
Cosa guardare: le due colonne per orizzonte (campione principale e dal 2007). Cosa significa: con il campione più corto la GRU globale resta la migliore a 1 giorno, ma il vantaggio non è più significativo.
Cosa guardare: nessuna cella blu con asterisco per le reti. Cosa significa: Diebold-Mariano contro l'HAR sull'S&P 500 dal 2007: sul mercato USA il guadagno del deep learning non è robusto.
Modelli sui rendimenti non riscalati
Cosa guardare: EGARCH riscalato contro non riscalato. Cosa significa: il riscalamento al livello del proxy aiuta a 1-5 giorni, non a 22.
Ensemble contro seed singoli
Cosa guardare: l'ultima colonna. Cosa significa: a 1-5 giorni quasi tutti i seed della GRU globale battono l'HAR: il risultato non dipende da un seed fortunato.
Controllo post-hoc A7.8: HAR senza leva ed esclusione di febbraio-aprile 2020
Cosa guardare: la colonna "nel MCS" e il segno del DM in tutti gli scenari. Cosa significa: la conclusione sulla GRU globale a 1 e 5 giorni non cambia né con un altro benchmark né senza il Covid.
Cosa guardare: le righe GRU. Cosa significa: QLIKE relativa al benchmark dello scenario (sotto 1 = meglio), solo orizzonti 1 e 5.
Diebold-Mariano e MCS dello scenario
8. Volatility targeting
Valutazione finale dal 2018 — parametri fissati prima (A8)Peso = 10% diviso la volatilità prevista per domani (leva massima 1,5), deciso a fine giornata; costi per unità di turnover. Rendimenti di prezzo senza dividendi.
Cosa guardare: le curve dei modelli rispetto al buy-and-hold (scala logaritmica). Cosa significa: meno rendimento e molta meno oscillazione; le curve di HAR e GRU sono quasi sovrapposte.
Cosa guardare: quanto le curve restano vicine alla linea del 10%. Cosa significa: volatilità realizzata a 63 sedute (costo principale); i modelli tengono l'obiettivo, il buy-and-hold no.
Cosa guardare: la profondità delle discese. Cosa significa: il targeting circa dimezza il massimo drawdown (costo principale).
Differenze di Sharpe con intervalli di confidenza
Cosa guardare: se l'intervallo attraversa lo zero. Cosa significa: intervallo al 95% con stationary bootstrap; se contiene lo zero la differenza non è significativa. GRU globale contro HAR: mai significativa.
Cosa guardare: volatilità realizzata contro il 10%, Sharpe, drawdown, turnover. Cosa significa: metriche al costo principale (2 punti base).
Cosa guardare: come scende lo Sharpe da 0 a 5 punti base. Cosa significa: i segnali dei modelli girano molto il portafoglio, quindi soffrono di più i costi.
Tabella completa delle differenze di Sharpe
9. Come è stato condotto lo studio
Metodo- Regole prima dei risultati. Griglie, regole di scelta, candidati finali e parametri della strategia sono stati committati prima di calcolare le perdite corrispondenti; le scelte usano solo il periodo di tuning.
- Un solo periodo di valutazione, usato una volta. Candidati, codice e previsioni congelati con il tag git
pre-eval(commit); sblocco in un commit separato (); valutazione eseguita una volta. Il codice era stato provato prima sul tuning. - Il resto è dichiarato come esplorativo (sezione 7), senza cambiare candidati né risultati. Registro delle decisioni A0.1-A9.10 in
docs/methodology.md; tutte le tabelle indocs/results.md.
Limiti
- Nessuna ricerca di iperparametri propria per i modelli globali (A7.2).
- Rendimenti di prezzo senza dividendi; nessun costo della leva né slippage nel targeting.
- Euro Stoxx 50 con campione dal 2007, più corto degli altri indici.
- Piccole differenze numeriche tra computer diversi (A7.6); le previsioni versionate sono il riferimento.
- HAR con previsioni esplosive nel marzo 2020; il controllo A7.8 mostra che la conclusione non cambia.
- Sull'S&P 500 il vantaggio della GRU non è robusto al campione dal 2007.
Controlli di coerenza con results.md
Il generatore si ferma se un numero ricostruito non coincide con le tabelle (A9.4). Controlli superati:
Glossario
- Proxy di Parkinson
- Stima della varianza di un giorno dal rapporto tra massimo e minimo: ln(H/L)² / (4 ln 2). È il "realizzato" che le previsioni cercano di indovinare.
- QLIKE
- Perdita principale: realizzato/previsto − ln(realizzato/previsto) − 1. Vale 0 per una previsione perfetta e penalizza soprattutto le sottostime; è robusta a un proxy rumoroso.
- MSE, MAE
- Errore quadratico medio sulla varianza (dominato dai giorni molto volatili) ed errore assoluto medio sulla volatilità.
- Walk-forward e purga
- I modelli vengono ristimati nel tempo usando solo dati passati; la purga toglie dalla stima i target che finiscono dopo la data di ristima, così nessun dato futuro entra nel modello.
- Diebold-Mariano (DM)
- Test sulla differenza media di perdita tra due modelli, corretto per l'autocorrelazione; qui statistica negativa = candidato migliore dell'HAR.
- Model Confidence Set (MCS)
- Insieme dei modelli che non si possono distinguere dal migliore al livello del 10%; tiene conto del confronto tra molti modelli insieme.
- Mincer-Zarnowitz
- Regressione del realizzato sulla previsione: pendenza 1 e intercetta 0 per una previsione ben calibrata.
- Ensemble di seed
- Media delle previsioni di 5 reti identiche addestrate con inizializzazioni casuali diverse; riduce la dipendenza dalla fortuna.
- Modello globale
- Un solo modello stimato sui tre indici insieme (con standardizzazione per indice), contro un modello separato per indice (locale).
- HAR, GARCH, EWMA, ARMA
- Modelli classici: regressione su medie a 1, 5 e 22 giorni (HAR); varianza condizionale con shock passati (GARCH, EGARCH); media esponenziale (EWMA); modello autoregressivo sul log della volatilità (ARMA).
- Tuning e valutazione finale
- 2013-2017 per scegliere; dal 2018 per giudicare, una volta sola.