Miglioriamo insieme il mondo del risparmio gestito
Questo Blog ha lo scopo di alimentare un dibattito che ci auguriamo posso accrescere anche la nostra e la vostra cultura finanziaria, per colmare il gap che ci differenzia dal mondo anglosassone e per poi far prevalere la nostra creatività e genialità tipiche del popolo Italiano
- Dimensione carattere: Maggiore Minore
- Visite: 22684
- 42 Commenti - Inserisci il tuo
Come creare una simulazione Montecarlo in Excel
Pochi sanno che le basi delle simulazioni Montecarlo sono attribuite a Enrico Fermi e Jon Von Neumann, quest’ultimo è il creatore del primo computer e anche mentore di Harry Markowitz all’inizio della sua carriera di pratictioners (erano gli anni '40).
Il nome Montecarlo è stato dato all’approccio in onore del famoso casinò monegasco, in quanto questi modelli simulano dati casuali con varie metodologie.
Queste simulazioni sono utili per comprendere le caratteristiche delle serie storiche finanziarie e delle probabilità ad esse collegate che spesso sono difficili da comprendere senza computazione dei dati.
Per esempio, se acquisto un fondo che ha una media storica di rendimento annuo del 5% e una volatilità del 7%, che probabilità ho di avere un rendimento positivo l’anno successivo? e dopo tre anni? e dopo cinque anni?
Queste risposte si possono dare con calcoli matematici di probabilità, ma anche e forse più semplicemente con delle simulazioni Montecarlo che simulano serie storiche che abbiano una media ed una varianza stabilite.
Per rispondere all’esempio precedente creeremo insieme un semplice foglio excel che vi permetta di elaborare delle serie storiche casuali e quindi che vi permettano di generare le simulazioni e di conseguenza i risultati.
Per chi fosse interessato solo ai risultati e alle mie considerazioni, invito a leggere la parte finale e saltare il testo in corsivo qui sotto.
Quindi aprite un bel foglio vergine di Excel e cominciamo con la creazione di un bel simulatore Montecarlo.
Innanzitutto bisogna decidere se utilizzare serie storiche annuali, mensili, settimanali ovvero giornaliere.
Supponiamo di creare delle serie storiche settimanali, quindi andiamo sulla cella A10 ed inseriamo la data 31/12/2006 e sulla cella A11 scriviamo +A10+7 per avere la data della settimana successiva e trasciniamo poi fino alla cella 532 (fine 2016)
Sulla cella B10 scriviamo +casuale.tra(0;10000)/10000 e poi trasciniamo per tutte e 520 le righe corrispondenti ad una data della colonna A.
Questa semplice operazione permette ogni volta che si scrive qualcosa sul foglio di avere un nuovo numero che rappresenta una probabilità da 0 a 100% di ottenere un rendimento lungo la normale dei rendimenti che andremo a creare ora.
Sulla cella A2 scrivete: “Media annuale:” e sulla cella B2 scrivete per esempio 5% (la potrete modificare come volete in seguito); la cella modificabile potete colorarla come sfondo di azzurro, indice che è un valore personalizzabile
Sulla cella A3 scrivete: “Deviazione Standard annuale:” e sulla cella B3 scrivete per esempio 7% (anche questo valore su sfondo azzurro).
Sulla cella A4 scrivete: “Media su base settimanale:” e la seguente formula: +((100+B2*100)/100)^(1/52)-1 (dovrebbe venire se avete messo 5% il numero 0,00093871).
Sulla cella A5 scrivete “volatilità su base settimanale:” e inserite la seguente formula +B3/radq(52) anche in questo caso potete verificare il numero in caso di 7% in 0,00970725.
A questo punto siamo pronti a generare i rendimenti casuali in base alla normale dei rendimenti utilizzando la formula di Excel INV.NORM.(
Nella cella C10 inserire la seguente stringa: =INV.NORM.(B10;B$4;B$5) che praticamente prende la probabilità calcolata in B10 lungo la distribuzione normale e ne estrae un rendimento che può essere positivo ( se probabilità sopra 50%) o negativo (se probabilità sotto 50%).
Trascinando la stessa funzione per tutta la colonna si ottengono i rendimenti della vostra serie storica simulata con metodologia Montecarlo.
Nella colonna D a questo punto è facile realizzare una serie storica che partendo da 100 grazie ai rendimenti della colonna C crea un andamento nel tempo casuale.
Praticamente nella cella D9 inserire 100 e nella cella D10 scrivere +D9+D9*C10.
A questo punto con una semplice macro è possibile copiare la colonna D centinaia di volte ed incollarla su un nuovo foglio in modo da generare il numero di esempi desiderati.
VANTAGGI E SVANTAGGI DELLA SIMULAZIONE MONTECARLO
Questa metodologia di simulazione ha alcuni pregi notevoli:
1) è facile da implementare
2) permette di simulare andamenti storici casuali
3) permette di comprendere meglio i possibili risultati in base alle caratteristiche base di uno strumento finanziario
4) toglie l’effetto cosiddetto “ad hoc” quando si fanno dei back test
Per contro le simulazioni montecarlo non tengono conto di alcuni effetti che in realtà nei mercati finanziari esistono e ne determinano le caratteristiche strutturali.
Parlo del fenomeno di auto-correlazione di una serie storica finanziaria, ovvero quel fenomeno che se la serie storica cresce tende a crescere e se sta calando continua a calare.
Questo fenomeno deriva dall’emotività dei mercati finanziari, tutto cresce e allora sono euforici e quindi continuano a crescere creano bolle; ovvero i mercati perdono valore e tutti sono preoccupati che possa continuare e vendono alimentando il calo dei mercati.
Altro grosso problema non stimato dalle simulazioni montecarlo, almeno quelle basate sulla normale dei rendimenti come abbiamo simulato noi, è che la volatilità cambia nel tempo e tende a crescere soprattutto quando i mercati vanno male, quindi se la volatilità cresce, aumenta la variabilità dei rendimenti e di conseguenza i potenziali drawdown.
CONCLUSIONI
Quindi se volete capire bene o male cosa aspettarvi dal vostro investimento o portafoglio diversificato di fondi, la simulazione Montecarlo più essere utile a comprendere i vari scenari, ma se volete testare delle strategie di timing, le serie storiche risultanti non sono indicative proprio per i problemi evidenziati sopra.
Per completare l'esempio iniziale, un investimento come il fondo Target Strategy, di cui parlerò nei prossimi post, che ha un Expected Return del 5% annuo in cinque anni ed una volatilità di poco inferiore al 7%, ha probabilità di ottenere rendimenti positivi crescenti con il passare del tempo secondo questa tabella derivante dalla simulazione Montecarlo:
Questo è il motivo per cui abbiamo chiaramente indicato che per avere un rendimento medio annuo del 5% sia necessario aspettare cinque anni, in quanto può succedere, anzi è probabile che i rendimenti non siano sempre quelli attesi nel breve periodo.
Se qualcuno vuole il file excel creato sopra nella spiegazione, può trovarlo cliccando qui: Simulazione-Montecarlo-per-Bitcoin.xlsx
Buon week end e buon lavoro a tutti.
DB
Commenti
-
Sabato, 29 Ottobre 2016
Davvero interessante. Chiedo anch'io cortesemente il file. Indirizzo: info@studiotirabassi.it
Sebbene convenga anch'io circa i problemi originati dal variare della volatilità nel tempo e dalla vischiosità dei trend, ritengo che la simulazione Montecarlo possa essere uno strumento utile per prospettare agli investitori i rischi impliciti nelle scelte. -
Lunedì, 23 Gennaio 2017
Gentile Cesare, non ho seguito questa logica (che è una forma di Bootstrapping) ma una logica casuale pura, dove il rendimento è estratto in base a media e varianza e la funzione casuale di excel.
Delle tecniche di bootstrapping ne parlerò in futuro perché anch'esse hanno pregi e difetti.
Continui a seguirci
DB -
Lunedì, 30 Gennaio 2017
Articolo molto interessante. Quindi titoli che hanno lo stesso rendimento e la stessa volatilità dovrebbero avere un comportamento simile?
In base alle sue indicazioni sono riuscito a creare il file excel, ma non la macro per generare la moltitudine di simulazioni. Le sarei grato se potesse inviarmi il file excel + la macro ad esso legata (credo).
Grazie infinite
La mia e-mail: andstef@tiscalinet.it
Grazie.
Sigfrido -
Domenica, 18 Giugno 2017
Buongiorno,
ho visto che il file che, gentilmente, mi ha inoltrato presenta più pagine rispetto a quelle descritte nel suo impeccabile post. Posso chiederle con quale matrice è possibile recplicare la colonna D centinaia di volte? E' possibile, nel caso, avere istruzioni dettagliate su come ha fatto a creare anche i folgi excel risultati e risultati2?
Grazie, saluto -
Domenica, 16 Luglio 2017
Da studente universitario di statistica trovo questi articoli veramente molto interessanti e molto stimolanti, complimenti.
Le sarei davvero grato se potesse inviarmi il file excel.
La mia mail è: marcomanneschi1234@gmail.com
La ringrazio ancora della disponibilità.
Cordiali Saluti
Marco Manneschi
- Pagina :
- Precedente
- 1
- 2
- 3
- Prossimo
la leggo sempre con piacere, sarei interessato al file, gianlucamartella@gmail.com
Grazie Gianluca