/SP500_Time-Series_Forecasting

S&P500 Stock Index Movement Forecastor with various Statistical and Machine Learning Models

Primary LanguageJupyter NotebookMIT LicenseMIT

S&P 500 Time-Series Forecasting

S&P500 Stock Index Movement Forecastor with various Statistical and Machine Learning Models

Description

The S&P 500 is a stock market index that measures the stock performance of 500 large companies listed on stock exchanges in the United States. It is considered to be one of the best representations of the U.S. stock market.

Exploratory Data Analysis

  • Lag features Autocorrelation and Partial Autocorrelation

Models

Statistical Models include:

  • ARIMA and SARIMAX

  • Prophet

Deep Learning Models include RNN variants such as:

  • LSTM

  • Stacked LSTM

  • CNN-LSTM

Requirements

Install requirements.txt file to make sure tested versions of libraries are in use. Tested on local and google colab environment with following version of packages

  • Python 3.6.x
  • TensorFlow 2.2.0
  • Keras 2.3.1
  • Numpy 1.18.5
  • Statsmodels 0.10.2
  • Matplotlib 3.2.2

References