domenica 18 novembre 2012

E' possibile fare trading con le medie mobili?

Nel 2006 frequentavo il corso della SIAT e i miei amici e compagni di aula Enrico, Fabio e Gabriele, in rigoroso ordine alfabetico (a proposito, quando organizziamo la prossima cena?) mi prendevano in giro per il mio profondo amore per le medie mobili. Ai tempi facevo trading con la carta millimetrata e le medie mobili mi sembravano uno strumento semplice e efficacie. Avrei acquistato il mio primo programma di trading, Metastock, solo dopo aver superato l'esame finale del corso avanzato. I primi backtest mi dissuasero: troppe operazioni perdendi.

Ma è veramente possibile fare trading con profitto utilizzando uno strumento di analisi così semplice?

La sfida di questo post sarà quella di testare un trading system sulle medie mobili molto semplice. La prima cosa da mettere in preventivo è la bassa percentuale di operazioni favorevoli che tali approcci portanto con sè. Sapevo che avrei dovuto faticare per trovare dei filtri operativi efficaci. Il loro compito sarebbe dovuto essere di limitare il numero di trade e allo stesso tempo selezionare quelli più interessanti.

Motore del sistema. Utilizzerò 3 medie mobili semplici. Se la media di breve periodo è maggiore della media di medio periodo e questa è maggiore di quella di lungo periodo comprerò. Le uscite saranno più articolate: ne ho previste 4. Uscirò dai trade con uno stop loss percentuale, uno monetario, un take profit oppure se la media di breve periodo è minore della media di medio periodo e questa è minore di quella di lungo periodo.

Filtri operativi. Dopo molte prove ho scelto 3 indicatori da utilizzare come filtri operativi: l'adx, il bandwidth di John Bollinger e un ratio di volatilità storica 6/100. Ho considerato validi i risultati solo se l'adx era maggiore di 30, se il bandwidth era inferiore alla sua media e se il rapporto tra la volatilità storica a 6 periodi e quella a 100 periodi era minore di 0,5.

Come sempre ho utilizzato tradestation per le analisi, lo strumento finanziario utilizzato è il FTSE MIB, il time frame è 15 minuti e il periodo considerato è di 14 anni e 10 mesi





L'equity line non è affatto male ma il drawdown massimo di 23.000 euro metterebbere a dura prova le coronarie del trader più tranquillo. Dopo qualche prova decido di utilizzare un ulteriore filtro, la scelta ricade sul rapporto tra il massimo di ieri e quello della giornata precedente.

Ecco i risultati






Il drawdown massimo è diminuito di oltre il 33%, il profit factor è ora di 1.67, l'average trade è 441 euro, la percentuale di operazioni vincenti è del 43,40%, molto buona per un trading system trend following. L'unico dato che è peggiorato è il net profit. Per avere un sistema più qualitativo ho duvuto accettare una diminuizione dei guadagni.

Come sempre non ho effettuato ottimizzazioni.

Al prossimo post.

giovedì 1 novembre 2012

Oltre il trend following - Un trading system sul FTSE mib - Argo II

Nel precedente post ho presentato Argo, un trading system trend following creato per il future FTSE MIB. La versione presentata si era dimostrata fin dall'inizio abbastanza solida. In questo post cercherò di apportare dei miglioramenti lavorando su aspetti che non erano stati ancora considerati.

Nello specifico prenderò in considerazione la forza del trend, utilizzando l'indicatore adx, e la volatilità, servendomi dell'indicatore bandwidth.

Non voglio soffermarmi sulla costruzione dell'indicatore adx. In tanti forum su internet o in qualsiasi libro di analisi tecnica potrete trovare tutte le informazioni possibili al riguardo. Però è importante precisare chel'adx misura solo la forza del trend, non la sua direzione. Un trend viene indicativamente considerato forte quando l'adx supera il valore 30.

Quale è la prima scoperta? Se apporto tale modifica al sistema le sue prestazioni peggiorano...e di molto. Il problema è che peggiorano troppo. E se invece funzionasse il contrario?
Proverò a considerare validi i segnali soltanto se l'adx è inferiore a 30.

Sulla volatilità si potrebbero scrivere 1000 libri e il discorso comunque non sarebbe esaustivo. Ai miei fini ho utilizzato un indicatore molto particolare: il bandwidth. Anche qui non mi soffermerò sulla formula dell'indicatore. Insieme al bandwidth ho usato una sua media mobile. Quando l'indicatore è superiore alla sua media siamo in presenza di alta volatilità. Quando esso è inferiore alla media c'è bassa volatilità.

Bene, anche qui però molto è cambiato in corso d'opera. Facendo lavorare il sistema soltanto nelle fasi di alta volatilità avevo dei risultati molto strani: miglioravano solo le operazioni short mentre peggioravano, e di molto, quelle long.

