stockpricepredictor 1.0.0
Stock Price Predictor is an Open-Source Python package that accepts the ticker name of the stock and predicts its future value.
License: MIT

*********************
Stock Price Predictor
*********************

Stock Price Predictor is an Open-Source Python Package that uses a Deep Learning learning model to predict future stock values based on historical values.

**The package performs the following functions:**

1. Accepts the ticker name of the stock and scrapes historic data of the stock using the Yahoo Finance API. The start date and end date for the historic data are 2000 days and 60 days ago respectively.

2. A Recurrent Neural Network model is trained with the data. This model is used to make predictions on the data for a number of days that need to be taken into consideration. This parameter is defined by the user.

3. Plots a graph that displays our predicted values along with the actual values. This will act as a visual aid for the users to comprehend the accuracy of the model on the particular stock.

4. Returns predicted values for the desired number of days which is defined by the user.

**********************
Function Description
**********************

In order to call the function, the following syntax is used:

    ``y_pred = stockpricepredictor(company)``

Variable Description:
"""""""""""""""""""""
company(string): Ticker name of the stock

prediction_days(int): Number of days that need to be taken into consideration for predictions

days_pred(int): Number of days that we need projections for

y_pred(array): Predictions for 'days_pred' number of days

******
Output
******

.. image:: https://github.com/harshitbhavnani/Stock-Price-Predictor/blob/main/Screenshot%202021-03-27%20021305.png?raw=true
           :alt: Output
           :height: 350px
           :width: 518px

************
Dependencies
************
The libraries that need to be installed for the package to work are as follows:

- Matplotlib: Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python.

- Tensorflow: TensorFlow is a Python library for fast numerical computing created and released by Google. It is a foundation library that can be used to create Deep Learning models directly or by using wrapper libraries that simplify the process built on top of TensorFlow

- Numpy: NumPy is a library for the Python programming language, adding support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays.

- Pandas: Pandas is a software library written for the Python programming language for data manipulation and analysis. In particular, it offers data structures and operations for manipulating numerical tables and time series.

- Keras: Keras is a deep learning API written in Python, running on top of the machine learning platform TensorFlow. It was developed with a focus on enabling fast experimentation. Being able to go from idea to result as fast as possible is key to doing good research.

- Pandas Data Reader: Pandas Data Reader is used to extract historic data of stocks by calling the Yahoo API

- TQDM: This package instantly make your loops show a smart progress meter for the fitting of the RNN model

- Sklearn: MinMaxScaler function from Sklearn is used in order to standardise the closing values between 0 and 1.

Use the following commands in Jupyter notebooks (if the libraries are already installed, this step could be skipped)

|

``$ pip3 install matplotlib``

``$ pip3 install tensorflow``

``$ pip3 install numpy``

``$ pip3 install pandas``

``$ pip3 install image``

``$pip3 install keras``

``$pip3 install pandas-datareader``

``$pip3 install tqdm``

``$pip install scikit-learn``

``$pip3 install stockpricepredictor``

|

**Replace the $ pip3 by !pip for Google Colab users.**

Author:
"""""""

Harshit Bhavnani - harshit.bhavnani@gmail.com

License
"""""""
MIT