Classificazione sistemi e strategie di trading

Sistemi e strategie di trading si possono classificare in due famiglie distinte, con comportamenti molti diversi tra loro, ecco le differenze.

Trading a eventi

I sistemi più comuni di trading si basano a eventi, un esempio sono l’incrocio tra medie mobili. La caratteristica principale è ci aprono posizioni quando si verifica un evento e si esce dalla posizione quando si verificano le condizioni id uscita, ossia l’evento di uscita. In genere l’importo che si investe nella strategia è fisso per ciascun trade, o al più pesato rispetto al rischio. La bontà del sistema è legato a principalmente da due fattori, la probabilità di guadagno di ciascun trade e la frequenza degli eventi. Un sistema di trading che con elevata probabilità di guadagno a singolo trade e una frequenza molto bassa, sarà meno performante di un sistema di trading con minor probabilità di guadagno a trade, ma un numero di trade significativamente più elevato. Per aumentare la probabilità di un evento si aumenta il numero di asset su cui applicare la strategia.

Ciò che si verifica in genere è che gli asset su cui viene applicata una strategia sono tra loro correlati, se non direttamente, quantomeno da elementi macro economici e geopolitici. Questo fa si che gli eventi, sia di entrata che di uscita da un trade, sono concentrati in periodi temporali ristretti, mentre in altri periodi non si verificano eventi.

Tornando all’esempio di incrocio tra medie mobili, considerando come asset le azioni italiane, possiamo aspettarci una maggior concentrazione di incroci positivi quando le borse iniziano una ripresa, rispetto ai momenti di depressione del mercato.

L’impatto di tutto questo sulla strategia, applicata alla realtà di un trader con risorse limitate, è che il trader passera parte del tempo fuori dal mercato, in attesa che si verifichino eventi, per poi perdere degli eventi per mancanza di risorse disponibili. (Può sicuramente ricorrere alla marginazione, con costi aggiuntivi).

Qui di seguito due simulazioni delle medesima strategia, basata su pattern di candele, l’importo investito per ciascun trade è di 10.000€, la prima strategia utilizza una disponibilità di risorse pari a 350.000€, questo garantisce di avere la copertura per gestire tutti gli eventi che si verificano. I guadagni vengono sempre utilizzati come risorse disponibili per futuri trade. Gli asset utilizzati sono quelli del mercato italiano e l’orizzonte temporale è di 10 anni. Il numero di trade (apertura-chiusura di posizioni a mercato) è stato di 926

Strategia eventi con capitale 350.000€

Key Performance Metrics

Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return161.05%183.92%
CAGR%9.12%9.96%
Sharpe1.050.55
Sortino1.510.76
Sortino/√21.070.54
Principali indicatori

La seconda simulazione utilizza risorse limitate, da 350.000€ della prima simulazione si scende a 50.000€. Questo fa sì che spesso mancheranno risorse per sfruttare la strategia e la conferma arriva dal numero di trade che scende a 326

Strategia a eventi con risorse limitate 50.000€

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return259.79%183.92%
CAGR%12.35%9.96%
Sharpe0.760.55
Sortino1.10.76
Sortino/√20.780.54
Principali indicatori

La strategia risulta più volatile, avendo si potrebbe calcolare l’aumento delle volatilità, è come con il lancio del dado, se il dado viene lanciato poche volte il numero di volte in cui compare un numero piuttosto che un altro ha una variabilità maggiore. Il rendimento cumulativo è in genere maggiore perché, a parità di risorse, è minore il tempo in cui le risorse non vengono impiegate.

Strategia a classifica

La seconda famiglia di strategie è basata sulla classificazione degli asset e la scelta in ciascun momento dei migliori asset su cui investire, in numero limitato. Potenzialmente questa è una strategia si in cui si riamane nel mercato il 100% del tempo. L’importo in questo caso non è più un importo fisso, bensì una quota delle risorse disponibili. Ad esempio mantenendo 4 posizioni aperte e mantenendo il 5% delle risorse per gestire lo slippage, avremo che ogni posizione viene aperta con 23,75% delle risorse disponibili ( [100-5]/4). Un grosso vantaggio è la possibilità di reinvestire sempre i guadagni, ma la complessità di impostare una classifica che renda omogenei gli indicatori di asset non è semplice. In generale bisogna passare da funzioni logaritmiche normalizzazione di dati, che aumentano la complessità computazionale i tempi di calcolo. Riporto qui i risultati di una strategia basata su classifiche e regressione lineare, con risorse disponili 50.000€