Ho deciso di considerare il filtro buono soltanto per i trade short e di usare il filtro contrario per le operazioni long. In fondo avevo già avuto modo di considerare la diversa struttura dei rialzi rispetto ai ribassi.

Nota operativa: ho utilizzato il bandwidth su un time frame giornaliero. Il sistema ha quindi ora 2 time frame: 15 minuti e daily.

In fase di backtest ho deciso di non effettuare operazioni long il venerdì e di non effettuare operazioni short il mercoledì, inoltre ho deciso di non operare se ci sono stati dei gap su base daily.

Per la misura dello stop loss mi sono servito del grafico MAE di tradestation 9.1.



Come sempre ho effettuato i backtest con il programma Tradestation.


Strumento finanziario: FTSE MIB;

Time frame: 15 minuti;

Periodo analizzato: dal 1-10-1996 al 8-12-2011 (15 anni e 2 mesi)

Vediamo i risultati:














I risultati sono stati ottenuti senza alcuna ottimizzazione.

Rispetto al sistema originale è più che raddoppiato l'average trade, il massimo drawdown è diminuito di oltre il 50 %. Anche la percentuale delle operazioni vincenti ha subito un'aumento del 5%.

Infine è da considerare positivamente il fatto che tutti gli anni (15) sono stati chiusi in positivo.

Al prossimo post.

venerdì 17 agosto 2012

Following the trend - Un trading system sul FTSE mib - Argo


Quello che sto per presentare Argo (in origine il sistema si  chiamava "inverted boll") forse è il trading system a cui sono più affezionato. Un po’ perché è stato tra i primi che ho programmato interamente da solo, un po’ perché l’ho scritto e riscritto tante di quelle volte cercando di migliorarlo che lo sento più mio di tanti altri. Un pò, infine, perchè è molto perfomante. 

Lo scorso aprile è stato anche oggetto di una mia presentazione presso la Trading Room di Roma in occasione di uno dei mitici incontri SIAT (società italiana analisi tecnica) del terzo giovedì del mese e, più recentemente,  di un mio intervento videolive, anche questo tenuto per la SIAT.

L’idea di base è nata leggendo “Trading systems that work” di Stridsman. Utilizzerò come regola per i trades long la rottura della banda di Bollinger superiore con sigma 2 (media mobile semplice + 2 deviazioni standard). La tecnica di uscita è un semplice trailing stop, neanche troppo evoluto rispetto ad altri conosciutissimi e presenti di default su programmi più utilizzati dai trader. Per i trade short le regole di entrata sono invertite (rottura della banda di Bollinger inferiore).

Insomma per il mio trading cerco quei momenti in cui il mercato accellera deciso in una direzione.

Come al solito ho utilizzatto Tradestation per i backtest.

Strumento finanziario: FTSE MIB;

Time frame:  15 minuti;

Periodo analizzato: dal 1-10-1996 al 8-12-2011 (15 anni e 2 mesi)








 


Il punto di partenza del sistema  senza filtri è senza dubbio interessante. Forse 3966 trades sono tanti e l’average trade di 105 € potrebbe migliorare.

Spero che Argo, sebbene qui presentato in una versione base, sia stato apprezzato. 
Nei prossimi post prenderò in considerazione i suoi margini di miglioramento.
mario.cesolini@gmail.com









lunedì 16 luglio 2012

Il trading system basato sull'RSI e i filtri orari - Telemaco I - parte 2

Il trading system Telemaco, presentato nelle settimane scorse e già oggetto di un upgrade, aveva già destato una buona impressione nei backtest condotti così come i risultati riportati da Anchise applicando dei semplici filtri orari.
Ed ecco l'idea, scontata a dire la verità, che possano funzionare altrettanto bene se applicati anche ad altri trading system e ...Telemaco era troppo a portata di mano per non poter essere coinvolto...


Strumento finanziario: cambio eurodollaro;
Time frame: 1 ora;

Periodo: 01/01/2004 - 08/07/2012;

Questa è l’equity line di Telemaco:



Ed ora ecco cosa succede applicando dei filtri orari:









Applicando dei filtri orari migliora sensibilmente la capacità di raggiungere profitti, situazione maggiormente visualizzabile nella prima parte dell’equity line.
I parametri che sono risultati migliori sono stati 10 e 20: il nostro sistema riterrà buoni i segnali di entrata soltanto se sono successivi alle 10 del mattino e precedenti alle 20.
Ecco il confronto tra le voci più significative dei rispettivi report:


senza filtro
con filtro orario
Net profit
83.958,70
112.217,00
Profit factor
1,3
1,56
% trade vincenti
41,38
45,95
Average trade
170,3
336,99
Max drawdown
18.494,00
17.893,00


