È possibile prevedere l’andamento dei prezzi con modelli predittivi basati sulle reti neurali? Tra deep learning e metodi statistici, la domanda non è più così scontata: ecco come i neural networks leggono il price trend.
In un’economia di mercato più o meno libera e più o meno in salute, il prezzo è il perno del sistema economico perché veicola l’informazione sui beni ed è di fatto un vettore informativo fondamentale. Non a caso il centralismo economico interviene proprio sul price making, perché controllare i prezzi vuol dire determinare top-down una certa economia, distorcendo l’ideale andamento spontaneo dei suoi mercati. Ma se è vero che sapere è potere, prevedere l’andamento dei prezzi è un obiettivo che i mercati si pongono dacché esistono e, per quanto ambizioso, risulterebbe profittevole e utile per capire e anticipare le possibili direzioni che un dato mercato prenderà nel futuro.
In prospettiva marginalista, i prezzi di un libero mercato vengono determinati dalla negoziazione inter-individuale secondo processi variamente chiamati catallassi (attraverso la quale gli individui scoprono continuamente i prezzi di equilibrio del mercato), ordini spontanei e meccanismi a mano invisibile. Scambiando beni e servizi in base ai loro valori relativi, i prezzi del mercato si adattano continuamente alle variazioni dell’offerta e della domanda (inducendo un conseguente adattamento degli agenti economici, che modificano circolarmente produzione e consumo) in quello che, in contesti poco regolamentati, è a tutti gli effetti un processo a ordine spontaneo (o a mano invisibile). Tuttavia, oltre ad essere determinato in modi complessi e tendenzialmente bottom-up, il prezzo può comunque venire influenzato da eventi esterni imprevedibili o mirati (meccanismi inflazionistici, iniezione di aggregati monetari nel sistema economico, politica monetaria, aspettative, interventismo di banche e governo).
La previsione esatta dei prezzi è pertanto considerata da alcuni un’illusione, dato che implicherebbe la capacità di predire i comportamenti degli agenti in termini aggregati e, di conseguenza, tutte le interrelazioni prasseologiche di ogni attore economico con gli altri, in una rete stratificata e complessa di rapporti economici (con tutti i meccanismi di aggiustamento dei prezzi che conseguono). Si tratta quindi di un problema altamente caotico ed estremamente complesso, in quanto è il risultato di un enorme numero di variabili interconnesse in modo non-lineare e difficili da quantificare.
Tuttavia, oggi esistono strumenti più avanzati che in passato e certi assunti o certe evidenze del modello economico standard potrebbero variare in relazione ad approcci comportamentali e all’utilizzo dell’Intelligenza Artificiale. Come sappiamo, l’AI è l’implementazione di metodi probabilistici in algoritmi di machine learning (focused principalmente su operazioni di regressione e classificazione) e deep learning, i quali negli ultimi anni hanno fatto passi da gigante in moltissimi campi, seguendo una curva di apprendimento che si è fatta esponenziale, a spanne, almeno dal 2018.
Il deep learning consente di costruire e sviluppare i neural networks (reti neurali), strutture computazionali modellate funzionalmente e competitivamente sulle reti neurali biologiche, dove vari “strati” di funzioni matematiche processano e interpretano i dati sotto forma di numeri reali. Essendo il cervello formato da più sottosistemi (reti neurali più o meno distribuite, circuiti neuronali, mappe locali, mappe globali, aree cerebrali ecc.) di elaborazione dell’informazione distribuiti ad elevato parallelismo (Parallel Distributed Processing), le reti neurali artificiali ne sono una rappresentazione matematica ed emulano i comportamenti del sistema nervoso in quanto sistema dinamico non-lineare. Le reti neurali multistrato (ricorrenti, convoluzionali, feed-forward ecc.) hanno più layer di unità nascoste (hidden layer) collocate tra le unità di input e quelle di output, che consentono di approssimare molte funzioni. Gli agenti basati sui deep neural networks possono auto-apprendere, elaborare da sé comportamenti, processi, scelte e azioni (autonomous decision-making) a partire da un codice, un dataset iniziale, masse di dati acquisiti dai big data e il training dell'algoritmo.
Quando si immettono nel modello sia i dati da elaborare che il risultato richiesto con esempi etichettati (chiedendo alla macchina di riconoscere cani e gatti in un paniere di immagini, le si forniscono foto di cani e gatti contrassegnati con ‘cane’/’gatto’ come reference), si parla di supervised learning. Data in ingresso una serie di datapoint (i sample di valori reali) con le relative features (caratteristiche dei datapoint usate come valori in input), è richiesto all’algoritmo di restituire certi valori in output (label), tali che esso si comporti come un modello predittivo della variabile target (ad esempio, l’andamento dello stock market o del mercato immobiliare). In questo caso, l’algoritmo apprende dagli esempi a riconoscere dei pattern ricorrenti che gli consentono di lavorare in autonomia su nuovi dati non più etichettati, per operare matching di successo tra input e output. Imparando con l’esperienza e adattando le prestazioni ai mutamenti esogeni, le reti neurali sono utilizzate per risolvere problemi di classificazione, regressione e generazione di nuovi dati e migliorano le performance in base alle variazioni delle funzioni di attivazione e dei pesi (error back-propagation), operando generalmente in un contesti a informazione incompleta e sulla base di modelli stocastici, statistici e probabilistici.
Quando si immettono solo dati non etichettati senza specificare un particolare label e lasciando che sia l’algoritmo ad analizzare i dati per individuare un criterio di classificazione senza gli “esercizi svolti”, si parla di unsupervised learning. Quando invece si lascia l’algoritmo interagire con l’ambiente in cui è immerso modo che apprenda da sé come agire, si parla di reinforcement learning. Il fine dell’apprendimento per rinforzo, modellato sulle teorie comportamentiste, è la realizzazione di agenti autonomi in grado di scegliere le azioni da compiere per il conseguimento di determinati obiettivi. L’agency del reinforcement learning è implementata tramite un sistema di ricompense (o di premi e punizioni) che rinforza negativamente o positivamente le azioni dell’agente. In ambito reinforced, una reward function (funzione ricompensa) è un feedback positivo dato a un’azione che comporta una transizione da uno stato all’altro e l’obiettivo degli agenti di questo tipo è la reward maximization.
Ora, i modelli predittivi basati sulle reti neurali (ossia i modelli di deep learning) sono una classe di algoritmi di machine learning addestrati sui dati storici delle variabili di interesse e progettati per generare modelli matematici con cui operare previsioni su di esse (ad esempio il prezzo delle azioni, la probabilità di un evento, l’output di un processo industriale e così via). Le reti neurali più idonee per i modelli predittivi sono tendenzialmente le reti neurali ricorrenti (RNN), adatte per problemi in cui l’output dipende dallo stato attuale e dallo stato passato, e le reti neurali feed-forward (FFNN), più indicate per problemi in cui l’output dipende solo dallo stato attuale. Potendo trovare relazioni complesse tra le diverse variabili, i modelli predittivi basati sui deep neural networks (reti neurali con numerosi hidden layer) possono essere allenati su massicci volumi di dati, come dati storici di prezzi e di altre variabili economiche (come le notizie, i tassi di interesse, l’inflazione ecc.) per scovare pattern complessi e cogliere le relazioni non-lineari tra le variabili che influiscono sui prezzi. I modelli di unsupervised e reinforcement learning, in particolare, paiono piuttosto adeguati, o quantomeno interessanti, per effettuare previsioni sull’andamento futuro del prezzo.
Dopo la necessaria fase di training, in cui, almeno nel caso dell’apprendimento non supervisionato, vengono dati in pasto alle reti neurali numerosi esempi etichettati del problema da risolvere, gli algoritmi di deep learning possono infatti prevedere i movimenti di prezzo e identificare anche altre informazioni su un certo mercato. La loro accuratezza, tuttavia, dipende dalla qualità dei dati di input e dalla configurazione della rete neurale: prevedere l’andamento dei prezzi è un compito complesso anche a causa dell'incertezza, della complessità socioeconomica, delle asimmetrie e delle imprevedibilità nel mercato. Non è un caso che alcuni hedge funds usino complessi dataset che non sono composti solo di prezzi e volumi, ma anche di news, sentiment (analizzato sui social principalmente) e dati macroeconomici. Renaissance Technologies, ad esempio, è un hedge fund fondato dal matematico James Simons che dal 1982 gestisce miliardi di dollari tramite algoritmi e modelli matematici e, avendo raggiunto ritorni record del 66% annualizzato per 30 anni, attualmente amministra un capitale di più di $165 miliardi tramite modelli statistici e di deep learning.
Nonostante molti continuino a ritenere impossibile predire il prezzo degli asset, lo stato dell’arte del deep learning e delle reti neurali (indicativamente dal 2018 in poi) smentisce almeno in parte questa affermazione. Va detto, la bontà del risultato dipende strettamente dal timeframe considerato, ma di fatto il risultato è piuttosto accurato nelle previsioni a breve termine (giorni o settimane al massimo), mentre gli algoritmi diventano sempre meno efficaci sul lungo, in quanto anche solo una news inaspettata o un evento macroeconomico può deviare completamente il previsto andamento del prezzo.