Strategia a classifica con risorse 50.000€

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market96.0%96.0%
Cumulative Return2,158.70%203.13%
CAGR%32.78%10.61%
Sharpe1.40.59
Sortino2.080.81
Sortino/√21.470.57
Principali indicatori

Il risalutato è impressionante un PNL pari a 1.079.351€ a fronte di un investimento di 50.000€ in 10 anni con 926 trade. I dati mostrati hanno solo l’obiettivo di mostrare il diverso comportamento delle strategie e vanno fatte due precisazioni prima di alimentare false illusioni:

  • I parametri di esecuzione sono stati ottimizzati con diverse simulazioni, la strategia è risultata molto sensibile a piccoli scostamenti sui parametri. Il risultato è decisamente in overfit!!
  • Nella realtà questi numeri non si sarebbero mai raggiunti perché l’importi investiti a trade diventano troppo elevati
  • La simulazione da novembre a oggi ha segnato un dignitoso(?) -40%

A differenza delle strategia a eventi, la strategia a classifica può sviluppare un andamento di tipo esponenziale. Inoltre l’andamento della strategia, e la sua volatilità, non dipendono dalle risorse disponibili. Riducendo o aumentando le risorse avremo lo stesso comportamento (con un leggero sfrido per commisioni, tobin tax e slippage).

Un’ultima nota importante è legata alla scelta degli asset da far competere nella classifica. Se gli asset danno tutti scarsi risultati per gli indicatori scelti, il risultato sarà deludente. Un po’ come andare al mercato e scegliere le migliori fragole tra quelle ammuffite. Questo effetto si presenta meno sulle strategie a eventi, perché semplicemente l’evento non si verifica.

Conclusioni

Le due famiglie di strategie hanno comportamenti diversi e ben evidenziati nei due grafici. La scelta scelta della strategia da costruire dipende dalla natura degli indicatori che si vogliono utilizzare. Ciascuna ha dei vantaggi e svantaggi.

CaratteristicaStrategia a ClassificaStrategia a Eventi
Necessita di indicatori confrontabiliIndifferente
Necessita di eventiNo
Permanenza nel mercatoCostanteVariabile
Q.tà di risorse necessarieBassoElevato
ReinvestimentoParziale
Tipo di crescitaEsponenzialeLineare
Tabella comparativa

Asset usati nelle simulazioni

["FTSEMIB.MI", "A2A.MI", "AMP.MI", "ATL.MI", "BAMI.MI", "BGN.MI", "BMED.MI" "BPE.MI", "BZU.MI", "CNHI.MI", "CPR.MI", "DIA.MI", "ENEL.MI", "ENI.MI", "EXO.MI", "FBK.MI", "STLA.MI", "G.MI", "HER.MI", "IG.MI", "INW.MI", "IP.MI", "ISP.MI", "LDO.MI", "MB.MI", "MONC.MI", "NEXI.MI", "PIRC.MI", "PRY.MI", "PST.MI", "RACE.MI", "REC.MI", "SPM.MI", "SRG.MI", "STM.MI", "TEN.MI", "TIT.MI", "TRN.MI", "UCG.MI", "UNI.MI", "ABT.MI", "AEF.MI", "ADB.MI", "ALK.MI", "AMP.MI", "ECNL.MI", "ASC.MI", "AVIO.MI", "BEC.MI", "BFE.MI", "IF.MI", "BST.MI", "BSS.MI", "CAI.MI", "CRL.MI", "CELL.MI", "CMB.MI", "CEM.MI", "DIS.MI", "DAL.MI", "DEA.MI", "DIB.MI", "ELN.MI", "ELC.MI", "EM.MI", "EQUI.MI", "PRT.MI", "ETH.MI", "FM.MI", "FILA.MI", "GE.MI", "IGD.MI", "ILTY.MI", "IP.MI", "IRC.MI", "ITM.MI", "IVS.MI", "LD.MI", "LR.MI", "MARR.MI", "MN.MI", "MTV.MI", "MOL.MI", "NWL.MI", "OJM.MI", "ORS.MI", "PHN.MI", "PVN.MI", "PSF.MI", "PRI.MI", "REY.MI", "SAB.MI", "SG.MI", "SGR.MI", "SL.MI", "SRI.MI", "SES.MI", "SO.MI", "TIP.MI", "TES.MI", "TNXT.MI", "TXT.MI", "UNIR.MI", "WIIT.MI", "ZV.MI"]
Nota a margine: tutte le posizioni vengono aperte long