I parametri migliorano sensibilmente tutti. L’average trade addirittura raddoppia. Il drawdown, seppure di poco, diminuisce.

Qui di seguito è riportato il report principale di Tradestation:



Il trading system Telemaco è performante, risponde molto bene agli interventi. Deve ulteriormente essere implementato? La risposta è sicuramente si! Voglio migliorare il rapport netprofit medio annuo/max drawdown. I migliori trading systems che ho visto girare avevano questo valore prossimo a 10.
Anche qui lavorerò su filtri giornalieri e pattern di compressione di volatilità.
Sono più curioso di voi di sapere come andrà a finire.







domenica 8 luglio 2012

Migliorare un trading system con i filtri orari - Anchise I - parte 3


Ricordate le migliorie apportate ad Anchise, il trading system basatosul CCI? L’attività di ricerca non si ferma mai e c’è sempre spazio per ulteriori miglioramenti. Nei giorni scorsi stavo rileggendo dei codici easylanguage che avevo scopiazzato qua e la. Alcuni di essi contenevano dei filtri orari. E' rinata così l'idea di testarli, infatti ero stato sollecitato in questo senso già nelle settimane scorse nel forum di un noto sito di finanza. 
In passato avevo già considerato soluzioni analoghe, ma solo in un ottica daytrading per sistemi che uscivano comunque a fine giornata.
Gli interrogativi sono molti, è il caso di mettersi al lavoro.  
Testerò Anchise sul cambio eurodollaro EURUSD, time frame 1 ora, periodo  01/01/2004- 08/07/2012. Applicherò la funzione che legge all'interno delle barre per non avere report falsati.
L’equity line del sistema è crescente. Di certo non permette di gridare al miracolo:



Il primo passo sarà quello di decidere a che ora iniziare a considerare buoni i segnali, dalle 8 del mattino? Dalle 9? La risposta me la darà l’ottimizzazione:


Chiaramente il valore che cercavo è 9,00, a partire da questo orario considererò validi i segnali per entrare in posizione.
L’equity line preannuncia  un netto miglioramento di tutti i valori del report:



senza filtro
con filtro orario
Net profit
69.564,70
             84.179,20
Profit factor
                1,20
                       1,34
% trade vincenti
31,37
33,87
Average trade
45,56
84,35
Max drawdown
     16.553,00
             13.960,00

Nella tabella sopra sono confrontati i valori più significativi dei backtest. L’average trade migliora molto pur non raggiungendo un valore elevato. La percentuale di trade vincenti rimane molto bassa e ciò potrebbe portare a non sentirsi a proprio agio.
Sotto il report principale di Tradestation:



Posso sicuramente concludere che il filtro orario applicato ha apportato delle migliorie significative.
C’è ancora del lavoro da fare sul sistema Anchise.   
Il prossimo passo sarà quello di testare dei filtri giornalieri e dei pattern di compressione di volatilità per cercare di migliorare la percentuale di trade vincenti e l’average trade.





lunedì 25 giugno 2012

Tobin Tax: La tassa che fa litigare l’Europa ... e preoccupare i trader

Sono diversi anni che sentiamo parlare di Tobin Tax. Si tratta di una tassa applicabile alle transazioni finanziarie e di misura pari allo 0,1 %.  L’espressione “transazioni finanziarie” è qui intesa in senso ampio:  compravendita di azioni e obbligazioni, ma anche opzioni, futures e altri derivati.

Punti di vista - Sull’applicazione della Tobin Tax i paesi della CE stanno “bisticciando” da diversi anni. Gran Bretagna e altri paesi con un’impronta più calvinista (Olanda, Irlanda, Svezia, Slovacchia e Malta) contro il blocco guidato da Francia e Germania. La Gran Bretagna ha fin qui imposto agli altri Paesi il suo veto categorico. Secondo i dati più aggiornati gli introiti che tale tassa garantirebbe sarebbero tra i 40 e i 50 miliardi di euro l’anno, cifre molto importanti.

Doppia Velocità - Per chi  fosse a digiuno a diritto comunitario è importante chiarire che, trattandosi di materia fiscale, tale tassa  non può essere adottata in mancanza dell’unanimità. Stante l’empasse di Londra, è maturata tra gli altri membri della CE la convinzione di dover fare da se e non curarsi di quei paesi che esprimono perplessità.  La procedura è complessa: almeno 9 membri della CE devono manifestare la propria volontà di adottarla, occorre un parere della Commissione e il voto a maggioranza del Consiglio.

Destinazione delle risorse – A cosa sarebbero destinati gli introiti della Tobin Tax? Secondo James Tobin, suo ideatore e premio Nobel, i destinatari avrebbero dovuto essere i Paesi più poveri del mondo.  Tuttavia, per ragioni dettate dalla contingenza dell’attuale situazione politico-economica non si esclude che possano essere adottate soluzioni differenti (tra le più plausibili il sostegno alle manovre per la crescita).

