Skip to content

The NIFTY 50 is a benchmark Indian stock market index that represents the weighted average of 50 of the largest Indian companies listed on the National Stock Exchange. We use real-time dataset to calculate the stock predictions for future years.

Notifications You must be signed in to change notification settings

Karthik-02/nifty-50-MLproject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Problem Definition:

                                 The NIFTY 50 is a benchmark Indian stock market index that represents the weighted average of 50 of the largest Indian companies listed on the National Stock Exchange. So we have the real-time dataset of that 50 companies in NSE ranging from the year when they become a largest companies and till 2021. We have tried to predict the trend of the market after 2019 by using 2021 as the predictable year using ARIMA (Auto Regressive Integrated Moving Average) Model. We have also done a download/print the result as pdf via javascript.

Functional Requirements:

• Data Collection • Data Processing • Training and Testing • Modeling • Predicting • Rendering
• Download/Print the prediction

Technical Specification:

• Libraries Used for Building Model and Prediction :  Numpy  Pandas  Matplotlib  Sklearn, Statsmodels

• Libraries Used for GUI :  Flask  Render_template  Url_for  Request

• Programming Languages Used :  Python  HTML  CSS  JS

• Functional Programs:

  1. App.py
  2. Home.html
  3. Result.html

Functional Diagram:

image

System Components/Modules:

  1. Choice From the User: By using flask, the choice of the company to predict is given by the user. This contains several buttons that contained inside cards that represent some name and basic details of the company. Here the dataset path will be sent to the server program app.py.

  2. Importing Libraries: Inside app.py , the path is passed as an argument to the function predict() that will call another function stock() that will predict the stock by using libraries such as pandas, numpy, matplotlib, statsmodels etc.,

  3. Data Processing: The data undergoes pre-processing like cleaning the dataset and removing null and unwanted values.

  4. Test , Train Data: We have separated the test and train data by taking the test data upto the year 2019 and train data from 2021.

  5. Built ARIMA Model: An autoregressive integrated moving average model, a statistical analysis model that used time series data to better understand the dataset or predict future values. The model is built and Graph is displayed.

Output & Visualization: We have given various plots for each step by step process and we also have an option to print/download the generated result as pdf. image image image image image

About

The NIFTY 50 is a benchmark Indian stock market index that represents the weighted average of 50 of the largest Indian companies listed on the National Stock Exchange. We use real-time dataset to calculate the stock predictions for future years.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published