La programmazione genetica nel trading finanziario

577

Con l’utilizzo della programmazione genetica si possono risolvere problematiche estremamente complesse quasi impossibili da analizzare con i metodi tradizionali

Non ci si può improvvisare trader senza avere alle spalle una consolidata esperienza, maturata con una profonda conoscenza dei mercati e degli strumenti per approcciarli, non disgiunta da una consapevolezza dei propri limiti e delle proprie peculiarità; una buona predisposizione naturale unita all’esperienza può poi trasformare l’esordiente trader in un vero e proprio talento, se alimentata da un impegno costante e appassionato, da un aggiornamento continuo e dalla capacità di adeguarsi all’inevitabile mutevolezza della Borsa. Conoscere gli strumenti su cui si opera è fondamentale, e capire se la propria strategia è applicabile a tali strumenti è altrettanto importante. I metodi escogitati per cercare di prevedere l’andamento dei prezzi delle azioni si dividono in due grandi famiglie: analisi fondamentale e analisi tecnica. Il presupposto dell’analisi tecnica è che la conoscenza degli eventi borsistici passati facilita la previsione di quelli futuri, perché le motivazioni e le variabili che influenzano i comportamenti umani tendono a ripetersi. L’avvento dei computer ha molto accresciuto la popolarità dell’analisi tecnica perché ha reso possibile manipolare enormi quantità di dati, generando grafici istantanei e personalizzati. I dati storici delle quotazioni possono essere studiati su un grafico o analizzati con algoritmi matematici. Da questi due approcci derivano le principali varianti dell’analisi tecnica:

 

  • l’analisi grafica, che cerca di riconoscere visivamente nei grafici particolari figure geometriche ricorrenti (p.es. doppio massimo, testa e spalle, ecc.);
  • l’analisi quantitativa, che elabora i dati numerici di prezzi e volumi con calcoli di varia natura e complessità, per ricavare vari indicatori di acquisto e vendita.

 

La PQ genetica
La programmazione quantitativa (PQ) – secondo l’interpretazione che ne dà Giacomo Guerrini giacomo.guerrini4@studio.unibo.it, neo laureato all’università di Bologna alla Facoltà di Scienze Matematiche, fisiche e naturali nel corso di Scienze di Internet, si sta specializzando in particolar modo nella programmazione genetica applicata al trading finanziario – consiste nell’inserire 200 condizioni (tra indicatori, ordini di entrata e ordini di uscita) in un software e quindi combinarle casualmente una con l’altra e scegliere la migliore rispetto ad una funzione obiettivo (ad esempio la massimizzazione del profitto netto). Questo processo porta alla costruzione automatica di trading system che soddisfano direttamente gli obiettivi specificati dall’utente.
“Con l’utilizzo della programmazione genetica – spiega – si possono risolvere problematiche estremamente complesse quasi impossibili da analizzare con i metodi tradizionali. La PG permette di far ‘evolvere’ una popolazione di programmi per computer (rappresentati da funzioni matematiche) seguendo i passi del processo di evoluzione naturale di cui parla Darwin nell’origine della specie (1859). In questo modo trasformando il soggetto del nostro studio (in questo caso i trading system) in ‘formula matematica’ possiamo far combinare i migliori trading system secondo un processo evolutivo deciso da noi. E’ sufficiente impostare le caratteristiche che deve avere il nostro trading system (anche chiamata funzione obiettivo) e la programmazione genetica permetterà di convergere ad un risultato simile a quello impostato a inizio simulazione”. Builder è un sofware sviluppato per creare codice easylanguage semanticamente corretto già utilizzabile in TradeStation o Multichart e quindi non ha bisogno di correzioni di codice (anche questa è la sua grande forza). Senza saper programmare (problema molto diffuso tra i trader) è possibile creare strategie profittevoli con l’utilizzo di Builder. Però, come avviene, per tutte le strategie queste devono essere ottimizzate e bisogna effettuare i relativi test di analisi affinchè si possa stabilire se sono robuste ed efficienti (non va mai dimenticato che non è tutto oro quello che luccica altrimenti sarebbero tutti ricchi!).

 

