Analisi tecnica on line
 
Articoli | Commento | Grafici | Sotto la lente | Strategie | USA on line | Mercati RT
AT in pillole | Non solo AT | Ospiti | Bibliografia | Software | News | Links | Forum | Home

   
AT in pillole - Approfondimenti
 

<-- (I Trading systems) -->

I dati

 
 
di: Antonio Pantalena 

 

 

Una volta definito il progetto in tutti i suoi aspetti (ideazione, codifica e definizione delle aspettative), possiamo procedere alla fase di test, la quale mira a verificare se il comportamento del sistema è in linea con quanto da noi previsto o ipotizzato. A tal fine è innanzitutto necessario disporre di una o più serie di dati ai quali applicare le nostre regole di acquisto/vendita. Per quanto possa sembrare un elemento di minor rilievo in tutto il processo di sviluppo di un sistema, il tipo e la qualità delle serie storiche impiegate per la fase di test hanno un'importanza essenziale ai fini di una corretta valutazione del comportamento del trading system. Anche qui, come in molti altri casi della vita direi, vale la regola "garbage in - garbage out": la qualità dei dati utilizzati si riflette sulla qualità dei risultati ottenuti. Spesso capita di incontrare serie dove il prezzo di chiusura di alcuni periodi coincide con l'apertura, il massimo ed il minimo del periodo stesso o dove i volumi sono nulli; il computer, in questi casi, non sarebbe in grado di rilevare l'anomalia ma registrerebbe, ad esempio, un calo della volatilità o della liquidità del titolo. Questo accade non solo con i dati reperibili gratuitamente sulla rete ma, purtroppo (sigh!), anche con dati ottenuti dietro pagamento! E' indispensabile, quindi, prima di procedere al test, verificare l'integrità della serie storica utilizzata. Non vorremo di certo rischiare di implementare un sistema che appare vincente solo grazie alle distorsioni generate dai dati da noi impiegati!

I dati analizzati possono provenire da qualsiasi mercato, azionario, obbligazionario, valutario o dei derivati: i trading systems, studiando semplicemente l'evoluzione dei prezzi, senza prestare particolare attenzione a fattori di tipo fondamentale, possono essere, così, destinati alla definizione dell'operatività relativa a qualsiasi bene o diritto scambiato in maniera continuativa. Nel caso in cui, però, oggetto dei nostri investimenti siano contratti a termine bisogna prestare particolare attenzione ad una difficoltà derivante dalle loro caratteristiche: essi, infatti, sono quotati per periodi brevi e contemporaneamente su scadenze differenti; si pone la necessità, quindi, di stabilire di quale contratto considerare le quotazioni e come ottenere una serie storica più lunga della vita di un singolo contratto. A tal proposito vengono, in genere, proposti, quattro metodi alternativi:

  • Actual contract series (o Gann contract): in questo caso viene scelto un unico contratto e si considera sempre e soltanto quello; alla sua scadenza si farà riferimento alle quotazioni del contratto che scade lo stesso mese dell'anno successivo. Questo metodo presenta due limiti. Il primo è relativo al roll-over, ossia l'operazione di liquidazione delle posizioni e della riapertura di nuove, dello stesso segno, su di un nuovo future, effettuata dai traders che vogliono mantenere le posizioni in essere quando un contratto è in scadenza. Nel passaggio da un future ad un altro verrebbe registrato nella serie dei prezzi un gap dovuto al premio (o allo sconto) che il nuovo contratto presenta nei confronti del contratto in scadenza; se il sistema non possiede una routine che liquida le posizioni in prossimità della scadenza e ne apre di nuove dopo il roll-over, il test attribuisce all'operatore rialzista un guadagno inesistente in caso di gap-up o una perdita inesistente in caso di gap-down.
    Il secondo limite consiste nel fatto che i futures, in genere, presentano una liquidità di rilievo solo negli ultimi tre o quattro mesi di vita, mentre prima le contrattazioni sono quasi inesistenti; gran parte dei prezzi facenti parte della serie storica, quindi, avrebbero un significato quasi nullo.
  • Nearest contract: con questo metodo sono rilevati i dati della scadenza più vicina, per poi passare al contratto successivo quando quello utilizzato giunge a termine. Questa procedura permette di effettuare test su prezzi relativi sempre al contratto più liquido. Resta, qui, il problema della distorsione generata dai gaps; inserita una procedura che simula l'effettuazione del roll-over, c'è da stabilire quando questa operazione debba essere effettuata. Ipotizzare che ciò accada l'ultimo giorno di vita del contratto può risultare inopportuno in quanto alcuni futures sono troppo poco liquidi i giorni precedenti la scadenza. Babcock suggerisce di far coincidere il giorno del roll-over con il giorno in cui l'open interest del future in scadenza diventa inferiore a quello del future successivo. Murphy, invece, propone di impiegare i volumi anziché l'open interest come parametro di riferimento.
  • Continuous contract: il metodo del Nearest future presenta ancora un limite: i gaps mantenuti all'interno della serie dei prezzi possono sottintendere dei movimenti tali da far scattare alcuni segnali del sistema. La variazione dei prezzi, essendo dovuta al semplice passaggio da un contratto ad un altro, avrebbe dovuto, invece, essere trascurata in termini di analisi. Al fine di evitare che i sistemi generino falsi segnali in seguito alla presenza di gaps da roll-over una procedura adottabile è quella del continuous contract o spread-adjusted price series. Questa consiste sostanzialmente nell'aggiustamento o rettifica dei dati passati in modo che questi risultino compatibili con i livelli dei prezzi del nuovo contratto. I metodi di rettifica della serie sono due: quello additivo e quello moltiplicativo. Nel primo caso ai dati passati viene aggiunta la differenza esistente tra le quotazioni dei due contratti il giorno del roll-over (più o meno la somma cumulata dei fattori di aggiustamento relativi ai precedenti roll-overs). La seguente tabella mostra i prezzi di chiusura di un "ipotetico" Fib30, contratti scadenza Marzo e Giugno. Supponiamo di realizzare il roll-over proprio alla scadenza; come possiamo osservare, il 15 Marzo la differenza tra le chiusure di Giugno e Marzo è di 320 punti. Prima di attaccare alla nostra serie i prezzi di Giugno, quindi, dovremo rettificare i valori della serie finora utilizzata, ossia i prezzi di Marzo. La nuova serie si otterrà, allora, aggiungendo alle chiusure di Marzo 320 punti. Otteniamo, così, la serie rettificata:

