Semplice strategia di Trading sul DAX - Analisi completa
Ciao ragazzi e benvenuti, in questo video vi presento una strategia di tipo mean reverting sviluppata da noi di AS Trading e applicata all’indice DAX, che ha generato questa equity in un periodo di 5 anni, subito dopo la sigla la analizziamo insieme, per cui restate fino alla fine e non ve ne pentirete. Eccoci qua, come sempre, per prima cosa vi spiegherò nel dettaglio le logiche di funzionamento della strategia, quindi quali indicatori servono e le regole di apertura, gestione e chiusura degli ordini e anche come gestire il rischio. Fatto questo andremo più nel particolare vedendo i vari valori da assegnare alle variabili libere e per finire passeremo all’analisi dei risultati e alla valutazione delle performance e al termine vi darò un’indicazione del capitale minimo necessario da dedicare alla strategia e sulla base di questo calcoleremo il rendimento medio atteso. Vediamo quindi come funziona la strategia
e quali indicatori vengono utilizzati. La strategia è di tipo mean reverting, ovvero sfrutta la naturale tendenza di alcuni strumenti finanziari di tornare, dopo un ritracciamento, verso il loro valore medio. Inoltre, è una strategia che non apre posizioni direttamente a mercato, ma posiziona ordini pendenti e una volta aperti, questi ordini questi rimangono a mercato per un breve periodo, che può andare dalle poche ore fino a qualche giorno. Infine, può operare sia long che short, ovvero sia in acquisto che in vendita, e può essere presente un solo ordine alla volta. Per individuare i possibili prezzi di inversione del trend utilizziamo gli indicatori MIN e MAX impostati rispettivamente sui valori minimi e massimi delle candele orarie. Gli indicatori MIN e MAX lavorano in modo molto semplice, e restituiscono, il primo, il valore minimo dei minimi delle candele considerate, compresa quella su cui viene calcolato l’indicatore, mentre il secondo, il valore massimo dei massimi delle candele, compresa quella su cui viene calcolato l’indicatore. Abbiamo già visto nel dettaglio il funzionamento di questi due
indicatori in uno scorso video, per cui se avete ancora qualche dubbio, vi lascio qui in alto il link per andare a rivedervi la spiegazione. Una volta determinati i valori degli indicatori, si procede con l’individuazione dei setup di ingresso considerando il valore minimo e quello massimo della candela precedente all’attuale settata su timeframe a quindici minuti, ma facciamo un passo alla volta e vediamo, per cominciare, il setup solo per gli ordini di acquisto. Per mostrarvi le regole della strategia in modo chiaro e univoco, le ho riportate in pseudo codice in modo che non abbiate dubbi nell’implementazione. Vediamo quindi
nel dettaglio le regole per il posizionamento dell’ordine pendente di tipo BUY STOP. L’ordine pendente va posizionato, molto semplicemente, quando si verifica che il valore minimo della candela a 15 minuti precedente l’attuale, che è quindi indicata con l’uno tra parentesi, è inferiore al valore dell’indicatore MIN rilevato sulla candela oraria appena chiusa e calcolato su un certo numero di candele indicato con m. In sostanza questa condizione identifica un breakout del prezzo di un livello di supporto. La seconda condizione da rispettare, riferita
allo stop loss, ha la funzione di evitare il posizionamento di ordini che potrebbero portare a perdite troppo elevate, ovvero quando lo stop loss è troppo lontano dal prezzo di apertura, si posiziona infatti l’ordine solo se lo stop loss ha valore superiore al prezzo di apertura scalato per un certo coefficiente, nominato coefficiente 1, e compreso tra 0 e 1. Per quanto riguarda il prezzo a cui posizionare l’ordine, il take profit e lo stop loss, si procede in questo modo: per il prezzo di apertura si considera il valore dell’indicatore MIN, a cui si somma la differenza tra MAX e MIN, scalata per un coefficiente, chiamato coefficiente 2. In sostanza, si posiziona l’ordine tra il massimo ed il minimo del ritracciamento. Lo stop loss, si calcola a partire dal prezzo di apertura a cui si sottrae la distanza tra quest’ultimo e il valore MIN, anche questa volta moltiplicato per un coefficiente che, nel caso in cui venga fissato pari ad uno, comporta il posizionamento dello stop loss esattamente in corrispondenza dell’indicatore MIN. Ed infine, il take profit è calcolato come il prezzo di apertura più la distanza tra quest’ultimo e lo stop loss per un quarto coefficiente. Quest’ultimo coefficiente non rappresenta altro che il rapporto tra il potenziale profitto e la potenziale perdita che potrei ottenere dall’operazione. Chiaramente i 4 coefficienti introdotti, e il numero di candele da utilizzare per gli indicatori MIN e MAX, rappresentano le variabili libere della strategia.
Può succedere che la condizione si verifichi quando è già presente un ordine pendente BUY STOP, in questo caso l’ordine semplicemente va aggiornato con i nuovi valori relativi al prezzo di posizionamento, al take profit e allo stop loss. Per concludere, le operazioni possono essere chiuse solo al raggiungimento del take profit o dello stop loss, mentre l’ordine pendente va eliminato se avviene un nuovo breakout del minimo della candela, ma lo stop loss risulta ad un prezzo inferiore al limite stabilito precedentemente. L’ordine viene cancellato in quanto, sempre per una questione legata alla gestione del rischio, la perdita potenziale sarebbe molto elevata e quindi facciamo in modo di evitarla. Per quanto riguarda le operazioni di vendita, chiaramente le condizioni sono le stesse ma al contrario. Bene, ora che la strategia è chiara, passiamo più al particolare vedendo su quale strumento finanziario e timeframe utilizzarla e i valori da dare alle variabili libere per il calcolo degli indicatori e dei prezzi di riferimento degli ordini.
Ovviamente, le impostazioni che vi dirò, come sempre, sono state determinate tramite delle ottimizzazioni, ovvero sono state eseguite tutta una serie di simulazioni nel passato in cui abbiamo variato all’interno di un certo range tutti i parametri liberi della strategia e tutte queste prove ci hanno permesso di trovare il set che ci fornisce le performance migliori. Se volete capire meglio come sviluppiamo i nostri trading system e come li validiamo, vi invito a vedere il video di cui vi lascio il link qui in alto. Chiaramente tutti questi test non sono stati eseguiti a mano, ma come al solito abbiamo sviluppato un trading system utilizzando la Visual JForex e ne abbiamo fatto appunto l’ottimizzazione dei parametri liberi utilizzando la piattaforma di trading.
Vediamo quindi che valori hanno questi parametri: Anzitutto, lo strumento su cui operiamo è il CFD che ha come sottostante l’indice DAX, e che quindi ne replica l’andamento. Per chi non lo sapesse, il DAX è il principale indice azionario tedesco e contiene i 40 titoli tedeschi a maggiore capitalizzazione, tra cui Adidas, Bayer, BMW, Siemens, luftansa. Il time frame utilizzato per il calcolo degli indicatori MAX e MIN, come abbiamo visto, è quello orario, mentre per il minimo e massimo di candela si una il timeframe a 15 minuti. Operiamo solo LONG, ed il numero di candele da utilizzare per gli indicatori MAX e MIN sono 70 e 100. Per quanto riguarda i 4 coefficienti, questi hanno valori 0.03, 0.2, 1 e 0.4.
Ed infine, per concludere, anche se non si tratta di un parametro vincolante ai fini del funzionamento della strategia, la size delle operazioni è fissata pari ad 1 contratto, questo valore va ovviamente considerato per l’analisi delle performance della strategia. Per completare la spiegazione della strategia, facciamo un esempio pratico utilizzando i parametri che abbiamo appena visto. Anzitutto partiamo dal grafico con candele ad un’ora e aggiungiamo i due indicatore MAX e MIN, nel grafico si è appena aperta la candela delle ore 7, per cui prendiamo nota dei valori degli indicatori relativi alla candela delle ore 6, cioè quella precedente a quella attuale. Ora spostiamoci sul grafico a 15 min e tracciamo i valori degli indicati MAX e MIN rilevati prima. Bene, proseguiamo di 15 minuti
fino all’aperta della candela delle 7:15, e vediamo che la candela a 15 minuti delle ore 7 ha minimo inferiore all’indicatore MIN, per cui dobbiamo posizionare un ordine pendente BUY STOP. Noti i valori degli indicatori MAX e MIN e i vari coefficienti, con una calcolatrice è possibile calcolare il prezzo a cui posizionare l’ordine, dopo di che si calcola il prezzo a cui posizionare lo stop loss ed infine il take profit. Per concludere, si verifica che sia soddisfatta la condizione relativa al limite inferiore a cui può essere posizionato lo SL. Essendo questa condizione soddisfatta, è possibile procedere con il posizionamento dell’ordine. Come detto prima, se il prezzo continua a scendere e una delle prossime candele a quindici minuti ha valore minimo inferiore al MIN, bisogna aggiornare l’ordine pendente con i nuovi prezzi di apertura, stop loss e take profit, in questo modo l’ordine insegue il prezzo ed è allineato alle condizioni di mercato. Passiamo quindi finalmente all’analisi
dei risultati e vediamoli nel dettaglio. Nel grafico è riportata l’equity ottenuta eseguendo un backtest dal 13 novembre 2016 al 12 novembre 2021, quindi 5 anni completi. In particolare, l’area azzurra racchiude l’equity nel periodo di ottimizzazione del trading system, quindi nel periodo che viene detto in sample, che va dal 13 novembre 2016 al 12 novembre 2020, 4 anni, mentre l’area verde racchiude l’equity in un periodo successivo a quello dell’ottimizzazione e su cui il trading system non è mai stato testato, questo periodo viene chiamato out of sample e va dal 13 novembre 2020 al 12 novembre 2021, quindi 1 anno. La separazione tra in sample ed out of sample viene svolta per verificare la robustezza della strategia e per controllare che i buoni risultati ottenuti nel periodo di ottimizzazione, l’in sample, non siano frutto di over-fitting. Nel grafico è poi rappresentato l’andamento
dell’indice DAX con la linea grigia, in basso è riportato il drawdown ed in alto, in posizione centrale, i profitti ottenuti nei 5 anni di test. L’equity mostra un andamento piuttosto lineare, soprattutto se confrontata con l’andamento dell’indice. Si notano 3 cadute, qui indicate in viola, e quella che ha generato il drawdown maggiore è quella relativa alla lunga discesa dell’indice della seconda metà del 2018. Questa serie di trade in perdita ha portato anche al periodo di underwater più lungo che è durato per 314 giorni. Nelle altre fasi di perdita,
sebbene il drawdown non si allontani molto dal valore massimo, il periodo di recupero è nettamente inferiore. Inoltre le cadute dell’equity hanno un’ampiezza molto inferiore rispetto a quelle relative all’indice, come si vede ad esempio a marzo 2020, quando l’indice ha perso oltre il 40% del suo valore in meno di un mese, mentre la strategia ha reagito piuttosto bene filtrando l’elevata volatilità del DAX. La strategia, quindi, anche se opera solo in acquisto, produce buoni profitti sia nelle fasi di trend ascendente, indicate qui di colore verde e che coprono la maggior parte del grafico, sia in quelle di trend discendente, indicate in rosso. Infine, anche nelle fasi laterali di mercato la strategia
ha performato bene generando dei profitti. Un’altra cosa evidente è che la parte di equity relativa al periodo out of sample presenta la stessa pendenza e andamento simile a quello del periodo in sample. Tutto questo indica che il trading system non ha cali di performance nel periodo in cui non è stato soggetto a ottimizzazione e quindi i risultati ottenuti durante la fase di ottimizzazione non sono sovraottimizzati. Questo dimostra che si tratta di una strategia robusta e performante per tutto il periodo di analisi. Per finire, dall’istrogramma relativo ai profitti annuali, vediamo che tutti gli anni sono positivi. Per quanto riguarda il 2016, i profitti sono positivi ma quasi nulli,
infatti l’equity è rimasta praticamente piatta, ma il backtest ha considerato solo 1 mese e mezzo, per cui è difficile poter fare un confronto con gli altri anni. Mentre per quanto riguarda il 2018, come abbiamo visto la seconda metà dell’anno è stata costantemente in discesa, ma anche nella prima, a parte il periodo da Aprile a fine Maggio, l’indice ha continuato a scendere, per cui sebbene il profitto totale sia inferiore a quello degli altri anni, il risultato è stato comunque positivo. Per finire, anche se c’è ben poco da aggiungere, tutti gli altri anni hanno dato ottimi profitti con poca differenza tra di loro, a dimostrazione della robustezza e affidabilità della strategia. Passiamo ora, come sempre, ad analizzare le metriche, cioè quei numeri oggettivi che ci permettono di continuare con la valutazione delle performance. Nella tabella vediamo le metriche principali, sia per il periodo in sample, quindi quattro anni di ottimizzazione, sia per il periodo totale di in sample più out of sample, corrispondente a 5 anni. Vediamo anzitutto che la strategia,
che ricordo abbiamo testato con operazioni da 1 contratto, ha generato un profitto totale lordo, quindi senza considerare le commissioni, di 2195 euro nel periodo in sample e di 2884 euro nel periodo in sample e out of sample, il che corrisponde a circa 580 euro annui. Il profit factor è pari a 1,77 nel periodo in sample e 1,84 nei 5 anni complessivi, valore buono e che mostra come la strategia anche nel periodo out of sample abbia avuto performance in linea con il periodo in sample. Per quanto riguarda il numero di trade sono state eseguite 207 operazioni nel periodo in sample, quindi 52 l'anno, che è sicuramente un numero sufficiente per poter fare delle analisi statistiche, questo numero è poi stato confermato anche nel periodo out of sample. La percentuale di trade vincenti in entrambi i periodi considerati è dell’80%, valore molto alto che indica che su 100 operazioni, 80 vengono chiuse per take profit. Questo valore è anche dovuto al fatto che il take profit è più vicino dello stop loss al prezzo di apertura dell’operazione, infatti, se ricordate, il valore del coefficiente4 è pari a 0.4, significa che per guadagnare 4 euro ne
rischio 10. Ad ogni modo sono valori abbastanza tipici per strategie di tipo mean-reverting. Questi valori sono anche confermati dal numero di trade consecutivi in profitto e in perdita, si vede infatti che i trade consecutivi in profitto sono 24, numero molto maggiore rispetto a quelli in perdita che sono 4. D’altro canto però, la perdita media è più del doppio della vincita media. Relativamente al drawdown, il massimo drawdown si è verificato nel periodo in sample, verso la fine del 2018, è stato di poco meno di 400 euro. Chiudiamo con il rapporto tra il profitto e il drawdown che è di 5.52 nel periodo
in sample e di 7.25 nel periodo totale di in sample e out of sample. I valori sono buoni, soprattutto se si considerano le oscillazioni fatte dall’indice dal 2017 al 2020. Ora che abbiamo verificato le performance e le abbiamo giudicate più che soddisfacenti, dobbiamo verificare che i profitti lordi generati dalla strategia siano sufficienti a coprire i costi. Costi che sono legati alle commissioni di apertura e chiusura delle operazioni e ai costi over-night necessari per mantenere le operazioni aperte più di un giorno, cioè lo swap. Le commissioni dipendono da broker a broker, noi in questo caso faremo il calcolo del profitto netto considerando le commissioni applicate dal nostro, voi potrete fare lo stesso andando a vedere quali sono le commissioni del vostro broker e facendo gli stessi calcoli per capire quindi quale sarà il vostro profitto netto. Il profitto totale netto lo calcoliamo come il profitto totale lordo meno il totale del costo delle commissioni, meno il costo dello SWAP. Il totale del costo delle commissioni è dato dal numero di posizioni aperte, quindi 259,
per la commissione applicata dal broker per due, perché dobbiamo aprire e chiudere la posizione, mentre lo swap è dato dal costo over-night per le operazioni buy, moltiplicato per il numero di volte in cui si passa da un giorno a quello successivo con un’operazione a mercato, qui indicato con numero over-night, e che è pari a 43. Ora vedrete il profitto netto calcolato considerando i costi applicati dal mio broker, cioè Dukascopy, voi potete fare esattamente lo stesso utilizzando i costi applicati dal vostro. Considerando quindi tutti i costi, il profitto totale netto che ottengo e di 2463 euro, questo significa che la strategia è in grado di generare un profitto tale da coprirmi abbondantemente tutti i costi. In questa analisi, come sempre, ho trascurato lo slippage, questo perché è difficilmente prevedibile in quanto è legato a molteplici fattori, inoltre a volte può darmi una perdita, altre un profitto, per cui per questa analisi l'ho trascurato e considerato nullo.
Ora che abbiamo valutato la strategia, dobbiamo determinare il capitale necessario al trading system per poter lavorare. L’obiettivo è quindi assegnare sufficiente capitale alla strategia da permetterle di operare anche a seguito di perdite, che dobbiamo ipotizzare superiori a quelle ottenute in fase di test. Se infatti siamo sottocapitalizzati, rischiamo di non poter recuperare le perdite perché non abbiamo più capitale a sufficienza da mettere a margine per aprire nuove operazioni. Come si vede dal grafico, minore è il capitale che assegniamo alla strategia, maggiore sarà il potenziale rendimento che ne possiamo ottenere, infatti, il rendimento è dato dal rapporto tra il profitto netto ottenuto dalla strategia in un certo periodo di tempo ed il capitale investito, ovvero il capitale che dedico alla strategia per operare. La scelta del capitale è molto soggettiva, ognuno può assegnare alla strategia il capitale che preferisce, sapendo che minore è il capitale e maggiore saranno i potenziali rendimenti, ma in caso di perdite ho maggiore probabilità di ricevere la margin call da parte del broker che mi informa che il controvalore presente sul conto non è più sufficiente a coprire le perdite ed il margine vincolato dalle operazioni aperte. Noi per il calcolo del capitale utilizziamo una formula molto semplice che definisce il capitale necessario alla singola strategia come 4 volte il drawdown massimo riscontrato nella simulazione storica, più la perdita media per il numero di perdite consecutive registrate durante il periodo di test, a cui si aggiunge infine il margine richiesto dal broker per l’apertura delle operazioni, in funzione ovviamente della size delle operazioni e della leva utilizzata.
Questa strategia può aprire un solo ordine alla volta, per cui facendo il calcolo risulta che in caso di leva 1:50 il capitale risulta di 2185 euro, che mi porta ad un potenziale rendimento annuo medio del 22.5%, mentre con leva 1:30 il capitale è di 2400 euro con un rendimento annuo medio del 20.5%, per cui un rendimento piuttosto buono, considerando che l’indice, nello stesso periodo, ha avuto un rendimento medio annuo del 10%. La differenza che ottengo utilizzando una leva piuttosto che un’altra è semplicemente dovuta al fatto che il margine richiesto dal broker a copertura dell’operazione è tanto maggiore quanto minore è la leva utilizzata. Il capitale calcolato si riferisce come è stato detto ad operazioni da 1 contratto. Chiaramente se decido di operare con più contratti, o con decimi di contratto, è sufficiente scalare il capitale, così come i profitti, proporzionalmente alla dimensione dell’operazione. Bene, con questo siamo arrivati alla fine.
Spero che questo video vi sia piaciuto e che abbiate trovato le informazioni utili. Se è così vi chiedo come sempre di mettere un bel like qui sotto. Ovviamente questa strategia ha dato ottimi risultati anche con altri strumenti finanziari, e di questo ne parleremo nei prossimi video insieme anche ad altre strategie, per cui se non volete perderveli iscrivetevi al canale e cliccate sulla campanellina qui sotto. Infine, se avete domande, osservazioni, proposte o argomenti che volete approfondire fatecelo sapere nei commenti qui sotto e vedremo di rispondervi e di fare dei video dedicati. Con questo vi ringrazio e ci vediamo al prossimo video, ciao!
2021-11-21 00:45