Articolo Intelligenza Artificiale per il Trading di Donata Petrelli

Intelligenza Artificiale per il Trading

Il modello Petrelli-Cesarini, un metodo per la previsione di prezzi nei mercati finanziari

Articolo pubblicato il 09/12/2019 Da Donata Petrelli e rilasciato con licenza CC BY-NC-ND 3.0 IT (Creative Common – Attribuzione – Non commerciale – Non opere derivate 3.0 Italia)

 “La gioia nell’osservare e nel comprendere è il dono più bello della natura” diceva Albert Einstein … e se per osservare la realtà servono volontà, curiosità, passione e spirito analitico, ovvero capacità soggettive, per riuscire a comprenderla ci vengono incontro i metodi e le tecniche scientifiche. Oltre i metodi tradizionali presi in prestito dalla Matematica, dalla Statistica, dall’Analisi Tecnica e Fondamentale, per l’analisi dei dati dei mercati finanziari stanno prendendo terreno tecniche proprie dell’Intelligenza Artificiale, in particolare di Data Mining.

Non potendo prevedere il futuro in alcun modo, un’appropriata analisi dei dati osservati rimane il primo e fondamentale passo per arrivare a formulare una stima di quel valore che si avvicina con la più alta probabilità a quello futuro assunto da un certo fenomeno reale. Grazie poi ad un approccio analitico misto, che faccia cioè un uso combinato delle tecniche a disposizione, scelte in modo mirato per il raggiungimento di ogni singolo obiettivo ed in base alle risorse a disposizione, è possibile arrivare alla soluzione ottimale (e non certa!).

In questo articolo vogliamo illustrare un nuovo metodo di analisi dei mercati finanziari, basato su di una particolare tecnica di Intelligenza Artificiale, la Cluster Analysis ma che fa un uso combinato di metodologie matematiche e statistiche. La logica sottostante è quella del modello previsionale che porta il nome degli ideatori, Petrelli- Cesarini, il cui scopo è trovare il prossimo valore più probabile di un asset finanziario. Nel caso specifico e per la redazione dell’articolo è preso in considerazione un titolo azionario ed applicato al prezzo di chiusura giornaliero dello stesso. In realtà il modello previsionale Petrelli-Cesarini è applicabile a qualsiasi asset finanziario, oltre che, più in generale, a dati provenienti da altri settori.

L’Importanza del modello

Dalla teoria dei modelli matematici sappiamo che un modello serve per rappresentare matematicamente un fenomeno reale al fine di creare un ‘ambiente artificiale’ di supporto alla soluzione della problematica che emerge dalla situazione rappresentata. Dunque, lo scopo del modello è quello di aiutare a trovare una soluzione matematica ad un problema concreto. Per capire cosa fa il modello partiamo quindi dal suo obiettivo.

Il modello Petrelli-Cesarini nasce dall’esigenza di trovare un metodo risolutivo in merito alla questione del posizionamento di un futuro valore di un prezzo di un asset e che non tenga conto delle teorie più tradizionali, secondo cui i prezzi tendono a ripetersi con il tempo. Abbiamo quindi formulato una teoria di attrazione fisica dei prezzi a prezzi centrali, chiamati anche target. Questa teoria si traduce in una formula matematica, la formula di Petrelli-Cesarini, che può essere derivata a partire dalle ipotesi del modello.

La formula è l’espressione di un indice di misura in grado di esprimere la probabilità con cui un prezzo tende ad avvicinarsi ad uno di riferimento (prezzo target) ed è la sintesi di un processo elaborato realizzato appunto tramite un modello matematico, con il nome omonimo alla formula dell’indice, ispirato al modello fisico del salto dell’orbita dell’elettrone.

In sintesi, il modello nasce come ‘contenitore’ della formula da cui prende il nome.

Obiettivi

Grazie ad un modello possiamo:

  • dare forma ai nostri pensieri
  • supportare i ragionamenti
  • comunicare chiaramente
  • semplificare sistemi complessi

Lo scopo ultimo di un modello è quello di fornire una soluzione finale, nel nostro caso un valore numerico di previsione di un prezzo, sotto forma di prodotto o servizio che sia fruibile da un utente.

