Team Southcoders
presentPynance

A stock tracking app with built in stock prediction using machine learning.

A stock tracking app that predicts the future the price of a stock. Users are able to view stock data, stock graph, stock news and build a stock portfolio which tracks and calculates their Profit/Loss. We have simplified stock tracking and provided machine learning price predictions and the information required for beginners to learn more about the stock they are interested in.

The Team

  • Team member imagePreview: Team member image

    Rory Bush

  • Team member imagePreview: Team member image

    Tayamul Rai

  • Team member imagePreview: Team member image

    Jan Repato

  • Team member imagePreview: Team member image

    Yusuf Haji

Technologies

Technologies section imagePreview: Technologies section image

We used: Backend - Python, Flask, Pandas, Scikit-Learn, Firebase Authentication, Firebase Real-Time Database. Frontend - Javascript, React, Axios, D3.JS, MaterialUI.

We chose Python because it is great for data manipulation, it offers loads of useful libraries (like yFinance, Pandas and Scikit-Learn) and it shares similarites to Javascript which we all have experience using. We used Firebase Authentication and Real-Time Database because it is easy to set up and maintain which is perfect for a small team. We chose React and Javascript for the frontend because we have lots of experience so we would be confident to hit the ground running on the frontend. D3.JS was chosen to build our stock graphs because it is one of the most popular chart libraries so there were lots of documentation to learn and it is incredibly powerful so we could improve and build upon the graph in the future.

Challenges Faced

We faced several challenges including one of the main Python libraries we used stopped working, one of our team members had to move country mid project and we had trouble finding a suitable host for our project. yFinance was the finance data library we used, however, it stopped working but thankfully we checked the pull requests and issues on GitHub and saw that others had similar issues and pull requests were being made. One of our team members had to move countries unexpectadly, which made our job harder but with strong teamwork and constant communication on Slack we were able to push through and complete the project in time. We originally hosted our project on the Render free tier, however, once we added all the data fetching and the machine learning model it become very slow and hard to develop on so we had to find somewhere suitable to host our project without us needing to pay for it.