Nell’analisi dell’andamento di un portafoglio di strategie, una delle maggiori complessità da affrontare è legata al calcolo del drawdown. Questo articolo è un pò più tecnico del solito, e alcuni passaggi potrebbero non risultare subito così immediati, ma serve a mostrare come certe metriche, quando calcolate su un portafoglio e non più sulla singola strategia, debbano essere ripensate (e a comprendere più a fondo le differenze che ci sono fra queste diverse valorizzazioni del drawdown di portafoglio).
max drawdown trading strategy,
La complessità del calcolo del Draw Down di Portafoglio ha una radice comune: i differenti time frame e sottostanti su cui i trade di ogni strategia, da aggregare nel portafoglio, sono stati generati.
Se tutte le strategie fossero applicate allo stesso dataset (per esempio Mini S&P500 Future a 60m), sarebbe possibile assumere le stesse ipotesi che rendono possibile un calcolo preciso e realistico del drawdown come avviene nel caso del backtest di una strategia singola.
Se la serie storica su cui opera ogni singola strategia è la stessa, allora è ovvio dare per garantita la simultaneità dei massimi e dei minimi interni ad ogni barra.
In caso di sottostanti diversi, anche a parità di time frame (ad es. 60 min), questo purtroppo non è più possibile farlo. Il minimo interno a una barra di uno strumento potrebbe essere stato eseguito nel momento in cui l’altro strumento, nella stessa barra, toccava il massimo, oppure mentre era anch’esso al minimo o in una qualsiasi altra zona del range.
E questo ha 2 implicazioni non di poco conto:
1) Se si vuole eseguire un calcolo del drawdown che non sia figlio di assunzioni forti e non verificabili, l’unico prezzo utilizzabile per valorizzare l’open P/L di ogni trade è quello di chiusura di ogni barra, in quanto l’orario in cui quel dato è stato registrato è un’informazione nota. Questo ci permette di valorizzare correttamente l’open P/L di portafoglio in quel preciso orario di chiusura di barra. Il risultato sarà però una misura tendenzialmente non conservativa, in quanto non viene tenuto conto dei massimi e dei minimi verificatisi da una chiusura di barra all’altra, che, nella realtà, avrebbero potuto amplificare (o ridurre) il draw down.
2) Per avere una misura più conservativa del rischio diventa necessario fare alcune ipotesi sulla collocazione temporale dei massimi e dei minimi interni ad ogni barra (ma si tratta, appunto, di ipotesi).
Per queste ragioni, esistono diverse maniere per calcolare il Draw Down di Portafoglio senza appiattire l’analisi sulla semplice valorizzazione a fine giornata degli open P/L delle singole strategie (che non terrebbe conto di ciò che è successo durante quella giornata). In Portfolio Builder effettuiamo 5 diverse valorizzazioni del draw down del portafoglio (il cui risultato spesso converge su valori simili, ma in situazioni un pò particolari, alcune di queste modalità di calcolo possono metterci davvero in guardia su cosa dovremmo aspettarci):
1) Max DD (Deterministic)
2) Max DD (Peak to Valley)
3) Max DD (IntraDay MAE – Maximum Adverse Excursion)
4) Max DD (Close To Close)
5) Max DD (Daily)
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
Ora vediamo come questi valori vengono calcolati, e perché possono portare a differenti valorizzazioni del Drawdown di Portafoglio.
1. Max DD (Det)
Il Max DD Detailed è calcolando aggregando i trade del portafoglio utilizzando la loro evoluzione interna valorizzata sui prezzi di chiusura delle barre. Se un trade, per esempio, ha avuto una vita di 15 barre, qui consideriamo i 15 valori di Open Profit calcolati sui 15 prezzi di chiusura delle barre.
Generalmente i trade su sottostanti diversi non saranno stati eseguiti su barre dello stesso time frame. E anche se il time frame fosse lo stesso le barre potrebbero non essere sincronizzate.
Di seguito spieghiamo il modello di aggregazione di trade temporalmente sovrapposti che abbiamo utilizzato su Portfolio Builder.
Si assuma di dover aggregare due trade su due sottostanti differenti, il primo con time frame a 20 minuti, il secondo con timeframe a 30 minuti. Si assuma inoltre che le sessioni di entrambi gli strumenti comincino con l’ora tonda.
Max drawdown trading
come si calcola il drawdown?
Ecco perché è importante calcolare il max drawdown nei portafogli di trading system
Questo è un esempio dell’evoluzione dei due trade, calcolata alle chiusure di barra e rappresentati in un grafico:
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
Come si poteva intuire dalla tabella dei valori, e come si vede dal grafico successivo, solo alcune delle quotazioni sono temporalmente allineate. Nell’aggregare questi due trade, la prima cosa di cui bisogna rendersi conto è che andrà creata una stima del valore del portafoglio per ognuno degli orari disponibili: sia in quelli in cui quotano entrambi i trade, ma anche in quelli in cui solo uno dei due trade presenta una valorizzazione dell’open profit.
In poche parole, sebbene non accada per le singole strategie, il portafoglio dovrà avere una valorizzazione che tenga conto dei singoli orari disponibili per i due trade.
drawdown
Per mettere in risalto questo fatto nella seguente tabella si vede sulla sinistra l’unione degli orari disponibili con le relative quote dove presenti. Nel grafico abbiamo messo in risalto la collocazione temporale delle quote. Sia nella tabella che nel grafico le quote temporalmente allineate sono mostrate in nero.
Ora, per poter completare l’aggregazione è necessario porre un valore, nella tabella, al posto dei trattini visualizzati dove manca la quotazione.
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
La scelta da noi adottata è stata quella di utilizzare l’ultima quota disponibile. Una volta collocato un valore da utilizzare dove non originariamente presente, eseguire l’aggregazione di portafoglio diventa un semplice esercizio di somme orizzontali. Segue una tabella con il risultato, e i relativi grafici: uno con, e uno senza il portafoglio risultante.
max drawdown trading strategy,
Max Drawdown Detailed
cosa è il massimo drawdown Detailed?
Il caso preso in esame è un caso piuttosto particolare, infatti i due trade risultavano avere un periodo sincrono di 2 a 3. Un caso più generale potrebbe presentare centinaia di trade aperti contemporaneamente, con nemmeno una valorizzazione contemporanea. Un caso molto particolare sarebbe quello di trade eseguiti su strumenti con identica sessione e identico timeframe.
Questo metodo di aggregazione permette di estrarre il portafoglio somma da un’insieme qualsiasi di trade senza che l’utente sia vincolato all’utilizzo di particolari timeframe o sessioni.
Si noti come sia presente una valorizzazione del portafoglio per ogni barra in cui ognuno dei trade è stato quotato.
Una volta estratta l’equity line di portafoglio così generata (Da noi chiamata Detailed per distinzione dall’Equity Line Daily che presenta una sola quotazione a fine giornata, tenendo conto degli open P/L), ne viene calcolato il Maximum Draw Down, che sarà quindi il Max DD Detailed.
La principale criticità di questo metodo di aggregazione è che vengono ignorati i massimi e i minimi interni alla singola barra. Tralasciare queste informazioni potrebbe (non sempre – e vedremo nel prossimo paragrafo perché) generare una sottostima del Max DD effettivo che, seguendo quel portafoglio, si sarebbe verificato in passato.
Questo ci ha indotto a costruire stime più conservative del Max DD storico. Ora, nella prossima sezione, vedremo come abbiamo introdotto nel calcolo del portafoglio i massimi e i minimi intrabarra.
2. Max DD (Peak to Valley)
Prima di vedere con quale modalità abbiamo introdotto i massimi e i minimi intrabarra nel calcolo del drawdown vale la pena fare una premessa.
Nel caso di una strategia singola, l’introduzione di massimi e minimi non può che alzare il maximum draw down. Lo stesso non vale nel caso di una simulazione di portafoglio a causa della presenza di più trade aperti contemporaneamente su strumenti diversi.
L’introduzione di un massimo interno a un trade, infatti, potrebbe compensare la perdita di un altro trade che andava a registrare il Max DD nello stesso momento. Introdurre l’informazione su quel massimo, dunque, ha, di fatto, ridotto il drawdown di portafoglio.
E’ evidente che si tratterà di un numero minoritario di casi, ma non c’è da stupirsi se, in qualche occasione, capitasse di leggere un Drawdown Peak to Valley inferiore al Drawdown Detailed.
Introdurre i massimi e i minimi intrabarra è un’operazione che, per poter essere eseguita con successo, richiede un’informazione non disponibile. Tale informazione, in quanto non disponibile, andrà sostituita con delle ipotesi.
L’informazione mancante è quella relativa al collocamento temporale dei massimi e dei minimi: noi non sappiamo quando, e neppure in che ordine, essi si sono verificati.
Prendiamo il trade della Strategia 1 dell’esempio precedente, e aggiungiamo l’informazione sulla valorizzazione del trade ai minimi e ai massimo delle barre barre che ne compongono l’evoluzione.
max drawdown trading strategy,
calcolare il drawdown
Ora vediamone una rappresentazione grafica utilizzando un grafico a candele. Attenzione, qui non è rappresentato l’andamento di uno strumento finanziario (che è ciò a cui di solito associamo un grafico a candele): qui è rappresentato l’andamento di un trade (quindi il suo open P/L).
max drawdown trading strategy,
Come si vede dalla tabella, ai massimi e ai minimi è associato l’orario di chiusura di barra. Questo rende necessario fare delle ipotesi sulla loro collocazione nel tempo, altrimenti questa informazione non risulterebbe utilizzabile ai fini di un’aggregazione tra più trade.
In poche parole dobbiamo trasformare una barra composta da massimo, minimo e chiusura associati a uno stesso orario, in una serie di punti successivi associati a orari diversi.
Le assunzioni da noi utilizzate sono le stesse effettuate da piattaforme come Multicharts e TradeStation (in assenza di queste informazioni), e sono le seguenti
Max trading drawdowns Peak to Valley
Cosa si intende per trading drawdowns Peak to Valley?
Ecco perché è importante calcolare il max drawdown nei portafogli di trading system
1) Se la chiusura di questa barra è superiore alla chiusura della barra precedente (barra verde), il minimo ha preceduto il massimo. Se la chiusura di questa barra è inferiore alla chiusura della barra precedente (barra rossa) il massimo ha preceduto il minimo. In poche parole consideriamo il percorso più efficiente:
max drawdown trading strategy,
2) La spaziatura temporale è suddivisa in 3/3. In questo modo il massimo e il minimo si pongono a 1/3 e a 2/3 della vita temporale del trade, sulla base dell’ordine stabilito dall’assunzione 1.
Utilizzando queste due ipotesi è possibile ricreare la storia del trade in modo che comprenda anche massimi e minimi. Vediamo il risultato che si ottiene applicando questa metodologia al trade dell’esempio e confrontiamolo con il trade valorizzato alle sole chiusure.Nella tabella i dati sono incasellati a triplette. Ogni tripletta contiene i dati relativi a una barra, il colore della tripletta mostra la natura ascendente o discendente della barra.
Nel grafico le linee verticali rappresentano le chiusure di barra, ancora una volta il colore della barra codifica la direzione della stessa.
max drawdown trading strategy,
Come si vede il risultato è un discreto arricchimento dell’informazione disponibile. Chiaramente questo arricchimento non è gratis, e il suo costo è quello di aver dovuto fare assunzioni per poter introdurlo, assunzioni che, soprattutto nel caso di trade della durata di poche barre, potrebbero generare una serie storica non aderente alla realtà.
Il vantaggio risiede nel fatto che, in questa nuova serie, compaiono sia il MAE che l’MFE, due dati importanti per il calcolo del Max DD.
Quando l’evoluzione interna di ogni trade è stata arricchita dei massimi e minimi con la procedura appena mostrata, essi vengono aggregati in modo analogo a come mostrato alla sezione 1. Max DD (Det). Terminata l’aggregazione viene calcolato il Max DD del portafoglio risultante, il Max DD (Peak to Valley).
3. Max Daily DD
Il Max Daily DD non è mostrato nel pannello Metrics di Portfolio Builder, ma direttamente nel grafico in basso nel pannello Equity.
L’equity line mostrata in questo pannello è ricavata attraverso un processo di aggregazione differente rispetto a quello illustrato alla sezione 1. Max DD (Det).
In questo caso viene prima ricavata un’equity daily per ognuna delle strategie, ovvero una valorizzazione alla mezzanotte di ogni giorno del periodo della simulazione. Avendo già rettificato i risultati di ogni strategia caricata in portafoglio per tenere conto dei diversi fusi orari (oltre che delle doverose valute), ci ritroviamo già con serie composte da valorizzazioni a orari identici e la loro aggregazione si ottiene ora con una semplice somma.
max drawdown trading strategy,
Max daily drawdowns
Cosa si intende per daily drawdowns nel trading?
Ecco quali indicazioni ci vengono fornite dal daily drawdowns
La risultante è il portafoglio mostrato al pannello Equity. Il DD nel grafico inferiore è quindi una valorizzazione daily del DD. Il valore del Max Daily DD è mostrato direttamente sul grafico all’altezza della linea rossa orizzontale.
4. Max DD (IntraDay MAE)
Il Max DD IntraDay MAE (Maximum Adverse Excursion) è elaborato ipotizzando che, in un dato giorno, i trade aperti dalle diverse strategie raggiungano il punto peggiore (MAE) contemporaneamente.
All’inizio di giornata il portafoglio parte da una situazione di drawdown ereditata dallo storico di portafoglio valorizzato fino a quel punto. La domanda che ci si pone è la seguente: quanto è il rischio assumendo che tutti i trade aperti oggi perdano denaro contemporaneamente?
Per eseguire la stima di questo rischio vengono sommati i MAE di tutti i trade che aprono e chiudono posizioni in giornata. Se una strategia apre e chiude più di un trade nell’arco della giornata, essendo che è impossibile che questi siano aperti contemporaneamente, si prende solo quello con il MAE più negativo.
Per i trade che invece si estendono overnight viene considerata l’escursione peggiore possibile all’interno della giornata di riferimento. Tutti questi valori vengono poi sommati al drawdown daily registrato al giorno precedente.
Questa è probabilmente la modalità più conservativa di calcolo del Drawdown di Portafoglio, ma non necessariamente la più precisa e veritiera (dato che le posizioni aperte in ogni giornata potrebbero non registrare tutte il peggior open loss nello stesso momento).
5. Max DD CtC
Il Max DD Close to Close è il massimo drawdown risultante dall’equity line prodota a operazioni chiuse. I trade del portafoglio vengono riordinati per data di chiusura, e seguendo quest’ordine ne vengono progressivamente cumulati i net profit.
Si nota che in questo caso le dinamiche dovute alla contemporaneità dei trade vengono completamente perdute. Per questo motivo, sebbene impossibile nel caso di una strategia singola, il Max DD CtC di portafoglio potrebbe risultare maggiore del Max DD (Peak to Valley) in quanto, nella valorizzazione barra per barra le dinamiche interne dei trade potrebbero generare compensazioni tra profitti e perdite e mitigare il massimo draw down. Perdendo queste sinergie, il massimo drawdown close to close potrebbe risultare maggiore.
Per dare un’idea di ciò che potrebbe accadere, si immagini un trade della durata di un mese che chiude con un largo profitto. Si ponga poi che, prima della chiusra di questo trade, siano stati aperti e chiusi da un’altra strategia 5 trade della durata di un’ora, tutti negativi.
Ponendo i trade in ordine di data di chiusura, l’equity line CtC vedrebbe cinque segmenti calanti più uno crescente sul finale.
Un’aggregazione puntuale barra per barra, invece, seguirebbe un’andamento crescente della durata di un mese, con 5 sezioni in cui alla crescita del trade mensile si contrappone il calo dei trade orari.
Se il calo dei trade orari è compensato dalla crescita del trade mensile, l’equity line peak to valley potrebbe non mostrare drawdown, ma solo periodi in cui è piatta. Mentre l’equity CtC mostrerà un drawdown in prossimità delle 5 operazioni chiuse negative, prima della contabilizzazione dell’operazione mensile.
Nel grafico che segue è mostrata una situazione idealizzata a scopo esplicativo: la linea blu mostra l’andamento regolare crescente della strategia in cui è aperto il trade mensile.
Durante questo lungo trade vengono aperrte 5 operazioni negative da un’altra strategia, mostrata in arancione. Si vede come il portafoglio risultante non è mai in drawdown:
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
La seguente invece è l’equity line CtC, come si vede realizza un drawdown in quanto il contributo positivo del trade mensile viene registrato tutto in una volta alla sua chiusura. La perdita dell’informazione sulle sinergie interne ai trade contemporanei fa si che l’equity generi un drawdown.
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
Questo approfondimento sulle diverse modalità di calcolo del Draw Down di Portafoglio, andava nella direzione di sensibilizzare il lettore circa il cambio di prospettiva necessario quando si passa dall’analisi di una singola strategia all’analisi di un portafoglio di strategie. Una semplice valorizzazione degli open P/L a fine giornata (come potremmo effettuare rapidamente su Excel o MatLab o Python) restituirebbe una valorizzazione del Draw Down di portafoglio un pò troppo semplificata e ottimistica, facendoci perdere di vista le interazioni, durante la giornata borsistica, fra più strategie che si trovano in posizione negli stessi momenti.
Un portafoglio non è una semplice aggregazione di equity line daily di singole strategie: i ragionamenti dietro queste diverse modalità di calcolo del drawdown di portafoglio, dovrebbero far intuire quanto possa essere complesso realizzare piattaforme di analisi di portafogli come Portfolio Builder. Abbiamo cercato di presentare le principali funzionalità di questa piattaforma di costruzione e analisi di portafogli di strategie su Futures, Azioni, Forex e Opzioni nei video contenuti in questa pagina
Spesso si pensa che “la parte difficile” di questo lavoro sia codificare ed effettuare un backtest di una strategia e trovare qualcosa che ha funzionato negli ultimi dieci anni: questo è, tutto sommato, abbastanza facile! …meno facile è individuarne le fragilità e misurarne la robustezza, per scartare subito ciò che ha poche probabilità di continuare a performare così anche in futuro.
Nel corso TRADING AUTOMATICO parliamo proprio di questo, ed in particolare delle tecniche per Validare una strategia e per misurarne la Robustezza, lavorando su una dozzina di Trading System che mettiamo a disposizione, a codice aperto, ormai da diversi anni. Questo è il programma dettagliato del corso TRADING AUTOMATICO.
E quando avrai sviluppato dozzine di trading system, inizierai a interrogarti sulla maniera migliore di costruire un Portafoglio e capirai che queste scelte di selezione e bilanciamento delle strategie è ciò che fa davvero la differenza… ne riparliamo nel corso PORTAFOGLI DI TRADING SYSTEM (le registrazioni delle ultime edizioni di ogni corso e della Live Session, sono SUBITO accessibili, in attesa di poter seguire IN SALA oppure COLLEGATO a DISTANZA la prossima edizione in partenza – clicca qui per maggiori dettagli su come facciamo formazione in QTLab)
Questi due corsi fanno parte del percorso Trading System Academy ( clicca qui per esaminare il programma di ognuno dei corsi che lo compongono)
E’ possibile seguire ciascuna di queste giornate in maniera indipendente dalle altre, in aula oppure collegato a distanza da casa propria, ed in entrambi i casi è disponibile la registrazione integrale del corso. La rifrequenza è sempre gratuita. E sono 50 Trading System quelli che oggi che vengono messi a disposizione in questo percorso, e tutti a codice aperto, così da poter esaminare, riga per riga, cosa fanno, come sono stati codificati, e poterli modificare a propria discrezione.
Ma soprattutto, parliamo di strategie sviluppate diversi anni fa, che hanno ormai superato la prova del tempo…
max drawdown trading strategy,
strategie di trading: backtest trading strategy,
Clicca qui per esaminare uno degli ultimi Articoli dove abbiamo dato conto di come sta andando questo Portafoglio di Trading System che ti mettiamo a disposizione nel percorso TRADING SYSTEM ACADEMY (considerando SOLO la porzione di equity successiva alla loro presentazione in una delle edizioni di questi corsi, e includendo già i costi di transazione) – leggi l’ultimo articolo sul Portafoglio dell’Academy
max drawdown trading strategy, strategie di trading: backtest trading strategy,
E cliccando qui puoi scoprire più da vicino come è strutturato il percorso Trading System Academy… inizia subito, partendo dalle registrazioni delle precedenti edizioni, dalle Live Session e dalle Coaching Class, dal materiale didattico e dai Trading Systems (a codice aperto): è tutto disponibile immediatamente, e puoi iniziate a lavorarci sopra in attesa di poter seguire una delle prossime edizioni dei corsi che compongono il percorso Academy.
ax drawdown trading strategy,
strategie di trading: backtest trading strategy,
…noi lavoriamo così:
Buon trading!
Ecco altri articoli che potrebbero interessarti:
QTLab dice
Se hai qualche domanda, postala qui di seguito, oppure scrivici una e-mail a [email protected]
Puoi anche prenotare una chiamata con qualcuno di noi, cliccando qui e scegliendo giorno e ora: https://calendly.com/qtlab/60-min?month=2023-05
Qui invece trovi tante Risorse Gratuite dove puoi approfondire meglio qualcuno degli argomenti di questo articolo: https://www.qtlab.it/p/corsi-gratis