Il passo successivo alla realizzazione del modello, basato sulla formula Petrelli-Cesarini, è dunque quello della realizzazione del suo Algoritmo descrittivo per la realizzazione finale di strumenti per il suo utilizzo pratico.

Fig. 1 – Schema logico (fonte: Excel e Intelligenza Artificiale per il Trading – Petrelli e Cesarini)

Una volta realizzato l’Algoritmo, le possibilità di realizzare uno strumento diventano molteplici. Vedremo più avanti come fare per la realizzazione di un software finale.

I Dati

Il modello di Petrelli-Cesarini è un modello predittivo dell’andamento nel tempo del prezzo di strumenti finanziari, in particolare delle Azioni e degli Etf. In generale però si può applicare a tutti gli altri asset presenti nei mercati finanziari, tenendo in considerazione che la complessità nel trattare questi dati è intrinseca alla natura stessa dello strumento finanziario.

I dati infatti sono l’espressione dell’ambiente di cui fanno parte. Conoscere approfonditamente l’ambiente da cui essi provengono è condizione necessaria per tutte le fasi di analisi.

 Un altro aspetto da tenere in considerazione quando si lavora con i dati finanziari sono:

  • Il time frame di lettura del dato
  • Il time period dello storico dei dati

Negli studi tradizionali si tende a considerare dati misurati ad intervalli equi spaziati solitamente giornalieri ma anche settimanali o mensili. Nell’arco di una giornata si ottengo quattro informazioni relative alla sessione:

  1. Prezzo di apertura
  2. Prezzo di chiusura
  3. Prezzo minimo raggiunto
  4. Prezzo massimo raggiunto

Considerando time frame inferiore ad un giorno, parliamo di dati Intraday, ovvero di quello che avviene all’interno di una giornata. In questo caso il time frame è di 12 ore, 6 ore, 1 ora ma anche minuti, secondi, frazioni di secondo. Una tendenza più moderna della finanza consiste nello studio dei cosiddetti dati ad alta frequenza, ovvero osservazioni registrate in tempo reale sui mercati dunque di ogni loro singola transazione.

A seconda dello scopo dell’analisi si preferisce un tipo di lettura piuttosto che l’altra. Tenendo in considerazione due aspetti comunque imprescindibili:

–         La difficoltà della loro raccolta

–         La complessità del loro trattamento

Nella spiegazione del modello Petrelli-Cesarini saranno utilizzati per motivi esclusivamente didattici i prezzi di chiusura giornalieri. Nella forma originaria, il modello è creato in modo da essere indipendente da: tipo di asset finanziario, tipo di dati storici, time period e time frame.

Descrizione del modello

Dato uno storico di valori di un asset finanziario e la lettura dell’ultimo dato disponibile, il modello si preoccupa di trovare il più probabile valore futuro del prossimo dato dell’asset.

Per prima cosa è prevista la fase di acquisizione dei dati dell’asset (lo storico e l’ultimo prezzo) e dei parametri necessari all’esecuzione dell’Algoritmo e alla loro validazione (il ticker, il numero k con cui si vuole suddividere i dati di partenza, il Last Price). Quindi si passa alla successiva fase di ETL sui dati che prevede una loro pre-elaborazione al fine di rendere più semplice il calcolo dell’algoritmo.

Una volta presi e preparati i dati iniziali si passa all’analisi vera e propria.

Il modello previsionale dei prezzi Petrelli-Cesarini prende spunto dall’algoritmo K-Means, uno dei più importanti ed innovativi algoritmi dell’Intelligenza Artificiale per la divisione di dati grezzi iniziali in gruppi, per la messa in opera di un nuovo sistema di Clustering. Mentre la tecnica del K-Means parte dai dati da analizzare e ne trova la suddivisione in gruppi (cluster) autonomamente una volta assegnato il numero di cluster che si vuole ottenere, la tecnica di clustering usata da questo modello invece fornisce in maniera predefinita una divisione in gruppi, sempre dopo aver definito il numero K dei gruppi che si vuole ottenere. In particolare, il modello opera partendo da una suddivisione temporale dei dati, i prezzi di chiusura giornalieri.

