CommBadger
Language Used: Python3
Source Code: GitHub Link
Goal
The goal of this product, CommBadger, is to provide users with a platform where they can see stocks of different companies and can check live trends of where the stock market is going. The successful prediction of a stock’s future could yield significant profit.
Tools & Libraries
- Pickle
- MongoDB
- Tensorflow
- Python tkinter (GUI)
- Numpy
- Matplotlib
- Fuzzy Testing
- Sentiment Analysis
- Web Scraping
- Twitter API
Description
CommBadger is a stock predictor tool which provides user with an insight of how the stock market is doing and how it would do in the future. The product was trained on data sources from “News Articles”, “Tweets” & “Stock Prices”. The news articles were scraped and saved in csv file format and Twitter dataset was used csv files for multiple csv files are used for the different stock prices.
Interfaces
Initial Interface
Search “View Graph” Interface
Market “Company Name” Interface
Interface Levels
Subsystem Diagrams
Web Scraper Subsystem Diagram
Model Training Subsystem Diagram
Sequence Diagrams
Application Launch Sequence Diagram
Update Sequence Diagram
Search Sequence Diagram
Activity Diagrams
Update Activity Diagram
Search Activity Diagram
Results
Here is a sentiment bar graph of “Google - GOOGL” versus Tweets data (20 Tweets):
Similarly, this is what News vs sentiment bar graph looks like for “Google - GOOGL” (20 News Articles):
Apple
This is a fitted RBF Kernel Graph for “Apple - AAPL”:
Candlestick Graph for “Apple - APPL”:
EBay
Candlestick Graph for “EBay”:
References
To read Software Requirement Specification (SRS) Document about this product please click this link.
To read the Software Design Specification (SDS) Document about this product please click this link.
SRS References
Stock Market Explanation
- How The Stock Exchange Works (For Dummies) - YouTube Video
- How the Stock Market Works in 5 Minutes - YouTube Video
- STOCK EXCHANGE EXPLAINED IN 2 MINUTES - YouTube Video
Stock Prediction
Others
You can fork the project on GitHub to add more features to the project.