Category
FinTech
Inspiration
As a student investor, on busy days, I struggle to find the time to conduct multiple Google searches to find the necessary information about the stocks that I'm invested in. On most days, I just want to take a one-minute high-level look at all of my stocks to ensure I'm not missing out on huge movements. Stock Tracker addresses this need.
What it does
Stock Tracker is a web application that allows you to set up an account and a custom dashboard of the stocks that you want to follow. You can log in and view your saved dashboard at your convenience. Currently, for each of the stocks on the dashboard, the dashboard shows you a graph of the stock's price and simple moving average over the past 30 trading days, the last trading day's simple moving average, the last trading day's closing price, the change in trading volume over the last trading day, and the most recent tweets that mention the stock.
How I built it
I used React, React Redux, and Material-UI to build the client (frontend).
I used Express.js and MongoDB to build the server (backend).
For the stock price data, I used Alpha Vantage and Yahoo Finance. For the tweet data, I used the Twitter API.
Challenges I ran into
The largest challenge I ran into was managing the data from the different APIs. Since I used data from Alpha Vantage and Yahoo Finance for the graphs, I had to make the correct API calls and transform the data to ensure the data points' dates match.
Another challenge was the limits of my Alpha Vantage API key. I can only make a few calls per minute and per day. Therefore, I had to be smart during development about when I needed to make a new API call for testing.
Accomplishments that I'm proud of
I enjoy the interface I created using Material UI. I think the interface is simple and professional. I'm happy that fetching data from the APIs work consistently. I'm also happy that the authentication system works without any bugs (none that I found).
What I learned
This was my first project using external APIs. I learned how to use the Twitter API, the Alpha Vantage API, and the Yahoo Finance downloader. I believe that the Twitter API will especially be useful in future projects.
I also learned a few subtle details about React Redux and React state management while fixing bugs.
What's next for Stock Tracker
In the future, Stock Tracker will have more customizability for the user. It'll allow you to set which technical indicators you want on your dashboard and the conditions under which a stock or a technical indicator would be flagged as 'interesting' or 'alert'.
A feature that I didn't have the chance to finish was sentiment analysis using the tweets. I was in the process of using Google Cloud's Natural Language API to create a sentiment analysis feature, which would display a sentiment score between -1 and 1 depending on whether the tweets are bullish or bearish regarding the stock.
Built With
- javascript
- mongodb
- mongoose
- node.js
- react
- react-redux
Log in or sign up for Devpost to join the conversation.