Giorno  MARZO GIUGNO  Serie rettificata  ROC  ROC rettif.
15/02  37510  38705 37830    
16/02  37780 38895 38100    
19/02  38060 39050 38380    
20/02 37775 38880 38095    
21/02 37815 38920 38135 0,813 0,806
22/02 37860 39195 38180 0,212 0,210
23/02 38135 39250 38455 0,197 0,195
26/02  37935 38950 38255 0,424 0,420
27/02 38285 38990 38605 1,243 1,232
28/02 38505 39125 38825 1,704 1,689
1/03 38625 39470 38945 1,285 1,274
2/03 38370 39300 38690 1,147 1,137
5/03 38565 39435 38885 0,731 0,725
6/03 38620 39580 38940 0,299 0,296
7/03 38360 39550 38680 -0,686 -0,680
8/03  38645 39590 38965 0,717 0,711
9/03 38965 39965 39285 1,037 1,029
12/03 38695 39640 39015 0,194 0,193
13/03 38755 39745 39075 1,030 1,021
14/03 39095 39840 39415 1,164 1,155
15/03 39410 39730 39730 1,142 1,133
 16/03    39800  39800    
           
Tabella 1: Continuous contract realizzato con il metodo additivo
Ovviamente, quando andremo ad attaccare le quotazioni del contratto di Settembre alla nostra serie, i valori di Marzo che andremo a rettificare saranno quelli della serie già rettificata, non quelli fatti dal contratto prima della sua scadenza. Così i valori "reali" saranno solo gli ultimi della serie mentre quelli passati saranno il frutto di una o più rettifiche.
Questo metodo di aggiustamento ha il vantaggio di lasciare immutati i rapporti infragiornalieri (quelli tra massimo, minimo e chiusura) ma ha il grave inconveniente di alterare quelli intergiornalieri (quelli, cioè, tra i valori di sedute successive), modificando così, non solo le relazioni tra i prezzi, ma, di conseguenza, anche i risultati forniti dai vari indicatori tecnici. Consideriamo, ad esempio, le chiusure del 26 e del 27 Febbraio: la variazione percentuale è stata dello 0.923%; la stessa variazione, sulla serie rettificata, diviene pari allo 0.915%. Queste alterazioni si riflettono sul calcolo di alcuni indicatori. Nella nostra tabella abbiamo anche messo a confronto il ROC a 5 giorni calcolato sulla serie originale di Marzo e sulla serie rettificata: si può notare come i valori risultino differenti.
Per evitare che fenomeni di questo tipo si verifichino si ricorre al secondo metodo di rettifica, quello moltiplicativo, dove si moltiplica la serie di dati passati per il rapporto tra le quotazioni dei due contratti il giorno del roll-over. In tal modo le relazioni tra i prezzi vengono lasciate intatte.Ritorniamo al nostro esempio:

Giorno  MARZO GIUGNO  Serie rettificata  ROC  ROC rettif.
15/02  37510  38705 37815    
16/02  37780 38895 38087    
19/02  38060 39050 38369    
20/02 37775 38880 38082    
21/02 37815 38920 38122 0,813 0,812
22/02 37860 39195 38167 0,212 0,210
23/02 38135 39250 38445 0,197 0,198
26/02  37935 38950 38243 0,424 0,423
27/02 38285 38990 38596 1,243 1,243
28/02 38505 39125 38818 1,704 1,706
1/03 38625 39470 38939 1,285 1,285
2/03 38370 39300 38682 1,147 1,148
5/03 38565 39435 38878 0,731 0,731
6/03 38620 39580 38934 0,299 0,299
7/03 38360 39550 38671 -0,686 -0,688
8/03  38645 39590 38959 0,717 0,716
9/03 38965 39965 39281 1,037 1,037
12/03 38695 39640 39009 0,194 0,193
13/03 38755 39745 39070 1,030 1,032
14/03 39095 39840 39412 1,164 1,163
15/03 39410 39730 39730 1,142 1,143
 16/03    39800  39800    
           
