crossover della media mobile semplice con backtrader

Crossover della Media Mobile Semplice con Backtrader

In questo articolo descriviamo come applicare il crossover delle media mobile semplice con backtrader per creare e verificare strategie di trading algoritmico.

Abbiamo effettuato una serie di 349 test su 4 mercati per un periodo di 12 anni per determinare le performance a lungo termine di una semplice strategia basta sul crossover delle medie mobile. In generale, i parametri con le migliori prestazioni in tutti i mercati prevedono periodi di ricerca più lunghi per la media mobile più lenta. Al contrario, i parametri migliori per la SMA più veloce erano circa 4 volte più brevi. Infine, la strategia crossover è stata ampiamente redditizia anche con combinazioni di parametri non ottimali. L’unica eccezione si è verificata per GBPUSD. Continua a leggere per l’analisi completa.

Introduzione

Le medie mobili sono probabilmente uno degli indicatori più conosciuti. Sia semplici che informative, costituiscono la base di molte strategie di trend following. Inoltre, quando il prezzo si avvicina a un livello chiave della media mobile, spesso attira l’attenzione di molti trader. Sebbene di natura semplice, le medie mobili sono disponibili in un paio di varianti. Con questo in mente, questo articolo si concentra sulla media mobile semplice quando applicata in una strategia crossover.

Questo articolo fa parte della serie che confronta gli indicatori presenti nella libreria integrata di Backtrader. L’introduzione della serie, alcune note sulla metodologia dei test e la tabella riepilogativa dei risultati è disponibile in questo articolo.

Nota: i risultati mostrati in questo articolo non riflettono le prestazioni del mondo reale. Come accennato nell’introduzione e nell’articolo riepilogativo, i test non includo le commissioni, le leva e il margine. Lo scopo di questi test è confrontare gli indicatori l’uno con l’altro dove tutti gli altri fattori sono uguali. Per ulteriori informazioni su come sono eseguite tutte le analisi degli indicatori, fare riferimento all’articolo riepilogativo. 

La logica della media mobile semplice

Le medie mobili semplici (SMA) sono uno degli indicatori tecnici più facili da capire. Se ricordiamo i concetti matematici per calcolare una semplice media aritmetica, allora  si può facilmente capire la SMA. In poche parole, per ogni singola barra calcoliamo il prezzo di chiusura medio per un numero fisso di barre nel passato (noto come periodo di riferimento). La parte mobile entra in gioco perché limitiamo il numero di barre nel calcolo includendo le nuove barre che si formano con il passare del tempo. Quando una nuova candela è formata, scartiamo la candela alla fine del periodo ed inseriamo la candela appena chiusa all’interno del periodo di riferimento. In questo modo “muoviamo” la media con il prezzo.

Strategia di  test

Per analizzare una strategia di crossover della media mobile semplice usiamo due medie mobili semplici, una delle quali ha un periodo di riferimento più lungo rispetto all’altra. Un periodo di ricerca più lungo significa che ogni nuovo valore (candela) non ha molto effetto sul valore delle media. In questo modo il valore SMA sembra muoversi più lentamente all’aumentare del periodo di ricerca. Di conseguenza, usiamo questa differenza di velocità per generare i segnali di crossover della strategia (quando il valore di una SMA incrocia verso l’alto o verso il basso  il valore dell’altra SMA).

Usare i segnali di crossover della media mobile semplice permette di creare una strategia di test è molto  facile:

  • Entriamo Short quando la SMA più veloce incrocia la SMA più lenta
  • Entriamo Long quando la SMA più veloce incrocia la SMA più lenta
  • Chiudiamo una posizione short quando la SMA più veloce incrocia la SMA più lenta
  • Chiudiamo una posizione long quando la SMA più veloce attraversa la SMA più lenta

Oltre ai criteri di ingresso, vale la pena ricordare che la strategia mira a essere sempre a mercato. Pertanto, quando chiudiamo una posizione lunga o corta, apriamo immediatamente una posizione. nel verso opposto.

Ottimizzazione

L’ottimizzazione è stata eseguita per i seguenti intervalli:

SMA VeloceSMA Lenta
5, 6, 7, 814
5, 6, 7, 8, 9, 10, 11, 12, 13, 1421
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 1930
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 30, 35, 40, 4550
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 30, 35, 40, 45, 50, 60, 70, 80, 90100
20, 25, 30, 35, 40, 45, 50, 60, 70, 80, 100, 120, 140, 160, 180200
50, 60, 70, 80, 100, 120, 140, 160, 180, 200300

Inizialmente, abbiamo ottimizzato entrambe le SMA in modo indipendente, ciascuna con un’ampia gamma di valori. Tuttavia, abbiamo subito notato che alcuni test non effettuano mai un trade. Poiché Backtrader esegue il looping di ogni singola combinazione di valori, alcuni test di ottimizzazione hanno valori uguali per entrambe le SMA. Inoltre la metà dei test con parametri indipendenti hanno invertito la logica della strategia perché, per determinati valori, quella prima era la SMA veloce diventerebbe la SMA lenta e viceversa causando l’inversione dei criteri di entrata/uscita. Questo corrisponde a una serie di risultati dove lo zero distorce le medie e le configurazioni peggiori sono semplicemente l’opposto di quelle migliori. Per questi motivi durante i test abbiamo deciso di mantenere forzatamente il periodo di una SMA maggiore dell’altro. In questo modo il numero di test si riduce.

Risultati del crossover della media mobile semplice