Studio sugli stoploss

In giro si trovano diversi tesi sulla gestione degli stoploss, chi li vuole stretti, chi li vuole larghi, chi li vuole dinamici, chi non li vuole. Ho fatto alcune prove per farmi un’idea concreta dell’effetto degli stop loss sulle diverse strategia. Prima una nota importante, ogni strategia può essere affinata con l’uso corretto degli stoploss, lo stoploss è parte integrante della strategia. Fatta questa premessa iniziale ecco come ho deciso di procedere. Utilizzo una strategia basata su candlestick, che ha un rendimento nella media senza stoploss, di seguito i dettagli della strategia e del suo comportamento. Il perimetro sono le azioni del FTSE odierne, su periodo di 10 anni. Lo studio viene fatto con le seguenti tipologie di stoploss:

  • Senza stop loss
  • Stop loss % rispetto alla chiusura precedente, applicato al prezzo minimo
  • Stop loss % rispetto alla chiusura precedente, applicato al prezzo di chiusura
  • Stop loss calcolato su ATR, applicato al prezzo minimo
  • Trailing stop applicato al minimo

I parametri di stop loss vengono ottimizzati, ossia viene fatta una simulazione con diversi valori di stop loss e vengono scelti i parametri in cui la strategia offre i migliori risultati.

Il benchmark è la strategia BuyAndHold sui medesimi titoli e vengono applicate le seguenti condizioni di contorno:

  • Importo a trade: 10.000
  • Cash: 200.000
  • Tobin Tax 0,1%
  • Commissioni: 6,75 a eseguito
  • Nessuna marginazione,
  • Nessuna possibilità di investire allo scoperto
  • Solo posizioni log

Senza stop loss

Come anticipato la strategia è di tipo candlestick, entro a una certa configurazione di pattern, esco a una certa configurazione di pattern, e offre prestazioni generalmente migliori rispetto a un buy-and-hold, qui di seguito la tabella riepilogativa a confronto con il buy-and-hold e il fact sheet.

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return101.19%193.24%
CAGR%6.56%10.28%
Sharpe0.60.57
Sortino0.850.78
Sortino/√20.60.55
Max Drawdown-23.1%-38.59%
Longest DD Days712742
Volatility (ann.)11.61%20.99%
R^20.760.76
Calmar0.280.27
Skew-0.41-0.78
Kurtosis6.337.87

Factsheet

Stop Loss % applicato su minimo

Questo è lo stop loss standard, ossia quello consentito dai sistemi di trading, se il prezzo scende sotto il valore di soglia, la posizione viene chiusa. Il valore viene calcolato dal prezzo di apertura della posizone. Uno stop al 90% chiude la posizione se il prezzo scende sotto il 90% del prezzo di apertura della posizione. Questo tipo di stop loss è molto sensibile rispetto alle variazioni intraday del prezzo, e in particolare risente degli spike. Tempo fa avevo una posizione NEXI molto buona aperta con uno stop al 90%, o(ssia perdita max 10%). La posizione guadagnava ca 8-9%, verso le 10 un lungo spike ha attraversato lo stop, riassorbendosi interamente nel giro di 20 minuti. A fine giornata guadagnava un altro 0,23%. Probabilmente qualche istituzionale ha fatto un’operazione di caccia agli stop (hunter stop) perché nei 10 giorni successivi Nexi sembrava un missile diretto sulla luna. Per trovare il valore ottimale di stop loss ho fatto una simulazione con le soglie: stoploss=0.95,0.9,0.85,0.8,0.75,0.7, si potrebbe fare un ulteriore tuning, ma mi sembra un dispendio di energie in questa fase. La soglie di stop loss che offre le migliori prestazioni è 0.85, ossia il 15% si perdita prima di chiudere la posizione.

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return98.56%193.24%
CAGR%6.44%10.28%
Sharpe0.780.57
Sortino1.140.78
Sortino/√20.810.55
Max Drawdown-12.8%-38.59%
Longest DD Days515742
Volatility (ann.)8.39%20.99%
R^20.640.64
Calmar0.50.27
Skew-0.05-0.78
Kurtosis4.817.87

Stop Loss % applicato sul prezzo di chiusura

