Podcast
L’ottimizzazione delle strategie di trading azionario è un compito cruciale e complesso per le società di investimento, che richiede la considerazione di numerosi fattori in un mercato dinamico e stocastico. L’apprendimento per rinforzo (RL) offre un quadro promettente per affrontare questa sfida, formulando il problema come un processo decisionale di Markov (MDP).
In questo approccio, un agente apprende una strategia ottimale attraverso l’esplorazione per tentativi ed errori in un ambiente di mercato, ricevendo un feedback sotto forma di una funzione di ricompensa. A differenza dell’apprendimento supervisionato, dove i dati sono etichettati, l’RL si basa sulle ricompense per guidare l’agente verso una politica che massimizza le ricompense cumulative.
Questo studio confronta tre algoritmi di RL — Q-learning discretizzato, Hill Climbing e Deep Q-learning — per ottimizzare le strategie di trading e massimizzare la ricchezza cumulativa. Il loro rendimento è valutato rispetto a una strategia di trading casuale e a strategie comuni come “buy-and-hold” e MACD (Moving Average Convergence Divergence). I risultati preliminari indicano che l’algoritmo Hill Climbing, basato sull’iterazione delle politiche, mostra prestazioni più stabili e migliori rispetto al Q-learning discreto e al Deep Q-learning, entrambi basati sull’iterazione del valore.
Lavori Correlati
L’applicazione dei metodi di machine learning nei mercati finanziari è spesso concentrata sugli approcci “critic-only” dell’apprendimento per rinforzo, dove una funzione di valore Q viene utilizzata per apprendere la politica ottimale di selezione delle azioni. Molti lavori hanno esplorato tecniche di Deep Reinforcement Learning come il Recurrent Reinforcement Learning (Li et al., 2015) e la fitted Q-iteration (Antos et al., 2007). Uno dei primi studi sull’applicazione dell’RL nel trading (Moody & Saffell, 1998) ha dimostrato che i sistemi di trading basati sull’RL superano l’indice SP 500 su un periodo di test di 25 anni, suggerendo la presenza di una struttura prevedibile nei prezzi azionari statunitensi. Questo studio ha anche evidenziato che il Q-learning classico può soffrire della maledizione della dimensionalità, rendendolo più difficile da usare rispetto all’approccio RRL. Allo stesso modo, altri lavori hanno mostrato che la fitted Q-iteration può alleviare il problema della dimensionalità nel Q-learning di base applicato al trading.
Un’altra ricerca (Xiong et al., 2018) ha esaminato le prestazioni di un algoritmo basato sul framework actor-critic, il Deep Deterministic Policy Gradient (DDPG), che è una versione migliorata del DPG. Il DDPG utilizza reti neurali come approssimatori di funzione, mantenendo una rete “actor” che mappa gli stati alle azioni e una rete “critic” che produce il valore dell’azione in quello stato. Sebbene il DDPG abbia mostrato prestazioni migliori rispetto alla strategia di allocazione del portafoglio Dow Jones Industrial Average, il lavoro non ha confrontato il DDPG con altri metodi di apprendimento per rinforzo. Il presente studio mira a estendere i lavori precedenti confrontando direttamente le tecniche basate sulla ricerca di politiche (Hill Climbing) con quelle basate sulla ricerca di valori (Q-learning e Deep Q-learning).
Formulazione del Problema
L’obiettivo è sviluppare una strategia di investimento per un singolo fondo negoziato in borsa (SPY) che massimizzi la ricchezza cumulativa. I risultati sono confrontati con le tecniche consolidate “buy-and-hold” e MACD.
Per le tecniche di RL discretizzate (Q-learning tabulare e Hill Climbing), l’MDP è definito come segue:
- Stato (s): Insieme di stati (u,t), dove u=1 indica un momentum al rialzo (la media degli ultimi cinque prezzi di chiusura è superiore alla media a 1 giorno, cioè il prezzo di chiusura del giorno) e u=0 indica una pressione al ribasso. Inoltre, t=1 se l’agente può scambiare/comprare, e t=0 altrimenti. Per semplicità, si assume che un agente possa essere completamente in contanti o completamente in SPY, risultando in 4 stati possibili.
- Azione (a): Insieme di azioni sullo SPY, che includono comprare, tenere o vendere. Alcune azioni sono accessibili solo in determinati stati (ad esempio, non si può comprare se si è già in una posizione azionaria, e non si può vendere se si è già in una posizione di cassa).
- Ricompensa (r): La ricchezza cumulativa si realizza quando l’azione a è intrapresa nello stato s e porta a un nuovo stato s′.
Per il metodo Deep Q-learning, l’MDP è definito come:
- Stato (s): Insieme di stati (r,t), dove rin[−1.0,1.0] è la differenza di rendimento tra la media a 5 giorni (media geometrica dei rapporti immediati dei prezzi di chiusura dei cinque giorni precedenti) e la media a 1 giorno (prezzo corrente diviso per il prezzo di ieri), misurando il momentum del titolo. t=1 se l’agente può scambiare/comprare, e t=0 altrimenti.
- Azione (a): Le azioni sono definite con vincoli simili a quelli dell’MDP precedente.
- Ricompensa (r): Il cambiamento di ricchezza è realizzata quando l’azione a viene intrapresa nello stato s e porta a un nuovo stato s′.
Dataset e Caratteristiche
Lo studio ha analizzato la performance del mercato azionario negli ultimi dieci anni, testando le strategie di apprendimento per rinforzo sull’S&P 500 dal 4 gennaio 2010 al 30 dicembre 2020, utilizzando l’indice SPY come strumento di trading. I dati sono stati estratti da Yahoo Finance, includendo data, prezzo di apertura e prezzo di chiusura. Il dataset è stato suddiviso in set di addestramento e test, come mostrato nella Tabella 1. Il set di addestramento va dal 4 gennaio 2010 al 31 dicembre 2015, mentre il set di test va dal 4 gennaio 2016 al 30 dicembre 2020. Non è stata eseguita alcuna pre-elaborazione aggiuntiva sui dati oltre a quanto descritto.
Metodi
Sono stati esplorati tre approcci di RL per il trading di azioni singole: Q-learning discretizzato, Deep Q-Learning e Hill Climbing. Per gli esperimenti è stato sviluppato un ambiente personalizzato in Python. Si inizia con una ricchezza iniziale di $100.000, e la funzione di passo restituisce il valore del portafoglio alla fine della giornata, data l’azione e lo stato. Le prestazioni di ciascun algoritmo sono state valutate e confrontate con strategie di trading note come MACD e Buy-And-Hold.
5.1 Q-learning Discreto
Nel Q-learning discreto, l’agente interagisce con l’ambiente selezionando azioni per massimizzare la ricompensa cumulativa attesa. La funzione di valore-azione ottimale Q∗(s,a) è definita come il massimo rendimento atteso seguendo qualsiasi strategia dallo stato s e prendendo l’azione a. L’algoritmo Q-learning aggiorna iterativamente l’approssimazione di Q∗(s,a) utilizzando la regola di Bellman. Con la definizione discretizzata dell’MDP, lo spazio degli stati può essere espresso come una matrice 2times2 per il Q-learning tabulare.
Per il Q-learning, sono state eseguite 100 iterazioni sui dati di addestramento (2010-2015) utilizzando i seguenti iperparametri: alpha=0.05, gamma=0.15, epsilon_init=1, tasso di decadimento di epsilon =0.99, e epsilon_min=0.15. Un piccolo passo di 0.05 è stato scelto per un apprendimento granulare. Un fattore di sconto basso (gamma=0.15) è stato preferito perché tassi di sconto più bassi non hanno permesso all’algoritmo di convergere bene, portando a valori della matrice Q troppo vicini tra loro, rendendo difficile prendere decisioni per la politica finale. L’epsilon è stato inizializzato a 1 (scelta di azioni casuali) e fatto decadere dell’1% ad ogni iterazione fino a un limite inferiore di 0.15, il che significa che il 15% delle volte le azioni sono ancora scelte casualmente durante l’addestramento, nel caso in cui un’azione casuale risulti più ottimale.
5.2 Hill Climbing
Nell’algoritmo Hill Climbing, non si tiene traccia delle ricompense in una matrice Q. Invece, si genera una politica casuale, si modifica una singola azione all’interno della politica, la si esegue sull’intero set di addestramento e si confronta il valore finale del portafoglio con il valore finale della politica migliore precedente. Se il valore finale del portafoglio della politica corrente è migliore, la politica e il valore del portafoglio migliori vengono aggiornati. Questo algoritmo è stato iterato 100 volte sui dati di addestramento, con una convergenza ogni volta. La performance dell’algoritmo è stata quindi testata sui dati di test. Un potenziale svantaggio di Hill Climbing è la possibilità di rimanere bloccati in un ottimo locale. Tuttavia, in diverse esecuzioni, si è riscontrata una convergenza rapida e una rara occorrenza di ottimi locali. Sebbene possa verificarsi un overfitting sul set di addestramento, il numero limitato di iterazioni e la capacità di Hill Climbing di derivare una solida strategia di trading basata sulla logica degli investimenti attenuano in una certa misura questa preoccupazione.
5.3 Deep Q-learning con Experience Replay
Il Deep Q-learning è una generalizzazione del Q-learning discreto che gestisce spazi di stato continui. A differenza del Q-learning discreto, il Deep Q-learning utilizza una rete neurale per approssimare la funzione di valore Q. È stato utilizzato lo stesso algoritmo di Deep Q-learning con Experience Replay descritto da Mnih et al. (2013). Nell’Experience Replay, le esperienze (s_t,a_t,r,s_t+1) vengono generate continuamente come dati “etichettati” (dove r è l’etichetta) e memorizzate in un buffer fisso. Il campionamento casuale dal buffer aiuta a eliminare la correlazione intrinseca nella sequenza delle esperienze. Permette inoltre alla rete di apprendere dalla stessa esperienza più volte, il che contribuisce a mediare la distribuzione del comportamento su molti dei suoi stati precedenti, levigando l’apprendimento ed evitando oscillazioni o divergenze nei parametri. Invece di stimare il valore Q per ogni stato, i parametri della funzione Q vengono aggiornati utilizzando l’ottimizzatore Adam.
La rete utilizzata è una semplice rete feed-forward a 3 strati, che impiega ReLU come funzione di attivazione per i primi due strati e una trasformazione softmax dell’ultimo strato come output. La rete prende in input uno stato e produce i valori Q per tutte le possibili azioni come output in un forward pass. Con uno spazio di stato bidimensionale e tre azioni possibili, la dimensione complessiva della rete è 2rightarrow64rightarrow32rightarrow3, dove le dimensioni degli strati intermedi (64, 32) sono scelte arbitrariamente. L’azione ottimale è determinata dalla rete come l’azione corrispondente al valore di output massimo. La funzione di perdita è definita come l’errore quadratico medio tra i valori Q previsti e i valori Q target. Per mitigare le oscillazioni causate dal cambiamento dei valori target e previsti ad ogni iterazione, vengono mantenute due reti: una rete locale e una rete target. Ad ogni iterazione, la rete locale viene aggiornata con i nuovi dati, e ogni c iterazioni, i parametri della rete locale vengono copiati nella rete target, stabilizzando l’addestramento.
Risultati e Discussione
7.1 Q-learning
Dopo 100 iterazioni, l’algoritmo Q-learning converge a una politica essenzialmente “buy-and-hold”. La politica ottimale suggerisce di acquistare SPY alla prima data in cui la media a 1 giorno supera la media a 5 giorni (indicando momentum al rialzo) e quindi di mantenere il titolo indefinitamente. Inizialmente, si era ipotizzato che il Q-learning avrebbe converguto a una politica simile a MACD, basata sul confronto delle medie a 1 e 5 giorni; tuttavia, il Q-learning ha superato MACD. Una possibile ragione è che il Q-learning apprende a non perdere i giorni di maggiore crescita del mercato, mentre MACD è reattivo. Storicamente, perdere anche solo i cinque migliori giorni di trading può dimezzare i rendimenti.
7.2 Hill Climbing
La politica Hill Climbing supera le strategie “buy-and-hold” e Q-learning. La politica ottimale ottenuta da Hill Climbing è simile a MACD, ma con una differenza chiave: compra il titolo quando è in posizione di cassa, indipendentemente dal momentum del mercato. Essenzialmente, la politica Hill Climbing esce dal mercato ogni volta che c’è un significativo momentum al ribasso e rientra ogni volta che se ne presenta l’opportunità (in contanti). Questa è una strategia efficace, poiché perdere anche pochi dei migliori giorni di trading riduce significativamente i rendimenti cumulativi, specialmente perché l’uso delle medie mobili come indicatori di momentum è considerato una strategia reattiva.
Hill Climbing ha prodotto risultati leggermente superiori a “buy-and-hold”/Q-learning dal 2016 al 2018, e ha mostrato un leggero ritardo solo in alcune parti del 2019, forse a causa della frequente strategia di entrata e uscita in un mercato più volatile. La politica Hill Climbing sovraperformerebbe significativamente “buy-and-hold”/Q-learning in un ambiente di mercato dove i prezzi scendono rapidamente e poi aumentano. Tuttavia, in un ambiente più volatile con prezzi che zigzagano e rimangono prevalentemente piatti, Hill Climbing potrebbe ottenere risultati peggiori, poiché tenta di uscire dal mercato durante i cali, potenzialmente perdendo giorni di trading moderati ma altrimenti positivi.
Inoltre, il metodo basato sull’iterazione delle politiche (Hill Climbing) ha superato il metodo basato sull’iterazione dei valori (Q-learning). L’iterazione delle politiche può essere costosa per problemi con un ampio spazio di stato, ma questo è stato evitato definendo un MDP discretizzato con un piccolo spazio di stato.
7.3 DQN
Il DQN produce una politica non-banale per uno spazio di stato continuo. Le sue prestazioni migliori sono leggermente inferiori a quelle del “buy-and-hold”, e quindi inferiori alle migliori prestazioni degli algoritmi Q-learning discretizzato e Hill-Climbing.
7.4 Diversi Semi Casuali e Instabilità del Modello
Dopo aver eseguito i metodi con diversi semi casuali, si è concluso che l’algoritmo basato sulla ricerca di politiche, Hill Climbing, è la strategia più stabile, in quanto produce una ricchezza cumulativa con esiti consistenti tra le diverse esecuzioni. Al contrario, Q-learning e Deep Q-learning producono risultati molto diversi per semi diversi. A causa del piccolo spazio di stato, la variabilità nella politica di output dell’algoritmo Q-learning discretizzato si traduce in una maggiore differenza nella ricchezza di output rispetto al Deep Q-learning. Poiché la politica per il Deep Q-learning è più granulare e considera uno spazio di stato più ampio, la varianza della ricchezza cumulativa di output del Deep Q-learning è minore, e il Deep Q-learning si avvicina in media a una politica simile a MACD. L’algoritmo basato sulla ricerca di politiche dovrebbe produrre un risultato più stabile, poiché ad ogni iterazione l’algoritmo migliora monotonicamente la politica aggiornandola direttamente a una che produce risultati migliori. Al contrario, l’approccio basato sulla ricerca di valori stima solo la politica dall’approssimazione della funzione di valore massimizzato. Di conseguenza, poiché gli algoritmi vengono eseguiti per un numero finito di iterazioni, Hill Climbing potrebbe produrre risultati più affidabili.
Conclusione
Lo studio ha rilevato che Hill Climbing è il metodo più stabile rispetto ai metodi basati sulla ricerca di valori: Q-learning e Deep Q-learning. Hill Climbing è riuscito a trovare una politica che supera il Q-learning e il Deep Q-learning. Questo potrebbe essere dovuto al fatto che Q-learning e Deep Q-learning sono approcci basati sulla ricerca di valori che dipendono fortemente dalla stima della funzione di valore e dalla definizione dello spazio degli stati. Nel caso in esame, il Q-learning ha avuto prestazioni peggiori perché lo spazio di stato discretizzato potrebbe non aver catturato tutte le informazioni importanti di un problema di spazio essenzialmente continuo. Quindi, la funzione di valore Q approssimata dal Q-learning non era completamente accurata. D’altra parte, nel metodo di iterazione della politica, si è garantiti di avere una politica almeno altrettanto buona quanto la politica dell’iterazione precedente, il che porta a un miglioramento costante e a un risultato più affidabile.
Per lavori futuri, si potrebbe considerare di eseguire gli algoritmi fino alla convergenza invece di un numero fisso di epoche. Dato che gli esperimenti sono stati condotti su dati statici, i risultati sono stati prodotti per dinamiche di mercato finanziario semplificate, con transizioni quasi deterministiche. Pertanto, si suggerisce di condurre esperimenti su una simulazione delle dinamiche di mercato. Inoltre, un’ulteriore indagine sull’implementazione del Deep Q-learning ha rivelato che i valori di azione prodotti dalla rete Q si aggirano attorno a una distribuzione uniforme con un piccolo margine di preferenza per una particolare azione. Potrebbe essere necessario un ulteriore lavoro di debug o sperimentazione con la definizione della rete Q.
Riferimenti
Antos, A., Munos, R., e Szepesvári, C. Fitted q-iteration in continuous action-space mdps. In Proceedings of the 20th International Conference on Neural Information Processing Systems, NIPS’07, pp. 9–16, Red Hook, NY, USA, 2007. Curran Associates Inc. ISBN 9781605603520.
Housman, D. Why mistiming the market can be disastrous. 2020. Accesso: 29-05-2021.
Le, S. Algorithmic trading with fitted q iteration and heston model, 2018.
Li, X., Li, L., Gao, J., He, X., Chen, J., Deng, L., e He, J. Recurrent reinforcement learning: A hybrid approach, 2015.
Mnih, V., Kavukcuoglu, K., Silver, D., Graves, A., Antonoglou, I., Wierstra, D., e Riedmiller, M. Playing atari with deep reinforcement learning, 2013.
Moody, J. e Saffell, M. Reinforcement learning for trading. In Proceedings of the 11th International Conference on Neural Information Processing Systems, NIPS’98, pp. 917–923, Cambridge, MA, USA, 1998. MIT Press.
Ng, A. Cs229 lecture notes: Reinforcement learning and control. http://cs229.stanford.edu/notes2020fall/notes2020fall/cs229-notes12.pdf.
Singh, U. Deep q-network with pytorch. https://unnatsingh.medium.com/deep-q-network-with-pytorch-d1ca6f40bfda, 2019.
Xiong, Z., Liu, X.-Y., Zhong, S., Yang, H., e Walid, A. Practical deep reinforcement learning approach for stock trading, 2018.
Yang, H., Liu, X.-Y., Zhong, S., e Anwar Walid year = 2020, h.. h. Deep reinforcement learning for automated stock trading: An ensemble strategy.