Complessivamente abbiamo effettuato 349 test in tutti e quattro i mercati con i valori dei periodi sopra elencati. I drawdown variavano dall’1,75% al 4,6% con un drawdown medio in tutti i test pari all’1,96%. I strike rate, invece, sono più ampi (18% – 64%). Da notare che, al 2,2%, il test con uno strike rate di appena il 18% non ha mostrato il maggior drawdown perché sono stati effettuati molti meno  trade durante il periodo SMA del test. Questo può capire con alcuni dei periodi di  lookback più lunghi.

Di seguito riportiamo un riepilogo, una galleria di grafici e una serie di tabelle statistiche per ciascun metodo di test. Le tabelle forniscono una panoramica dei migliori valori dei parametri per ciascun mercato insieme ai periodi migliori/peggiori in tutti i mercati.

Il miglior e peggior test

MercatoPnL12 Year Return (%)Total TradesTotal WonTotal LostStrike RateBiggest WinnerBiggest LoserAvg WinnerAvg LoserMax Drawdown (%)2005 (% gain/loss)2006 (% gain/loss)2007 (% gain/loss)2008 (% gain/loss)2009 (% gain/loss)2010 (% gain/loss)2011 (% gain/loss)2012 (% gain/loss)2013 (% gain/loss)2014 (% gain/loss)2015 (% gain/loss)2016 (% gain/loss)
NZDUSD 70, 100360.943.6142231954.76148.97-47.2327.61-14.431.750.340.89-0.141.231.4-0.12-0.61-0.470.120.130.720.2
NZDUSD 12, 21-442.56-4.432086913933.1755.37-34.8912.95-9.614.6-0.60.53-0.66-0.27-0.52-0.45-0.870.2-0.63-0.37-0.15-0.73
Media5.240.0595.3733.7861.5936.8390.6-39.3124.3-13.031.96-0.230.140.020.560.280.01-0.34-0.05-0.120.140.03-0.25

Vediamo come i migliori valori dei parametri nel mercato più favorevole (NZDUSD) sono abbastanza simili ai migliori parametri complessivi medi tra tutti i mercati.

Curve PnL, Rendimenti a 12 anni e Stike Rate

La galleria di immagini seguenti mostra 3 diversi grafici:

  1. I rendimenti annuali per 12 anni dei migliori e peggiori test
  2. Il PnL quando si altera la SMA veloce contro la SMA lenta
  3. I tassi di strike migliori, peggiori e medi in tutti i test.

Quasi sorprendentemente, osservando le curve PnL per i periodi di SMA veloci rispetto alla SMA 200 quasi tutti i valori dei parametri (tranne  per GBPUSD) hanno prestazioni positive (non perdiamo denaro). Detto questo, le prestazioni generali diminuiscono con all’aumentare del periodo per la SMA veloce. Questo è prevedibile perché con 2 SMA con periodi lunghi si hanno pochissime informazioni relative al mercato nel breve termine. Di conseguenza, possiamo pensare che alcuni dei risultati redditizi dove entrambe le SMA hanno periodi lunghi (ad esempio  i test con periodi di 160 e 200) potrebbero essere stati  solo fortunati.

Una copia completa dei risultati del test in formato CSV è disponibile al seguente link:  Risultati backtest SMA in CSV

I migliori  parametri per ogni mercato

MercatoSMA 1 (Veloce)SMA 2 (Lenta)PnL
AUDUSD1630313.61
GBPUSD1750122.2
EURUSD80100249.62
NZDUSD70100360.94

Da notare che i migliori  parametri assoluti per l’AUDUSD sono 16 e 30. Questo è in contrasto con il trend generale. Inoltre, la riduzione della SMA veloce di soli 2 periodi (da 16 a 14) ha ridotto il profitto di quasi la metà, che suggerisce che quei parametri corrisponde a un punto isolato per quel particolare mercato piuttosto che ad un buon settaggio generale.

Anche la coppia GBP/USD è andata un po’ meglio con periodi più rapidi (come 17/50). Tuttavia, queste sono più vicine alla popolare combinazione 20/50. Un altro aspetto degno di nota è che il PnL effettivo raggiunto non è stato elevato rispetto ad altri indicatori.

Prestazioni dei parametri predefiniti

Di solito questa sezione descrive le prestazioni dei parametri standard. Tuttavia, poiché la strategia  di crossover della media mobile semplice richiede due indicatori e segnali di crossover, i parametri standard sarebbero gli stessi per ogni SMA! Pertanto, abbiamo deciso di usare SMA con periodi di 50 e 200 per rappresentare i parametri “standard” poiché questa è una delle combinazioni più comuni per le strategie di trend-following.

MercatoPnLStrike Rate
AUDUSD258.2646.67
EURUSD183.4147.37
GBPUSD3647.06
NZDUSD71.4538.89

I migliori/peggiori parametri in media per tutti i mercati

Questa tabella mostra le prestazioni dei migliori e peggiori parametri considerando la media delle prestazioni su tutti i mercati sottoposti a test.

PnLParam 1Param 2
Best177.54540200
Worst-171.871121

Come possiamo vedere, periodi più lunghi per la media mobile più lenta (200) tendono a fornire risultati più coerenti se abbinati a una SMA veloce con periodo minore di 40. Questo non è lontano dalla popolare impostazione 50/200 (che di per sé ha funzionato bene). I parametri peggiori hanno una SMA lenta con periodo di 21. Questo periodo è in realtà abbastanza veloce e suggerisce che le SMA potrebbero essere stati inclini al whipsawing. (mercati in cui le medie mobili si incrociano frequentemente).

Riferimento:  confronto dei migliori indicatori Forex

Codice completo

In questo articolo abbiamo descritto come applicare il crossover delle media mobile semplice con backtrader per creare e verificare strategie di trading algoritmico.

Per il codice completo riportato in questo articolo, si può consultare il seguente repository di github:
https://github.com/datatrading-info/BackTrader

Torna in alto
Scroll to Top