Storia della Tobin Tax e il no di Londra – James Tobin ideò questa tassa nel 1972 per aiutare i paesi del terzo mondo. La Svezia la adottò dal 1984 al 1992 assistendo ad una riduzione delle transazioni finanziarie del 70%. Ed è qui che risiede la ragione che frena la Gran Bretagna che ospita la più grande piazza finanziaria europea e che teme di perdere competività a favore di Paesi che non adottano la Tobin Tax.

mercoledì 20 giugno 2012

Trading systems e onestà intellettuale – Anchise I – parte 2


Una questione mi sta molto a cuore.  Un autorevolissimo trader mi ha fatto notare che avrei dovuto prestare molta attenzione all’average trade del trading system Anchise, il trading system basato sul cci presentato nel post precedente, e allo stop loss di 300$ che, in relazione a barre orarie utilizzate, avrebbe potuto essere molto sensibile alla funzione intrabar order di Tradestation.
Leggendo la pagina principale del report avevo notato un average trade basso, circa 48 $, non mi ero però curato troppo né dell’ampiezza dello stop loss, né della funzione che calcola i movimenti del prezzo all’interno della singola barra.

Decido di rifare i test e di pubblicarli in un nuovo post, qualsiasi siano i risultati.
I risultati avrebbero potuto essere completamente diversi  e, di certo, non in positivo.
Eppoi, non lo nascondo, se un grandissimo trader sente puzza di bruciato...
Ricapitolo per i meno attenti di voi: strumento finanziario cambio eurodollaro EURUSD, time frame 1 ora, periodo dal 30/09/2009 al 20/06/2012.
La prima cosa da fare è inserire la funzione intra bar order, poi procedere con l’ottimizzazione degli stop loss (e di conseguenza del take profit) .
Intanto che la strategia viene caricata mi accorgo di essere nervoso e preoccupato.




I parametri migliori per lo stop loss sono cambiati, ora è di 1000 dollari.
Inoltre i risultati sono tutti molto confortanti a riprova del fatto che l’idea alla base può considerarsi buona.

L’equity line ora appare molto meno bella ma ha un andamento comunque rialziasta e i anche i drawdown non sono rovinosi.


Il profit factor è 1,25, sufficiente ma non eccellente. Ricordo che il profit factor è il rapporto tra la somma dei guadagni delle operazioni vincenti e la somma delle perdite nelle operazioni perdenti.
Il massimo drawdown a posizioni aperte è 11.070,10$.

L’average trade ora è 64,80 $, è migliorato molto a seguito dell’allargamento degli  stop loss.


A proposito di stop loss… Avete notato che il valore 1000 non era al centro di un intorno ma rappresentava il valore più alto tra quelli che avevo considerato?
Lo so che il post era nato per porre rimedio ad un errore, ma se c’è la possibilità di fare meglio…



Il valore che assumerò come stop è 1.500 $, il net profit ora è pari a 36.028,63$, l’average trade aumenta a 72,79$, il drawdown scende  a 9.637,59$, il profit factor rimane invece stabile, ora si assesta sul valore 1,28.
Ecco la nuova equity line:




Non il massimo ma sono comunque sollevato, non  lo nascondo.
Nel prossimo post pubblicherò uno studio che ho presentato alla Trading Room di Roma il 19 aprile 2012 e che ha ad oggetto un trading system sul Ftse Mib che utilizza l’indicatore momentum.




domenica 17 giugno 2012

Un trading system basato sul CCI - Anchise I - parte 1


Il trading system Telemaco I, si è comportato molto bene nei test precedenti, durante i quali ai più attenti di voi non saranno sfuggite le considerazioni sul filtro basato sul CCI (commodity channe index). Ogni volta che l’RSI tagliava il livello 70 il CCI si trovava già sopra il valore + 100.  Il CCI è più tempestivo e lo è sempre.
Ecco la nostra idea di trading: compreremo quando il CCI supera il livello + 100  e venderemo quando scende sotto – 100. Chiaramente si tratta del classico sistema stop and reverse.

Lo strumento finanziario su cui è stato testato il trading system è il cambio EURUSD, time frame 1 ora.

Ecco che risultati avrebbe ottenuto dal 30 settembre 2009 al 15 giugno 2012:

Proverò a migliorare un po’ inserendo delle semplici regole di risk management: fissiamo uno stop loss a 300 $ e stop profit a 1300 $.

