Costruire un trading system profittevole: i trucchi da seguire ma soprattutto gli errori da evitare Daniele Bernardi DIAMAN Sicav Milano, 10/03/2011
Giusto per iniziare 2
La matematica non è un opinione, sono i numeri ad essere opinabili 3
Perché modelli QUANTITATIVI? Nel 1997 si è svolta la sfida tra Gary Kasparov e Deep Blue, un computer sviluppato da IBM Nemmeno il campione del mondo ha potuto vincere contro una macchina in grado di elaborare 200 milioni di mosse in un secondo. Oggi un server quattro volte più potente di Deep Blue costa 1.800 $ 4
Livelli di automazione Lavoro manuale Processi automatici Processo con dispositivi con input di un completamente automatici operatore automatizzato Investimenti Standard Timing, Ranking e sistemi di pricing High frequency trading
Analogia con Areoplani Quants Programmers Traders
Componenti principali del processo Research Strategy Backtest Implement Monitor
Casinò, la statistica vince sempre Siete convinti di poter sbancare il casinò? Esistono modelli statistici in grado di vincere alla Roulette? 8
Sapreste creare un trading system? Questa è la sequenza di una sera ottenuta da una roulette: 26 32 8 6 25 31 3 36 22 10 21 7 2 32 30 23 33 28 26 20 13 28 5 27 25 26 5 28 13 15 1 19 17 14 6 33 6 14 31 29 29 28 33 34 23 33 24 27 36 4 30 26 26 6 13 29 35 14 25 28 22 4 20 19 21 25 11 5 17 18 26 0 36 10 9 15 11 21 27 25 10 25 22 10 8 2 15 16 33 18 19 13 33 34 0 33 19 8 28 25 21 10 31 6 12 20 26 10 27 1 4 24 23 31 2 16 32 33 13 13 16 29 35 34 33 9 23 28 27 17 21 23 12 17 33 34 18 32 24 27 24 34 11 15 35 2 6 21 19 28 20 9 36 23 20 17 20 30 36 17 32 31 18 3 4 5 26 3 0 8 25 31 7 4 15 18 8 29 8 7 19 22 25 28 11 11 14 5 8 23 21 3 16 15 9 6 7 13 3 26 27 23 29 1 24 17 32 22 26 35 36 2 2 35 19 32 36 18 16 33 35 16 15 11 20 14 31 20 24 0 21 26 11 17 22 7 25 12 12 12 34 30 16 16 28 18 0 18 35 29 25 33 1 15 34 3 13 14 24 6 21 30 6 34 0 26 28 13 32 20 9 17 36 0 26 4 7 5 14 31 5 36 8 23 18 25 13 28 25 3 15 23 26 30 31 12 14 20 24 0 9
Quale replicabilità dei risultati? Credete davvero che tale TS sia profittevole anche in questa sequenza? 10 11 35 18 5 17 18 11 3 1 19 36 22 11 25 31 18 15 14 19 7 21 25 14 36 0 4 11 21 11 13 2 15 11 8 14 25 4 14 16 11 32 24 27 6 24 35 21 36 25 28 18 36 0 34 3 7 19 36 13 24 17 3 21 11 14 13 24 9 29 1 0 21 20 25 30 23 34 31 15 35 23 3 25 24 33 27 15 31 20 15 22 31 6 25 18 0 16 20 17 4 16 0 1 9 31 35 7 19 21 2 33 8 17 35 28 2 9 3 10 6 33 23 1 19 11 24 25 20 20 26 31 22 0 9 3 24 36 3 14 17 35 6 30 16 8 16 5 0 26 4 9 1 13 26 8 23 6 19 13 33 32 0 26 33 15 30 19 0 36 22 34 29 13 23 20 8 28 10 10 7 21 10 25 17 5 20 24 11 25 9 3 36 19 8 15 25 15 9 1 36 12 24 3 30 29 24 30 19 0 3 0 10 14 13 5 15 7 1 31 25 19 31 16 4 35 2 11 23 30 19 33 33 2 34 25 2 13 4 6 0 9 16 17 25 32 29 30 22 0 7 19 23 35 18 28 13 4 15 3 29 25 35 20 13 13 17 26 18 4 15 10 30 28 5 25 24 23 30 12 5 16 2 36 7 7 13 22 15 23 15 16 26 31 28 17 4 29 11 14 10
I limiti del Back Testing L utilizzo dei Back Test nella finanza moderna assume sempre più importanza, ma bisogna stare attenti Ai processi di calcolo Alla aderenza con la realtà operativa All over-fitting dei parametri Alla lettura dei risultati Alle commissioni esistenti A non barare 11
I pregi del Back Testing Per contro il Back Test permette di avere tutta una serie di vantaggi: Posso analizzare il passato in multi-dimensione Posso accrescere l esperienza Posso testare regole e metodologie Posso sperimentare nuove strategie Posso creare fiducia su quanto studiato - Posso quantificare e confrontare diversi approcci quantitativi 12
I criteri di ottimizzazione Indipendentemente dalle regole di trading utilizzate, fondamentali sono alcuni aspetti del back test da tenere in considerazione: Lunghezza della finestra temporale di analisi in the sample period Lunghezza della finestra temporale di verifica out of the sample period Numero di serie storiche su cui eseguire l ottimizzazione in the sample Numero di serie storiche su cui verificare l ottimizzazione out of the sample
I parametri di ottimizzazione L ottimizzazione di un system trading multi-parametri presenta diverse problematiche da affrontare e risolvere, facciamo l esempio di un semplice modello di trend following con due medie MA1 e MA2: MA1: 1 3 5 7 9 11 13 15 (step 2) MA2: 10 20 30 80 90 100 (step 10) Ci sono 70 combinazioni, ipotizzando 1 secondo per elaborazione in poco più di un minuto ho il risultato, volendo effettuare una ricerca precisa (step 1 su entrambe le medie) comunque con 1500 secondi (pari a 25 minuti) avrei il risultato
I parametri di ottimizzazione Diverso è il caso in cui oltre alle medie mobili volessi introdurre anche due bande di oscillazione legate alla volatilità: MA1: 1 to 15 (step 1) = 15 steps MA2: 5 to 100 (step 2) = 49 steps VB1: 0 to 500 (step 10) = 51 steps VB2: 0 to 500 (step 10) = 51 steps Con questo esempio si verificano 1.911.735 soluzioni possibli, che ad 1 secondo ognuna sono pari a 531 ore di lavoro (oltre 22 giorni). E questo per un unica serie storica ed un unico periodo di osservazione
I parametri di ottimizzazione Gli approcci per risolvere il problema sono diversi e presentano vantaggi e problematiche diverse: 1. Allargare le maglie degli steps, per poi concentrarsi sulle aree migliori 2. Per approssimazioni successive, partendo dai parametri medi 3. Ponderando la sensibilità dei parametri 4. Utilizzare le reti neurali 5. Utilizzare algoritmi genetici
I problema dell Overfitting Cos è l Overfitting? Tecnicamente Overfitting o Overoptimizing significa trovare dei parametri che ben si adattano ai prezzi analizzati ma non hanno nessuna abilità di previsione (Robert Pardo, 1992) Quali sono le cause? 1) Troppe regole e condizioni che limitano i gradi di libertà 2) Periodo di osservazione troppo piccolo 3) Ottimizzazione personalizzata per singole serie storiche 4) Analisi incompleta dei risultati di ottimizzazione 5) Metodi di ottimizzazione non corretti 6) Mancanza di verifica post-ottimizzazione
Trading Costs I costi di transazione nei Back Test non sono facili da calcolare; Non basta aggiungere i costi di negoziazione del Broker, ma bisogna considerare l impatto sul Book di Negoziazione degli ordini che si immettono; Solitamente, per comodità e semplicità, nei Back Test vengono considerati prezzi costanti (es.: l ultimo prezzo del giorno) che è l ultimo incontro tra denaro/lettera, ma se si fosse introdotto un altro ordine, magari consistente, i prezzi sarebbero cambiati; Se siete investitori privati non è un gran problema, ma se gestite un fondo o una gestione patrimoniale, il problema potrebbe essere molto rilevante.
Slippage Un altro problema in qualsiasi Back Test è lo Slippage; Lo Slippage è il ritardo tra il momento in cui un trading system prende una decisione e il momento in cui si effettua il reale trading nel mercato; Lo stesso problema si ha anche se si effettano operazioni in Fondi o Sicav, poiché si effettuano acquisti e vendite senza conoscere il prezzo del NAV che verrà calcolato a mercati chiusi; L esperienza insegna che lo Slippage nelle transazioni di Sicav ha un basso impatto nella performance di lungo termine, poiché l impatto alcune volte è positivo ed altre negativo; Viceversa per i titoli azionari, lo Splippage può avere un grande impatto sui risultati, specialmente se le decisioni di investimento sono prese a fine giornata e le operazioni avvengono all apertura del giorno successivo.
Sorgenti di vantaggio competitivo Algoritmi Matematici; Originalità dei modelli di gestione; Pulizia e archiviazione dei Dati; Velocità di esecuzione degli ordini (Low latency); Minimizzazione dei costi di transazione; Ricerca e sviluppo; Frequenza di utilizzo del modello; Strategia di gestione del portafoglio; Sviluppo continuo; Monitoraggio continuo dei risultati;
Fonti di informazione 21
I comparti DIAMAN Sicav Alto rendimento FST TF M MATHEMATICS TREND Follower FGS Systematic Trading AI Artificial Intelligence Basso rendimento ZDB QB QUANT Bond ZENIT Dynamic Bond Basso rischio Alto rischio 2
Grazie per la vostra attenzione Q&A 23