Coder Social home page Coder Social logo

aterhim / aristocks Goto Github PK

View Code? Open in Web Editor NEW

This project forked from s0v1x/aristocks

1.0 0.0 0.0 11.59 MB

Forecasting Stock Market Returns Using Deep Learning And Time Series Techniques: A Comparative And Empirical Study Using Technical Indicators.

Jupyter Notebook 100.00%
time-series rnn-tensorflow stock-price-prediction stock-market webapp forecasting technical-indicators deep-learning

aristocks's Introduction

AriStocks

In this repository, different RNN models (LSTM, BiLSTM, GRU, BiGRU) and classical time series forecasting models (ARIMA) have been implemented to forecast Apple stock returns. Equally important, the obtained results are compared to find the most consistent predictors and eventually the most appropriate model. The experiment results are conducted on a real dataset about Apple returns gathered from Yahoo Finance for a specific period (March 2015 to March 2021). In addition, we extended it with some technical indicators for financial time series using TA package.

On the whole, the main contributions of this repository are:

  • We analyze the time series of stock price data, given a combination of market data (Open, High, Low, Close, and Volume) and several technical indicators, to predict the stock price.
  • We evaluate the effectiveness of our approach with a real data set harvested from Yahoo finance.
  • We conduct an extensive empirical analysis to choose the best set of features and hyperparameters.
  • We conduct a comparative study on the performance of DL models (LSTM, BiLSTM, GRU, and BiGRU) and the ARIMAX model on financial time series forecasting.
  • Our experiment results show that BiGRU and ARIMAX are the best forecasting models for financial time series.

Data Set and Training Parameters

The dataset considered in the present study is Apple’s stock price time series. The data, composed of 1521 trading days from March 17th, 2015, to March 30, 2021, is obtained from Yahoo Finance. In order to get the best results, the deep learning models require hyperparameter tuning. These parameters are presented as the batch size, the number of epochs, and the window size. As for the ARIMAX model, the Auto-ARIMA approach automatically finds the optimal parameters p, d, and q.

Performance Assessment

Extensive evaluations have been presented on the performance of these models, and the results are critically analyzed. The results are shown in terms of Mean Absolute Error (MAE), Mean Absolute Percentage Error (MAPE), and Root Mean Square Error (RMSE).

Experimental Settings

To assess the effectiveness of our approach, we executed the LSTM, GRU, BiLSTM, BiGRU, and ARIMAX models on the same training set and test set. In the same operating environment of Google Collaboratory, all experiences were conducted with one single-core hyper-threaded Xeon Processors @2.3Ghz and 12 GB of memory.

Conclusion

As a result, BiGRU and ARIMAX models proposed in this repository performed in close manners in terms of error values. These models can reasonably predict the closing price of the following day and provide better references and insights for future investments. Moreover, these performances are achieved using the daily open, high, low, and cumulative returns of the company, denoted as F5 in the data construction notebook.

Authors

aristocks's People

Contributors

aterhim avatar

Stargazers

Prithvi Gupta avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.