Due considerazione su tutte: il numero di trade è molto elevato e l’andamento dell’equity line comincia a far sperare in qualcosa di positivo. Il net profit è 30.470,60 $, il profit factor 1,13, il massimo drawdown 16.081,70, l’average trade 29,09 $,  la percentuale di trade vincenti soltanto del 25,85 %.
Proverò ad inserire dei filtri come, ad esempio, inclinazione della media mobile, ad aumentare il periodo di calcolo del CCI, a chiudere le posizioni alla fine della giornata, a togliere il take profit.
So cosa avete appena pensato: lo stop loss no, non lo toglierò mai dai miei sistemi! Della serie toglietemi tutto ma non il mio stop loss!

Chiaramente non è ciò che mi attendevo.
Non sto qui a riproporre tutti i passaggi, il numero di test, le idee buone e quelle pessime testate.
Durante i backtest ho avuto momenti di scoraggiamento: ogni cosa sembrava peggiorare o comunque non migliorare, il sistema originario. Forse il sistema raccoglieva un’idea di trading già ottima in sé. Forse, più probabilmente, stavo andando nella direzione sbagliata.
E se utilizzassi il CCI in modo diverso? Ad esempio comprando al taglio della sua media mobile a 4 periodi e non sul taglio del valore + 100?


Forse ci sono.  

Stop loss e take profit vanno però ricalcolati, per semplificarmi la vita decido che il rapporto tra i due  debba essere 1 a 2. In questo modo avrò un input in meno. I lettori che conoscono i pericoli dell’overfitting approveranno questa mia decisione.
Nel processo di lavorazione e di inserimento e backtest con tradestation è emerso che ciò che funziona per i trade long sembra non essere altrettanto efficacie per le operazioni short. I trade long e gli short hanno una struttura profondamente diversa.

Chiedendo aiuto  all’ottimizzazione mi sono accorto i long funzionano meglio se il CCI < 60 e gli short se il CCI < -50. Proprio così, è stata una sorpresa. Mi sarei aspettato che per i long il CCI dovesse essere maggiore di un certo valore, invece…


A proposito di ottimizzazione, quale sarebbe stato il valore temporale migliore per calcolare il CCI al fine di ottimizzare il net profit?
Prima considerazione: tutti i parametri sono buoni. Segno che il sistema è complessivamente robusto.
Sicuramente il valore migliore sarebbe stato 40, e questo per due motivi. Per il valore assoluto che il net profit  raggiunge e, soprattutto, perchè rappresenta il centro di un intorno con valori molto stabili e, come già accennato, tutti positivi.
L’equity line mostrata si riferisce al CCI calcolato a 50 periodi, soluzione non ottimizzata e che non cambierò.
E’ importante capire che l’ottimizzazione può aiutarci ad avere sicurezza nel sistema. Cercare la perfezione su dati del passato non ci aiuterà a overperfomare i mercati in futuro. Capire di aver progettato un buon trading system in cui, pur variando i valori degli input i risultati restano comunque buoni ci aiuterà invece tantissimo. Per chi come me progetta sistemi avere fiducia nei propri trading systems è tutto e quando le cose vanno meno bene è l’unica cosa a cui aggrapparsi per continuare ad eseguire i segnali in attesa di tempi migliori.
Il trading system presentato si chiama Anchise I.

lunedì 11 giugno 2012

Come migliorare il trading system sull'RSI - Telemaco I

Ricordate il trading system costruito con l'indicatore rsi sul cambio EURUSD esposto in uno dei precedenti post? Dopo qualche intuizione l'equity line era migliorata moltissimo.
Nei giorni scorsi tuttavia ho provato ad apportare una serie di modifiche per capire se esistessero ulteriori margini di miglioramento.
Come primo passo ho tolto ogni filtro di direzione (avevo usato l'incrocio tra la curva dei prezzi e una media mobile) e di trend (avevo utilizzato l'adx, indicatore che indica la forza del trend).

Cambio EURUSD, time frame 1 ora, periodo dal 4.01.2010 al 11.06.2012.
Ecco come appare la nostra equity line di partenza! Chi ben comincia...


Una prima direzione ci era stata suggerita da David Rodriguez, secondo lui l'rsi è un ottimo indicatore da utilizzare nelle fasi laterali, dove il trend non è ben definito.
Ecco cosa faremo! Utilizzeremo l'indicatore CCI (comodity channel index), i segnali long saranno valiti solo se il CCI a 14 periodi sarà inferiore a 100, i segnali short saranno validi solo se il CCI sarà superiore a -100.



Che orrore! L'idea di partenza è stata in grado di distruggere un equity line molto buona! Chiaramente non funziona il filtro CCI così come lo abbiamo concepito. Proviamo a fare il contrario! Voglio che il CCI sia > 100 per i trade  long e < -100 per i trade short.




Si tratta della stessa equity line iniziale! Ciò significa che quando l'rsi supera il vivello 70 il cci è sempre sopra il livello 100, per i trade short tali livelli sono rispettivamente 30 e -100. Questa è un'indicazione molto interessante: il CCI a 14 periodi sembra essere più veloce dell'RSI a 14 periodi.
In uno dei prossimi post approfondirò meglio questo argomento e testerò un sistema basato sul CCI.

