A chi serve — A chi vuole vedere quanto una metrica o un drawdown possano cambiare quando varia il percorso, senza scambiare una nuvola di simulazioni per una previsione del futuro.
Monte Carlo indica una famiglia di metodi che genera molte realizzazioni da un modello probabilistico. Il bootstrap ricampiona le osservazioni disponibili per approssimare la distribuzione di una statistica. Nel trading vengono usati per esplorare incertezza di rendimento, drawdown, sequenza delle perdite, parametri e scenari.
Ogni simulazione è condizionata a un meccanismo generativo: distribuzione, dipendenza, stazionarietà, blocchi, parametri e costi. Non può riparare data leakage, survivorship bias, selezione tra migliaia di modelli o fill irrealistici. Non può neppure inventare in modo credibile un regime, una crisi o un vincolo operativo assente dall'input senza un modello esplicito che li introduca.
Metodi diversi, domande diverse
| Metodo | Che cosa genera | Proprietà conservate | Rischio principale |
|---|---|---|---|
| Permutazione dell'ordine | riordina una volta gli stessi risultati | insieme dei risultati e P&L totale prima del compounding | distrugge dipendenza e non stima nuovi esiti |
| Bootstrap iid | estrae osservazioni con rimpiazzo | distribuzione empirica marginale | tratta le unità come indipendenti e identicamente distribuite |
| Block bootstrap | ricampiona blocchi contigui | parte della dipendenza locale | risultato sensibile a blocco e condizioni di stazionarietà |
| Stationary bootstrap | usa blocchi di lunghezza casuale | dipendenza debole sotto assunzioni | parametro di lunghezza e cambi di regime |
| Monte Carlo parametrico | simula da una distribuzione o processo stimato | struttura specificata dal modello | model risk e code non rappresentate |
| Scenario simulation | impone shock o stati narrativamente coerenti | rischi scelti dal progettista | copertura incompleta e probabilità non identificata |
“Monte Carlo” non significa automaticamente che il modello sia parametrico; “bootstrap” non significa automaticamente che la dipendenza sia preservata. Una descrizione seria nomina algoritmo, unità ricampionata, dimensione dei blocchi, numero di repliche, seed, stima dei parametri e modalità di aggregazione.
Che cosa si sta ricampionando?
Il trade è spesso un'unità ambigua. Più trade possono dipendere dallo stesso segnale o episodio di mercato; posizioni sovrapposte condividono rendimenti; strategie cross-sectional producono molti trade nello stesso rebalance. Un bootstrap iid dei singoli trade li tratta come prove indipendenti e può sottostimare l'incertezza.
Possibili unità includono:
- rendimenti del portafoglio per periodo;
- vettori cross-sectional allo stesso timestamp;
- blocchi temporali di rendimenti e stati;
- episodi o campagne di trading definiti prima dell'esito;
- residui di un modello, lasciando separata la componente sistematica;
- parametri stimati e innovazioni simulate da un processo specificato.
La scelta deve preservare la dipendenza rilevante per la domanda. Per studiare drawdown di portafoglio, ricampionare separatamente ogni gamba può cancellare correlazioni proprio durante gli episodi critici.
Ordine, compounding e drawdown
Senza compounding e senza vincoli dipendenti dal percorso, riordinare gli stessi P&L non cambia la somma finale; cambia però la sequenza e quindi il max drawdown. Con sizing percentuale, margini, liquidazione, volatility targeting o limiti, l'ordine può cambiare anche il capitale finale e le posizioni future.
Per ogni percorso simulato si possono calcolare statistiche come:
- massimo drawdown e durata del recupero;
- rendimento cumulato o composto;
- probabilità condizionale di oltrepassare un limite definito;
- turnover e richieste di margine;
- distribuzione di Sharpe, expectancy o altri stimatori;
- sensibilità del criterio di sospensione.
Il quantile risultante non è una probabilità oggettiva di ciò che accadrà. È la probabilità nel modello simulato, dato l'input e le assunzioni.
Block bootstrap e dipendenza
Il bootstrap a blocchi estrae sequenze contigue per conservare parte di autocorrelazione, clustering di volatilità e co-movimento. La lunghezza del blocco crea un compromesso: blocchi troppo corti perdono dipendenza; blocchi troppo lunghi riducono il numero di unità effettivamente ricombinabili.
Lo stationary bootstrap di Politis e Romano usa lunghezze casuali, producendo una serie ricampionata stazionaria nel disegno teorico. Anche questo approccio richiede condizioni e una scelta di lunghezza attesa. Se il processo cambia regime in modo strutturale, trattare tutti i blocchi come scambiabili può essere fuorviante.
È utile confrontare più specifiche motivate, non cercare quella che genera l'intervallo più favorevole. La sensibilità al metodo è essa stessa un risultato.
Simulazione parametrica e scenari
Un modello parametrico può rappresentare dinamiche non ottenibili con semplice ricampionamento, ma introduce assunzioni ulteriori. Normalità, indipendenza, processo di volatilità, correlazioni e transizioni di regime devono essere dichiarati e diagnosticati. Stimare i parametri sullo stesso piccolo campione e poi simularli come certi sottostima l'incertezza di stima.
Gli scenari possono integrare shock non presenti o poco frequenti: gap, spread ampliati, correlazioni avverse, aumento del borrow, ritardi e richieste di margine. Non è necessario assegnare loro una probabilità precisa per usarli come test di vulnerabilità. È però scorretto mescolare scenari deterministici e quantili probabilistici come se avessero lo stesso significato.
Esempio illustrativo
Una strategia ha rendimenti giornalieri con clustering di volatilità. Il bootstrap iid produce un ventaglio stretto; un bootstrap a blocchi produce più sequenze di perdite concentrate e drawdown più dispersi. Non segue che il secondo sia automaticamente “vero”: il confronto rivela che la conclusione dipende dalla dipendenza temporale.
L'analista documenta entrambe le specifiche, motiva l'intervallo di lunghezze dei blocchi e aggiunge uno scenario separato con costi e spread maggiori. Non sceglie il numero più comodo né presenta il quantile come garanzia.
Protocollo riproducibile
- Definire la domanda e la statistica prima della simulazione.
- Identificare l'unità e la dipendenza che il metodo deve preservare.
- Dichiarare modello, parametri, blocchi, repliche e seed.
- Includere compounding, sizing, costi e vincoli quando cambiano il percorso.
- Propagare l'incertezza di stima quando materialmente rilevante.
- Confrontare specifiche motivate e mostrare la sensibilità.
- Separare quantili probabilistici da scenari senza probabilità assegnata.
- Conservare codice, input e output per la riproducibilità.
La simulazione è una lente sull'incertezza condizionale. È più utile quando rende visibile ciò che il singolo percorso storico nasconde e meno utile quando aggiunge migliaia di decimali a un modello debole.
Fonti
- Bradley Efron, Bootstrap Methods: Another Look at the Jackknife — articolo fondativo sul bootstrap e sulla stima mediante ricampionamento.
- Dimitris N. Politis e Joseph P. Romano, The Stationary Bootstrap — bootstrap a blocchi di lunghezza casuale per dati debolmente dipendenti e stazionari.
- Andrew W. Lo, The Statistics of Sharpe Ratios — effetto della dipendenza temporale sulla distribuzione e annualizzazione dello Sharpe.
- Joseph Simonian, CFA Institute Research Foundation, Investment Model Validation: A Guide for Practitioners — ruolo di Monte Carlo, bootstrap e stress testing nella validazione dei modelli d'investimento.