L’approccio è analogo a quelle precedente, solo che viene guardato solo il prezzo di chiusura. Una soglia al 90% chiude la posizione se il prezzo di chiusura scende sotto la soglia. Rispetto a uno stop di prezzo, lo stop di chiusura è meno sensibile alle variazioni intraday e ai cacciatori di stop. D’altro canto se il titolo inizia a scendere, la posizione viene chiusa con maggior ritardo e il rischio di una maggior perdita al mattino seguente. rumore a metà giornata di un eventi di cui viene data comunicazione ufficiale a borse chiuse può portare a un rapido crollo del valore. Anche qui il valore ottenuto come miglior stoploss è 85% del prezzo di entrata. Qui di seguito la tabella riepilogativa e il link al fact sheet.

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return99.09%193.24%
CAGR%6.46%10.28%
Sharpe0.750.57
Sortino1.090.78
Sortino/√20.770.55
Max Drawdown-15.23%-38.59%
Longest DD Days515742
Volatility (ann.)8.83%20.99%
R^20.670.67
Calmar0.420.27
Skew-0.08-0.78
Kurtosis3.787.87
Stop loss su chiusura

Trailing stop

Il trailing stop è uno stop dinamico che mantiene la medesima distanza (% o tick) rispetto all’ultimo massimo registrato dall’apertura della posizione. Questo non è un vero e proprio stop e può essere parte integrante di una condizione d’uscita dalla posizione in una strategia. L’indicatore supertrend utilizza un approccio di questo tipo, crea un canale in cui il trainling stop è calcolato dinamicamente sulla base dell’ATR. Si possono creare diverse varianti del trailing stop e meriterebbe una trattazione dedicata . Ho utilizzato solo la forma più classica, la posizione viene chiusa quando la distanza di prezzo rispetto al massimo registrato super la % indicata.

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return101.58%193.24%
CAGR%6.58%10.28%
Sharpe0.620.57
Sortino0.880.78
Sortino/√20.620.55
Max Drawdown-22.74%-38.59%
Longest DD Days700742
Volatility (ann.)11.25%20.99%
R^20.760.76
Calmar0.290.27
Skew-0.36-0.78
Kurtosis6.027.87
Trailing stop

Stop loss su ATR

Una delle principali critiche degli stop loss basati sulla % è che non tengono in considerazione l’ampiezza delle fluttuazioni giornaliere subita da un titolo. il rischio è quindi di uscire prematuramente da una buona posizione che potrebbe rendere, perché il titolo è particolarmente volatile. Lo stop loss viene quindi calcolato non più con una % fissa, ma con un moltiplicatore m dell’ATR(t) , con t il periodo di osservazione. Per ottimizzare la strategia vengono clacolati entrambi i coefficienti t e m ottimali. Dall’ottimizzazione si ottengono i valori di moltiplicatore m=5 e periodo di osservazione t=10. in letterature ho trovato diversi valori, i più comuni sono m=6 e t=10. Con i valori ottimali per la stategia otteniamo la seguente tabellla e factsheet.

Key Performance Metrics

MetricStrategyBenchmark
Risk-Free Rate0.0%0.0%
Time in Market100.0%100.0%
Cumulative Return98.08%193.24%
CAGR%6.41%10.28%
Sharpe0.710.57
Sortino1.020.78
Sortino/√20.720.55
Max Drawdown-14.39%-38.59%
Longest DD Days518742
Volatility (ann.)9.36%20.99%
R^20.630.63
Calmar0.450.27
Skew-0.23-0.78
Kurtosis6.667.87
Stop loss su ATR

Conclusioni

Uno stop loss corretto può dare benefici alla strategia, oltre a questi test ne ho fatto altri utilizzando diversi asset o diverse strategie, non vi è una regola per cui posso dire che uno stop loss sia meglio di un’altro in senso generale. Ciò che vale per la strategia specifica è che lo stop loss porta dei benefici. Se il pattern di candele per l’uscita non si verifica, c’è il rischio di perdere senza limiti. Indicativamente il valore % di stop loss (anche per l’ATR è intorno al 15%, con prove più di dettaglio si trova un minimo relativo tra 12% e 14%. Uno stop più stretto avrebbe strozato la strategia.

Personalmente preferisco uno stop loss % che posso impostare sul sistema, quindi l’ATR e lo stop sulla chiusura sono tendenzialmente da escludere.

Il trailing stop lo riservo più alla strategia che non alla chiusura della posizione. Ad esempio, apro la posizone, chiudo metà della posizone al segnale di chiusura, se il trend è ancora positivo imposto un trailing stop al 5%.

Come ultimo grafico inserisco il confronto tra la strategia senza stoploss e quella con il miglior risultato, stop loss al 85%. (Perdita max 15%)

WP to LinkedIn Auto Publish Powered By : XYZScripts.com