La tesoreria di Ferrovie dello Stato Italiane S.p.A. gestisce flussi di cassa da 12 miliardi di euro l'anno su 15 conti bancari in 4 valute. Un modello di serie storiche tradizionale ARIMA produceva previsioni a 30 giorni con un errore medio del 14%. Sostituito con un modello gradient boosting alimentato da 180 variabili esogene (scadenziario pagamenti, incassi ticketing, ciclo di bilancio dello Stato), l'errore scende al 6%. La differenza vale decine di milioni di euro in linee di credito inutilizzate.
Gradient Boosting per serie temporali finanziarie
Famiglia di algoritmi ML (XGBoost, LightGBM, CatBoost) che apprendono una sequenza di modelli corretti degli errori precedenti. Particolarmente efficace per il forecasting finanziario con variabili esogene perché gestisce nativamente: relazioni non lineari tra variabili, interazioni complesse, dati mancanti, e feature di diversa natura (numeriche, categoriche, temporali). Non assume stazionarietà né distribuzione normale degli errori — limite critico di ARIMA per i dati finanziari reali.
Isolation Forest (rilevamento anomalie)
Algoritmo non supervisionato che isola le anomalie costruendo alberi di decisione casuali: le anomalie — per definizione rare e differenti dalla norma — vengono isolate con meno split rispetto ai punti normali. Particolarmente efficace per flussi transazionali ad alto volume perché non richiede dati etichettati (frodi storiche) e funziona su dati ad alta dimensionalità. In ambito finanziario, viene spesso combinato con l'Autoencoder neurale per catturare pattern sequenziali.
Il feature engineering è la fase critica che distingue un modello di produzione da un prototipo accademico. Per i dati finanziari italiani, le variabili esogene più predittive includono: calendario fiscale italiano (scadenze IVA, F24, cassa integrazione), ciclo di bilancio delle PA, scadenziario dei titoli di Stato BTP, variabili macroeconomiche Istat (produzione industriale, fiducia imprese) e dati di settore Banca d'Italia.
| Modello | Tipo | Forza principale | Limite principale | Contesto ottimale |
|---|---|---|---|---|
| ARIMA/SARIMA | Statistica parametrica | Interpretabilità, dati limitati | Assunzione stazionarietà, no variabili esogene | Serie storiche regolari < 3 anni |
| Prophet (Meta) | Bayesiano additivo | Gestione stagionalità multipla, holiday effects | Meno efficace con molte variabili esogene | Retail, ticketing, stagionalità settoriale |
| Gradient Boosting (XGBoost) | ML supervisionato | Feature esogene, non linearità, robusto a outlier | Richiede feature engineering manuale | Tesoreria con dati macroeconomici |
| LSTM (deep learning) | Rete ricorrente | Sequenze lunghe, dipendenze temporali complesse | Richiede grandi volumi dati, black box | Pagamenti con pattern sequenziali complessi |
| Isolation Forest | Non supervisionato | No etichette richieste, scalabile | Tasso falsi positivi da calibrare | Anomaly detection transazionale |
La direzione finanziaria di Ferrovie dello Stato Italiane S.p.A. costruisce il modello di forecasting in tre fasi: data pipeline con 36 mesi di dati storici + 180 feature esogene aggiornate giornalmente; training con LightGBM su una finestra rolling di 24 mesi con validazione walk-forward (non una singola train-test split, per rispettare l'ordine temporale); monitoring in produzione con MAPE rolling a 7 giorni e alert automatico se supera l'8%. Il modello di Isolation Forest parallelo monitora le 12.000 transazioni giornaliere: flag le transazioni con anomaly score superiore al 95° percentile per revisione umana, riducendo del 40% il tempo di riconciliazione manuale.
Risposta corretta : Holdout singolo con split 80/20 casuale
La walk-forward validation rispetta l'ordine temporale dei dati: il modello viene addestrato su dati passati e validato su dati futuri, evitando che informazioni successive al periodo di training 'inquinino' la stima delle performance (data leakage). K-fold e holdout casuale violano l'ordine temporale — vietati su serie finanziarie.
⚠️Usare una singola train-test split per validare modelli su serie temporali
→ La data leakage è il rischio più grave nel ML finanziario: usare walk-forward validation o expanding window per rispettare l'ordine temporale e ottenere una stima realistica delle performance fuori campione.
⚠️Ottimizzare l'RMSE senza considerare l'asimmetria degli errori in finanza
→ In tesoreria, sovrastimare le uscite (tenersi più liquidità del necessario) è meno costoso che sottostimarle (scoperto bancario): incorporare funzioni di loss asimmetriche nel training o post-hoc nel decision threshold.
⚠️Deployare il modello senza un processo di monitoraggio del data drift
→ Le distribuzioni dei dati finanziari cambiano nel tempo (crisi, shock di mercato, cambiamenti normativi): senza monitoraggio del feature drift e del model drift, il modello degrada silenziosamente senza alert.
responsabile data science finanza (Italia)
Domande suggerite