brobotan / stocks_etf_predict

ML Assignment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

test

Stock Market Trends and Price Prediction

ARIMA Model Predictions

AMAZON.COM INC Stock Prediction ProShares UltraPro Short QQQ Prediction

XGBOOST Predictions

Prediction 1 Prediction 2

Table of contents

Description

(Back to top)

For stock price prediction two models have been used in this project.

  • ARIMA MODEL
  • XGBOOST MODEL

ARIMA MODEL

ARIMA stands for Auto-Regressive Integrated Moving Averages. ARIMA (p, d, q) is a generalization of an autoregressive moving average (ARMA (p, q)) model. ARIMA models are applied in some cases where data show evidence of nonstationarity. The AR term p of ARIMA indicates that the evolving variable of interest is regressed on its own lagged (i.e., prior) values. The MA part indicates that the regression error is a linear combination of error terms whose values occurred contemporaneously and at various times in the past. The I (for "integrated") indicates that the data values have been replaced with the difference between their values and the previous values (and this differencing process may have been performed more than once)

Architecture Diagram

XGBOOST MODEL

XGBoost stands for Extreme Gradient Boosting, it is a performant machine learning library. XGBoost implements a Gradient Boosting algorithm based on decision trees. XGBoost is an ensemble of decision trees. Those trees are poor models individually, but when they are grouped they can be really performant. Gradient boosting is a process to convert weak learners to strong learners, in an iterative fashion. Each tree is called a “weak learner” for their high bias.

XGBoost starts by creating a first simple tree which has poor performance by itself. It then builds another tree which is trained to predict what the first tree was not able to, and is itself a weak learner too. The algorithm goes on by sequentially building more weak learners, each one correcting the previous tree until a stopping condition is reached, such as the number of trees (n_estimators) to build.

Architecture Diagram

Usage

(Back to top)

To use any of the two models mentioned above you just need to downlaod the corresponding jupyter notebook file which has an extension of .ipynb and import the packages required.

Installations

(Back to top)

  • numpy
  • matplotlib
  • seaborn
  • statsmodels
  • pandas
  • sklearn
  • pmdarima
  • tqdm
  • xgboost

Database

(Back to top)

We used Database which contains data for 7165 Stocks and 1374 ETFs. Data is presented in txt format that we will convert it into a csv file. It includes attributes such as Date, Open, High, Low, Close, Volume, OpenInt. A lot of Ups and Downs in the value of Stocks and ETFs are present in the Dataset therefore we have a very wide variety of Database which we will perform to train and test our Model.

License

(Back to top)

The MIT License

About

ML Assignment

License:MIT License


Languages

Language:Jupyter Notebook 100.0%