Tabella 2: Continuous contract realizzato con il metodo moltiplicativo
In questo caso il rapporto tra le chiusure presentate da i due contratti il 15 Marzo è pari a 1.00812; moltiplicando per tale valore la serie dei prezzi di Marzo si ottiene la serie rettificata illustrata in tabella. Ricalcolando il ROC si può notare come questo sia praticamente allineato con i valori pre-rettifica; i leggeri scostamenti sono sostanzialmente legati agli arrotondamenti che ho effettuato sui valori rettificati, ai fini di una maggiore intelligibilità della tabella.
Anche il continuous contract ha, però, dei limiti. Innanzitutto non riflette il livello reale dei prezzi; in secondo luogo, non rendendo più necessaria la simulazione dei roll-overs, tende a sottostimare il numero delle operazioni e a sovrastimare la durata delle operazioni e, di conseguenza, il rapporto tra utile medio e perdita media. Questo aspetto ci sarà più chiaro quando affronteremo le problematiche relative a utile e perdita media.
  • Perpetual™ contract: questa metodologia, ideata da Robert Pelletier, consiste nel considerare i prezzi di un contratto "ideale" in scadenza un numero di giorni fissi dalla data in cui viene rilevata la quotazione, che viene definita per interpolazione, considerando i prezzi del contratto in scadenza e del successivo. Supponiamo che il prossimo contratto scada tra 50 giorni e quoti 38000 punti e che il successivo, in scadenza tra 110 giorni (il numero di giorni è approssimativo e utilizzato ai soli fini esemplificativi), quoti 39500 punti; nel caso in cui decidiamo di utilizzare un contratto che abbia una scadenza fissa di 70 giorni da oggi, per interpolazione avremo che il prezzo del contratto di oggi sarà 38.500.


Interpolando i dati individuiamo sulla retta il livello corrispondente a 70 giorni
Tale procedura verrà ripetuta ogni giorno: cambieranno i numeri di giorni alla scadenza (nel nostro esempio: 49, 48, 47,... e 109, 108, 107...), e di conseguenza la linea di interpolazione; su di questa andremo ad individuare il valore corrispondente a 70 giorni.
Tale metodo, pur eliminando il problema del roll-over, in quanto fa riferimento, in pratica, ad un contratto senza scadenza, presenta innanzitutto il grave inconveniente di fornire prezzi puramente teorici, che allontanano troppo la simulazione dalla realtà. In secondo luogo, il Perpetual Contract, ipotizzando una distanza fissa dalla scadenza del contratto, annulla l'effetto del decadimento temporale che caratterizza i prezzi dei futures man mano che si avvicinano alla scadenza, il che costituisce una distorsione eccessiva.

 

Questi metodi, come si è potuto notare, hanno tutti dei vantaggi e dei limiti. Sta all' operatore, quindi, stabilire quali sono le sue esigenze principali e quali imprecisioni o distorsioni è disposto a sopportare. Io personalmente sconsiglio l'impiego di una serie di tipo "Perpetual" in quanto conduce a risultati troppo distanti dalla realtà. Questa mia preferenza per valori "reali" o "realistici" mi fa preferire le serie di tipo "Nearest contract", accompa- gnate da una routine che simuli il roll-over. In tal modo il sistema viene testato su dati reali e riproduce il numero di operazioni che effettivamente dovranno essere eseguite. Nel caso in cui il derivato utilizzato presenti, nel passaggio da un contratto all'altro, variazioni talmente significative da alterare i risultati dell'analisi, può essere opportuno utilizzare una serie di tipo "Continuous contract", calcolata con il metodo additivo quando a prevalere è uno studio delle relazioni intragiornaliere, moltiplicativo, invece, quando importanza assumono le relazioni intergiornaliere.

Alla prossima puntata!

a.p. - 22 Marzo 2001

< - >
 

 

AVVISO IMPORTANTE
Si precisa che questa Rubrica, occupandosi esclusivamente di Analisi Tecnica, non terrà conto di 'voci' od altre cose del genere, limitandosi ad analizzare oggettivamente i grafici proposti. Le pagine di questo sito non costituiscono servizio di consulenza finanziaria né sollecitazione al pubblico risparmio. Le indicazioni riportate sono frutto di analisi amatoriali e vengono diffuse come elementi di studio o semplici spunti di riflessione. L'autore ed il Web Master declinano pertanto ogni responsabilità per le eventuali conseguenze negative che dovessero scaturire da un'operatività fondata sull'osservanza delle suddette indicazioni.

 

Leggi il Guestbook di Antonio Pantalena

Firma il Guestbook di Antonio Pantalena

Click Here!