Skip to content

This is a web application that gives stock value predictions based on preferences.

License

Notifications You must be signed in to change notification settings

Sandy0002/Final-Year-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web Application For Stock Price Prediction

Table Of Content

Demo

Interface

Home

Stock exchange options Stock Indexes

Forecast interval Options Forecast Intervals

While processing Processing

Post Processing Output

App link

Overview

This is a web application built using the concept of Stock Price Prediction. The web app is built using Streamlit framework along with the TensorFlow for deep learning purposes and have been deployed on the streamlit cloud

Motivation

Its been a while since I was building machine learning models and want to expand my knowledge by applying the concepts on the bigger problem. Such a manner would be applying the stock price prediction concept upon stock exchanges in which rather than simply have one dataset simply here we need to process data in real time and generate results.

Technical Aspects

Whole project is written using only python.

Project Working

The working of the project is divided into 4 steps

  • Fetching Data

    • Program takes the user inputs such as the stock exchange, company name and forecast interval. yFinance library is used to fetch the data of the stock. By default we are taking only 5 years of data of a stock for prediction
  • Preprocessing Data

    • Upon fetching data we need to preprocess it.We are using LSTM as they are suitable for time-series-analysis. So we need to convert the data into LSTM compatible format.
  • Training Model

    • After preprocessing the data is sent to the model for training it.
  • Generating forecasts and displaying

    • After training the past data is used to forecast the future values.

Installation

The Code is written in Python 3.10. If you don't have Python installed you can find it here. If you are using a lower version of Python you can upgrade using the pip package, ensuring you have the latest version of pip. To install the required packages and libraries, run this command in the project directory after cloning the repository:

pip install -r requirements.txt

Execution

streamlit run appName.py

Deployment on Streamlit Cloud

  • Create an account on streamlit
  • Connect your github account with the streamlit account.
  • Create an app by selecting the respective settings such as repository, path of the code etc.

Note: For guidance check here

Technologies Used

Libraries Usage
Numpy Used for numerical computations in python
Pandas Used for file reading and other operations when working with large data.
Sklearn This is a machine learning library for python.
Plotly Interactive data visualization library
TensorFlow Deep Learning library from which model has been built
Streamlit Framework for providing interface of the web app
Datetime For datetime operations
yFinance For fetching stock data

Team

P. Sandeep Murthy

LICENSE

MIT LICENSE

Disclaimer

This program is just for educational purpose and not for financial use purposes.