Torniamo al nostro trading system, il CCI, così come utilizzato, non mi è stato di grande aiuto.
Il secondo filtro testato è il choppymarketindex (Building winning  trading systems with tradestation, G. Pruitt e J.R. Hill, Future Truth), proverò a considerare i segnali solo se questo è minore di 50. Anche in questo caso però i risultati non sono buoni.



Invertendo il filtro le cose potrebbero migliorare sensibilmente.


La situazione è migliore ma non rispetto al nostro trading system di partenza.
Non ho ancora trovato quello che stavo cercando. Proverò con un filtro di pattern.




Beh evidentemente si tratta del pattern sbagliato. Una media mobile? Il sistema di partenza una volta aveva la condizione che la media a 50 periodi calcolata sulle chiusure fosse inferiore al prezzo per le operazioni long, viceversa per le operazioni short. Potrei tentare questa volta con l'inclinazione di una media.




Finalmente! I miglioramenti sono evidenti nella parte finale dell'equity line e sono dovuti principalmente al netto miglioramento dei trade long. 
Non è stato per niente facile migliorare il trading system di partenza. Mi sono complicato la via più di una volta e per venirne fuori ci sono volute ore di backtest.
Spesso la soluzione è più vicina e semplice del previsto.

In un'ottica più lungimirante, vi anticipo che il trading system finale, che denominerò Telemaco I, (perdonatemi, ho un debole per i nomi mitologici), farà parte di un portafoglio di sistemi che testerò nei prossimi post dove affronterò argomenti come la correlazione tra diverse equity line e il drawdown di portafoglio.



sabato 9 giugno 2012

Un esempio di trading system robusto sul cross AUDNZD

Riprendendo il discorso cominciato con il post precedente, ho effettuato un backtest sul cross AUDNZDdollaro australiano – dollaro neozelandese. Il test è stato condotto su quattro diversi time frame compresi tra un'ora e un giorno. Il periodo del backtest va dal 1 aprile 2010 al 8 giugno 2012. L'obbiettivo era quello di valutare se i buoni risultati testati con successo sul time frame ad due ore sarebbero stati replicati  su orizzonti temporali diversi.  

Time frame 1 ora:  le premesse sono incoraggianti, net profit superiore ai 35.000$ buon andamento dell’equity line, l’average trade non è altissimo:  47 $ senza considerare commissioni e slippage.



Time frame 2 ora: il net profit rimane sostanzialmente lo stesso, l’equity line è buona, l’average trade raddoppia: 95 $ senza considerare commissioni e slippage.


Time frame 4 ore: il net profit più che dimezzato rispetto al test precedente, l’andamento dell’equity line comunque rimane buona.



Time frame Daily: il net profit rimane lo stesso del test precedente ma il basso numero delle operazioni fa perdere significatività statistica al  test.



Quali sono le considerazioni finali? Innanzitutto è sicuramente possibile affermare che il trading system testato sul cross AUDNZD  ha dato risultati positivi su ben quattro orizonti temporali diversi, sebbene il test con time frame daily sia statisticamente poco significativo. Tra i time frame con risultati più lusinghieri preferisco quello a due ore perchè, a parità di risultati,  ha un trade medio doppio rispetto a quello ad un ora. Praticamente effettua la metà delle operazioni e in ognuna di esse guadagna il doppio.
Sebbene siano molto difficili da scovare e possano essere considerati delle mosche bianche nell'universo del trading automatico, esistono dei trading system  in grado di operare con profitto su diversi time frame e che, per questa loro peculiarità, possano essere considerati robusti.

Il prossimo passo sarà testare lo stesso sistema su diversi strumenti finanziari.  








venerdì 8 giugno 2012

La robustezza di un trading system

Non c'è un solo libro sui trading system tra le decine che ho letto che non si soffermi a decantare l'importanza della robustezza. Tra tutti i parametri in base ai quali valutare la bontà di un sistema automatico, la robustezza ha un ruolo fondamentale: è in base alla considerazione che il trader ha di questa che un sistema smette di essere soltanto un mero algoritmo per diventare un criterio utiizzato per mandare ordini al mercato.
La robustezza teoricamente può essere definita come la capità di adattamento alle diverse condizioni di mercato. Praticamente si manifesta nella capacità di ottenere buone performance su diversi mercati e su diversi time frame. 
Un'altro aspetto della robustezza di un sistema è la sua capacità di ottenere buone performance al variare dei cosiddetti "inputs". Ad esempio, se consideriamo  il parametro x comune a due diversi sistemi, tra questi ultimi sarà più robusto quello che subisce meno variazioni man mano che il parametro x assume valori diversi.
In molti libri spesso compaiono delle tabelle dalle quali dedurre ad esempio che, di venti mercati esaminati, un sistema ottiene buone performance su sedici o diciassette di essi, ma ciò non significa che possa essere considerato tradabile per ognuno di essi, tantissimi altri fattori debbono essere considerati.
Dedicherò due tra i prossimi post rispettivamente al comportamento dello stesso trading system sullo stesso mercato e su time frame differenti e su diversi mercati.
Premetto che almeno ad oggi, non ho avuto mai la fortuna di testare un sistema che lavori bene su diversi time frame e su tutti i mercati.
I backtest saranno effettuati con il software Tradestation e, come sempre, non mancheranno sorprese.