Non occorre saper programmare
Come altri settori anche il trading finanziario ha mostrato forte interesse per la programmazione genetica. Dempster e Jones (nel “lontano” 2000) hanno dimostrato che la maggioranza delle regole tecniche di trading tradizionali non sono profittevoli quando vengono tradate singolarmente o collettivamente. Tuttavia è possibile trarre profitto dai sistemi di trading system se la strategia è formata da una combinazione di tali regole di trading. Combinare regole tecniche attraverso la programmazione genetica piuttosto che utilizzarne una singola elimina molte delle problematiche dovute alla scelta di quale regola utilizzare. Questi continui studi hanno portato i ricercatori ad approfondire la materia in tutti i suoi aspetti. In tempi recenti alcuni programmatori, hanno sviluppato applicazioni con Builder che generano automaticamente strategie di trading combinando casualmente i tradizionali indicatori di analisi tecnica attraverso la programmazione genetica. Uno di questi è Builder, sviluppato della Adaptrade Software (www.adaptrade.com/Builder/index.htm). Per costruire strategie di trading, specifica questa società, non è necessaria nessuna conoscenza del codice, non è necessario programmare e non è necessario avere una conoscenza approfondita degli indicatori commerciali tecnici e delle tecniche di costruzione della strategia. Builder è in grado di generare strategie per quasi tutti i mercati in ogni fascia oraria: da 1 minuto alle barre mensili, per commodities, futures, forex, Etf ed altri mercati. Non vi è alcun limite al numero di strategie che si possono costruire: una strategia comincia a dare prestazioni peggiori del solito, basta costruirne una nuova affinché prenda il suo posto. Più in particolare, osserva Guerrini, l’utilizzo di Builder presenta i seguenti principali vantaggi:
l’algoritmo seleziona gli elementi strategici di trading automaticamente;  il processo di programmazione genetica elimina le attività di manodopera intensiva ed il noioso processo tradizionale di sviluppo della strategia; il processo di programmazione genetica è imparziale ed è è progettato per produrre corrette regole di trading e del codice senza errori; il tempo necessario per sviluppare una strategia sostenibile può essere ridotto da settimane o mesi ad una questione di minuti, a seconda della lunghezza dell’archivio storico dei prezzi ed altre impostazioni di costruzione.
Builder in Italia è ancora poco conosciuto; muove adesso i primi passi. Non è proprio alla portata di tutti. La licenza singola costa introno ai 2000 dollari, una volta per sempre.

 

Un test eclatante
Un test citato sempre da Guerrini e eseguito su E-Mini Russel 2000 analizzando un archivio storico dei prezzi di 8 anni (dal 16/4/2002 al 02/12/2010), con l’applicazione di costi di transazione pari a 2.5 dollari per operazione (trade), la strategia generata da Builder ha superato ogni aspettativa: un profitto di circa 164mila dollari con capitale iniziale di 9000 euro, un average trade di $563 e un drawdown massimo di12675 dollari (minore del 10% rispetto al profitto netto). applicando uno stop-loss pari a 3000 dollari.
Anche Claudio Sparti – Laurea in Scienze di Internet Università degli Studi di Bologna con una tesi di laurea su “Silloge di metodi operativi per il trading azionario intraday”, suggerisce a tutti i trader che non hanno più voglia di comprare trading system o che semplicemente non hanno voglia di perdere tempo a programmarli, di testare questo software. “Builder di certo potrà aprirvi la mente verso questa nuova frontiera del trading sistematico e, magari, potrà permettervi di trovare una nuova strategia non ancora inventata da nessuno e che vi permetterà di fare una barca di soldi”.

http://www.spertiblog.it/
Adaptable Software è una piccola azienda californiana fondata e gestita da Michael Bryant che dal 1994 studia e analizza i mercati future. Il software può essere scaricato e provato gratuitamente per un determinato periodo di tempo. Builder si addice a tutti i mercati e permette la creazione di un illimitato numero di tecniche operative.
I più famosi concorrenti di Builder sono The Grail (acquistato da Tradestation)

http://www.thegrailsystem.com/
e Trading System Lab (si dice il migliore in circolazione) http://www.tradingsystemlab.com

Il primo è stato uno dei pionieri della programmazione genetica applicata al trading finanziario ed è ritenuto uno dei migliori. Il secondo sembra essere il top in circolazione anche perchè sfrutta il motore genetico di Discipulus (altro software di programmazione genetica molto complesso ma efficace) per gestire il processo di sviluppo.
E’ appena il caso di ricordare, prima di concludere, che l’analisi genetica è una tecnica usata in numerosi altri settori, ad esempio per lo studio dei caratteri umani ma per lo studio del il tempo di fioritura di pomodoro per finire con un frutto conosciuto da tutti.