Categories
Algorithms Data Science

Stock Prediction Using Deep Learning

Recently have been looking into some stock market prediction libraries and repositories for our group project for CS7643 Deep Learning at Georgia Tech. Previously I worked on traditional Machine Learning algorithms and Q-Learning algorithm from Reinforcement Learning for CS7646: Machine Learning for Trading commonly known as the “ML4T course”. My codes for ML4T is locked in this private GitHub repo. But here I am sharing the research findings for applications of Deep Learning for stock prediction.

Approaches

Traditional stock prediction can be seen as a time series regression problem where many many algorithms already exist. A naive approach could be classification/regression but time series is more robust approach.

However, for a regression stock prediction model, one needs to map the predicted stock price to BUY / SELL / HOLD action space. So classification probably makes more sense. But Reinforcement Learning really helps a lot because it can optimize the total gains.

PyTorch Implementations

  1. Generic RNN, LSTM: many resources available online
  2. Transformer+Attention: This Medium article and its corresponding GitHub repo applies Transformer and time embeddings which seems quite interesting
  3. Dual-stage Attention -RNN (DA-RNN): The paper is here https://arxiv.org/pdf/1704.02971.pdf and the implemented model is available here in this GitHub. A similar implementation in PyTorch is available here by KurochkinAlexey
  4. Deep Reinforcement Learning: Finally, this FinRL is an excellent library for applying Deep RL on stock prediction with demo and code examples to help you get started.

This is a work-in-progress note. So will update this as needed.