mercoledì 30 maggio 2012

Un trading system basato sull'indicatore RSI

Nel post precedente avevo preaanunciato un severo test delle idee di trading presentare da David Rodriguez nell'ultima edizione di dell'ITForum di Rimini. Useremo le seguenti regole di trading: apriremo una posizione long quando l'RSI a 14 periodi supererà il livello 30 dal basso verso alto e apriremo una posizione short quando l'RSI taglierà dall'alto verso il basso il livello 70. Il sistema, così come concepito, è un classico sistema reversal, trascorre il 100% del tempo a mercato.
Purtroppo l'equity line è tra le più brutte mai viste. Un'immagine vale più di mille parole.


La situazione non migliora neanche aggiungendo uno stop loss di 100 dollari e uno stop profit, anch'esso di 100 dollari.



Cosa potrebbero suggerirmi due equity line così brutte? Forse che sto facendo l'opposto di quello che dovrei fare? Proverò a capovolgere le regole d'ingresso: entrerò long quando l'RSI supererà il livello 70 e short quando l'RSI scenderà sotto 30. Per adesso manterrò i livelli di stop loss e  stop profit fermi a 100 dollari. Anche se, osservando il numero di trade, mi viene subito in mente che il valore 100 per stop loss e take profit potrebbe essere troppo basso.


Finalmente un sistema con un equity line accettabile! Il numero di operazioni elevato indica che il sistema esce troppo presto dalle posizioni per poi riaprirne di nuove. Per evitare ciò userò dei valori di stop loss e takeprofit diversi da 100 dollari e ne ottimizzerò li ottimizzerò partendo a 0 a 2000 dollari privilegiando i valori di netprofit e trade medio. L'ottimizzazione effettuata ci suggerisce di utilizzare dei livelli di 900 dollari per lo stop loss e 2000 per il take profit. I progressi sono visibili nell'equity line dell'immagine successiva: ora è molto più regolare e anche il massimo draw down diminuisce in misura significativa.

Con poche semplici intuizioni un sistema che sembrava essere fallimentare è migliorato fino a diventare tradabile. Anche il numero di trade assume un valore più equilibrato. E' importante che nei momenti in cui il trading system funziona meno bene non ci siano dei drawdown rovinosi: il massimo riscontrato è stato di $ 11.926, risultato che considero accettabile. Il profit factor é pari a 1,32, un valore buono ma non eccezionale, invece il valore del trade medio, pari a $ 169,44, è molto buono.

Nei prossimi post cercherò di abbinare a questa tecnica un sistema di switch che permetta di riconoscere le fasi di trading range dalle fasi in cui il mercato sarà in trend. Per le prime utilizzerò l'RSI, per le seconde delle semplici medie mobili.
Il proposito è molto ambizioso, vedremo se gli sviluppi saranno altrettanto interessanti.

Una considerazione finale. Come è possibile che il sistema presentato inizialmente si sia rilevato così poco efficacie? La spiegazione che mi sono dato è che, nella confusione, prendendo appunti io abbia confuso i livelli 30 e 70 invertendoli.

domenica 20 maggio 2012

ITForum di Rimini 2012 - Evita l'errore n. 1

Il 17 e 18 maggio scorsi è andato in onda al nuovo palacongressi di Rimini il consueto appuntamento annuale con l'ITForum. Con il mio vecchio amico Enrico, conosciuto durante il corso Siat del 2006, abbiamo deciso di condividere questi due intensi giorni. A dire la verità eravamo interessati ad aspetti diversi del trading, più focalizzato sui trading system io, più interessato ad argomenti di ampio respiro lui.
Era la prima volta che partecipavo all'ITForum, sicuramente non mi aspettavo una partecipazione così importante da parte del pubblico. Distratto dalle bellezze di turno presenti a numerosi stand di intermediari e dalle luci a led delle ultimissime piattaforme di trading, mi sono catapultato da un'aula ad un'altra cercando di carpire i segreti dei traders più affermati.

