Text Size
Tuesday, June 18, 2019
Area

Gandalf Store

Academy

Formazione

Consulenza

Intelligenza Artificiale

L' Intelligenza Artificiale e le più moderne tecnologie di Ingengneria Genetica al servizio del Trading...

L'Intelligenza Artificiale (AI) è la branca dell'Ingegneria che si occupa di replicare i comportamenti intelligenti, propri di elementi biologici, nelle macchine. Il mondo dell'Informatica ha declinato questo tipo di metodologie ad un insieme di differenti applicazioni come il processo di ottimizzazione nella progettazione di circuiti elettronici, la ricerca di soluzioni in ambito marketing e la previsioni di sistemi complessi. Il primo tentativo di applicazione nell'industria finanziaria risale ai primi anni 80 (del secolo scorso), quando diversi gruppi di ricerca provarono a predire il corso dei prezzi delle azioni utilizzando modelli a Reti Neurali.

Algoritmi Genetici, Reti Neurali e Logiche Fuzzy come strumenti di sviluppo di Strategie di Trading.

Sin dai primi risultati, in parte a causa della natura mutevole dei mercati, apparve chiaro come l'elemento vincente fosse l'utilizzo degli algoritmi genetici per la progettazione e la manutenzione di strategie completamente automatizzate.

 L'idea è al contempo semplice ed estremamente potente: generare una popolazione di investitori artificiali che basino il proprio comportamento sui mercati sulla base di una mappa genetica, che copra il maggior numero possibile di leggi elementari. Questo algoritmo è utilizzato sia per decidere l'ingresso in un trade che per decretarne l'uscita. Successivamente l'intera popolazione così ottenuta, è misurata sul mercato di riferimento, sulla base di una o più funzioni di costo che stabilisca i migliori e i peggiori individui. Gli N migliori investitori sono dunque conservati per la generazione successiva e vengono generati dei nuovi individui (i figli) componendo parte delle regole dei genitori (crossover) e commettendo degli errori di trascrizione (mutazione). L'insieme degli N padri e degli M figli rigenera una nuova popolazione di investitori che verrà nuovamente messa alla prova del mercato di riferimento. Questo processo viene ripetuto per un numero consistente di volte, passando di generazione in generazione. Più algoritmi evolutivi possono essre messi in competizione tra loro allo scopo di migliorare le soluzioni più evolute.

Il risultato di questo processo è un set di investitori che non solo abbiano fatto registrare le migliori performance nel periodo di addestramento, ma che  conservino anche statistiche favorevoli in aree dello storico non presenti nel dataset iniziale. 

Ma cosa significa esattamente ricercare regole profittevoli? Immaginiamo di creare una mappa genetica con tutte le possibili relazioni tra i prezzi delle ultime N barre (per esempio le ultime 6). Otterremmo una matrice di regole simile a quelle in figura:

Immaginiamo ora di gestire una matrice di migliaia o milioni di elementi. Se lasciamo che la macchina attivi un certo numero di regole randomiche all'interno di questa matrice, otterremo un certo numero di attivazioni. Nell'esempio in figura avremmo ottenuto ad esempio:

Close[1] > Average[1]

Low > High[1]

High > High[1]

In generale la macchine costruirà uno o più pattern i cui componenti elementari possano essere prezzi, volumi, cicli o indicatori. Lo stesso processo, ripetuto, darà luogo alle regole d'uscita. Successivamente, l'investitore sintetico così ottenuto, svilupperà anche un meccanimo di money e position management. Per esempio potrebbe controllare la posizione con uno stop loss statico, uno stop dinamico come un chandelier stop, un profit target o un time exit.

Ora, se il set di comportamenti ottenuti sarà in grado generare un profitto apprezzabile e se sopravviverà nel ranking dei migliori investitori sintetici in base alla funzione di costo selezionata, otterremo un nuovo candidato per diventare un trading system operativo.

QUello descritto è uno dei processi concorrenti nel cuore pulsante del software G.A.N.D.A.L.F. (Genetic Algorithms Network for Discover Adaptive Laws in Finance).

Una volta che un set di investitori sintetici siano stati integrati all'interno di un trading system organico, utilizzeremo un portafoglio di regole per decidere quanto a lungo conservare un singolo investitore ed in che modo sostituirlo.

Per tutte le funzioni legare alla composizione di portafoglio e alla gestione del rischio atteso, sono particolarmente adatte le Reti Neurali nelle differenti declinazioni: Deep Neural Networks, Recurrent Neural Networks, Convolutional Neural Networks, Long Short Term Memory Networks.

Privacy & Cookies Policy

Questo sito utilizza i Cookies per migliorare la navigazione. Utilizzando questo sito e continuando nella navigazione si intende accettata la Privacy Policy e la Cookies Policy. Puoi bloccare in ogni momento questa raccolta di informazioni seguendo le istruzioni contenute in queste pagine.

Python BootCamp

 

Topics

Intelligenza Artificiale

L' Intelligenza Artificiale e le più moderne tecnologie di Ingengneria Genetica al servizio del Trading...

Read more...

Consulenza

Gandalf Project è sia un Laboratorio di Finanza Quantitativa che una Società di Consulenza...

Read more...

Python

La scelta di Python come codice elementare per la modellizzazione di ambienti complessi...

Read more...