La scelta del K non è fatta in modo casuale ma compiuta con una logica che va in funzione del time period e del time frame scelti inizialmente. Ad esempio se il Time Period è di tre mesi sceglieremo tre gruppi (K=3) in modo tale che avremo un raggruppamento per ogni mese, quindi, essendo un mese di quattro settimane, una settimana di cinque sessioni, avremo venti sessioni per ogni gruppetto. In base alla propria strategia di trading ed in funzione del tipo di analisi temporale che si vuole eseguire sui dati, l’utente seleziona il valore di K più opportuno.

Fatta questa divisione in sottogruppi, le fasi che segue il modello sono fasi di calcoli matematici e statistici. Infatti, dopo il clustering prodotto dal modello, per ogni gruppo trovato si calcola la Media Aritmetica che corrisponde, volendo fare una analogia con il metodo del K-Means al calcolo del centroide del singolo cluster. Quindi per ogni gruppo di dati calcoliamo la Deviazione Standard usando il valore Medio trovato precedentemente. Quindi si eseguono i calcoli probabilistici per arrivare al risultato finale.

Il Risultato

Una volta calcolata la Distribuzione Normale dei prezzi di ogni gruppo di dati, si calcola la formula di Petrelli-Cesarini per l’elaborazione della ‘probabilità relativa’ dei un gruppo. Ogni gruppo ottenuto dal particolare tipo di clustering messo in atto dal modello ha, secondo l’interpretazione del modello, una probabilità relativa che è data dal rapporto tra la distribuzione normale del gruppo e la somma delle distribuzioni normali dei K gruppi.

Questa formula è l’Indice Petrelli-Cesarini che tiene conto della partizione K dei gruppi di partenza legando così tutto il modello al filo logico della parametrizzazione temporale ai fini predittivi.

Al termine del calcolo della probabilità relativa si ottiene un elenco di probabilità relative. Se ho tre gruppi il vettore delle probabilità relative è costituito da tre elementi, tre valori di probabilità relative. Di queste il modello selezione il valore più elevato. Tale valore sarà corrispondente ad un indice del vettore che, a sua volta, corrisponde ad un gruppo della clusterizzazione. Ad esempio se la probabilità maggiore è quella del secondo elemento del vettore delle probabilità relative, significa che il gruppo più probabile in cui otterremo il prossimo prezzo starà nel secondo gruppo (cluster) quindi che il suo valore tende ad avvicinarsi al centro di questo gruppo.

Il risultato finale prodotto è dato dalla probabilità del prossimo prezzo di avvicinarsi al valore medio del secondo gruppo.

Fig. 2 – Utilizzo del modello Petrelli-Cesarini (fonte: Excel e Intelligenza Artificiale per il Trading – Petrelli e Cesarini)

Il valore finale, corrispondente al k prescelto dall’utente, corrisponde in pratica ad un valore target a cui far riferimento nelle proprie strategie di trading.

Strumenti da lavoro

Una volta modellato il problema dobbiamo capire quali strumenti adottare per utilizzare al meglio l’Intelligenza Artificiale. Di seguito una panoramica sintetica ma esaustiva delle varie possibilità:

  • Excel e VBA
  • R
  • Python
  • C/C++
  • .NET
  • Azure

Ancora una volta la scelta del miglior strumento o linguaggio dipende molto dal livello di complessità del lavoro che si deve svolgere e dagli obiettivi da raggiungere.

Cosa abbiamo visto

In questo articolo abbiamo parlato di:

  • Modelli previsionali
  • Dati Finanziari
  • Tecniche di Data Mining
  • Cluster Analysis
  • Modello Petrelli-Cesarini
  • Tools Informatici

Approfondimenti

Questo articolo è solo introduttivo ad un metodo di previsione dei prezzi dei mercati finanziari che fa uso di tecniche di Intelligenza Artificiale. Per la sua stessa natura non è possibile qui approfondire tutti gli argomenti, comprese le formule sottostanti ed il codice sorgente che le traduce in linguaggio di programmazione.

Per approfondire questi aspetti e per maggiori informazioni e spiegazioni sul suo funzionamento, consiglio la lettura di “Excel e Intelligenza Artificiale per il Trading” dove è presente un intero capitolo dedicato al modello e lo potete trovare a questo indirizzo:

Se ti è piaciuto questo articolo sarò felice se vorrai condividerlo con chi pensi possa interessargli 🙂

Torna su