Il primo meeting del giovedì si tiene nella sala forex, titolo "come essere vincenti nel mercato Forex". L'obbiettivo sbandierato nel titolo è senza dubbio ambizioso, forse anche troppo considerando che la maggior parte dei traders perde soldi su quel mercato. Sono incuriosito e scettico al punto giusto:  decido di andare.
Nonostante i 10 minuti di anticipo i posti a sedere sono tutti occupati, decido di sedermi per terra. Prenderò appunti sulla mia amata agenda verde acido marchiata Sardaleasing. La tecnica esplicata è molto semplice: RSI e taglio dall'alto verso il basso del valore 70 per le entrate long, RSI e taglio dal basso verso l'alto del valore 30 per le entrate short. Un classico sistema stop and reverse. Successivamente vengono introdotti uno stop loss e un take profit. Viene anche spiegata l'importanza del rapporto 1 a 1 tra questi ultimi.
L'equity line mostrata appare molto ben strutturata. Ecco il primo spunto di lavoro: codificheremo nei prossimi post questo sistema per verificare la sua bontà con diversi time frame. A proposito, il relatore dice di aver utilizzato il time frame a 60 minuti, poi forse si confonde e dice 70. Nel dubbio entrambi, insieme ad altri saranno oggetto di backtest. Il relatore precisa che i risultati migliori si ottengono in trading range e che per un mercato trending può bastare anche una semplice media mobile. Ecco una seconda idea, i successivi test saranno effettuati su un sistema che proverà a distinguere queste due fasi del mercato e che opererà alternando RSI e medie mobili. Dopo qualche ora mi confronto con Dario, presentatomi come un grande esperto di multicharts, sui problemi che stavo incontrando per automatizzare i miei sistemi. Mi viene suggerito un nome di una web farm, apro la mia agenda verde per appuntarlo e appare il codice formato easylanguage che nel frattempo avevo scritto traducendo le indicazioni del relatore. Dario lo guarda, sembra scettico, poi gli si illuminano gli occhi, mi guarda e mi dice: "Prova a fare il contrario!". Ecco un terzo spunto operativo!

domenica 13 maggio 2012

La nascita di tradingsystemreports


Tradingsystemreports è un blog dedicato ai trading systems nato con l'obbiettivo di analizzare, attraverso la lettura della relativa reportistica, la bontà delle principali idee di trading. Negli ultimi anni lo sviluppo di nuovi strumenti di analisi ha reso possibile anche per i trader retail l'accesso a tecnologie prima a disposizione esclusivamente degli investitori professionali.
Le idee di trading sono tradotte in un linguaggio di programmazione (nello specifico uso prevalentemente easylanguage, il linguaggio dei software tradestation e multicharts) così da poter essere testate sui dati del passato.
I destinatari del blog sono principalmente gli analisti tecnici che hanno o che intendono adottare un approccio meccanico, non necessariamente automatico, senza tuttavia sottovalutare l'utilità che potrebbero ricavare i trader discrezionali che intendessero testare le proprie convinzioni.
Partendo dalla considerazione che l'approccio meccanico quantitativo rappresenta soltanto uno dei possibili metodi per investire nei mercati finanziari, verranno analizzate diverse tecniche e ne saranno valutati i pregi e i difetti. Purtroppo, diversamente da quello che qualcuno vorrebbe farci credere, non esiste il Santo Gral. Ci sono tecniche più efficaci di altre ma anche per queste ci sarà sempre un compromesso da accettare.
Maggiore spazio sarà dato alle tecniche più popolari, per sfatare i tanti, troppi falsi miti che circolano nel mondo degli investimenti e del trading in particolare, senza tuttavia sottovalutare diverse metodologie anticonvenzionali ma non per questo meno efficaci.
Per tanti anni mi sono dedicato alla ricerca dell'indicatore perfetto per poi approdare allo studio della price action. Resto convinto che i migliori indicatori siano il prezzo e il tempo. Pochi altri indicatori ci offrono la possibilità di investire con altrettante possibilità di successo.

Una raccomandazione ai lettori, prendetevi tutti i vantaggi possibili:
  • studiate gli strumenti finanziari (azioni, futures, opzioni, ...) sui quali intendete investire;
  • leggete più possibile: oggi internet offre tantissime risorse gratuite, iniziate da lì per colmare le vostre lacune e assecondare la vostra curiosità;
  • non innamoratevi delle vostre idee, questo è un mondo in cui c'è un signore che ha sempre ragione: il mercato. L'unica cosa che si può fare è assecondarlo. 
  • Ogni mercato è diverso (può sembrare un'ovvietà), assecondiamolo. Non si può pensare di utilizzare un trading system trend follower su alcune tipologie di sottostanti. 

Questa presentazione non rappresenta un elemento di rigidità: i lettori potranno, compatibilmente con l'agenda del blogger, "indirizzare" l'attività del blog con le loro proposte.