We were very inspired by the individuals who specialized to combine finance with technology, creating a new way to manage finances. Thus, we wanted to begin our own experiences into this matter by participating in this hackathon, constructing financial software that could analyze the stock market.
What it does
Our web application takes a user input of a stock symbol in the S&P 500 and displays a short-term sentiment and trend analysis of that stock, along with a recommendation as to whether or not the stock is likely to increase or decrease in price.
How we built it
Our web application is built with Python and Flask. We created prototype designs in Figma and then converted those designs into HTML and CSS along with flask templates for common components across all our webpages. In order to perform stock sentiment analysis, we used the tweepy library to view the current tweets for a specific stock and then used the natural language processor library, textblob, to analyze the sentiment of the tweets. We combined the results of our sentiment analysis with trends analysis of the stock's recent price action, using a moving average crossover strategy to determine the approximate trend of the stock price. We obtained historical stock data using AlphaVantage's API and then used pandas dataframes to analyze the trends and moving average values. Finally, the frontend and backend were connected using POST and GET requests written in Flask so a user could input a stock ticker and be displayed an analysis of the stock.
Challenges we ran into
Using APIs and creating a good front-end interface were our greatest challenges. However, slowly through the learning-process, we managed to overcome these issues and solidify our project.
Accomplishments that we're proud of
We are truly proud of how much we learned about the front-end, APIs, twitter analysis, and natural language processing with no prior experience. We managed to put everything together within the time limit, while satisfying our own personal expectations for our project.
We are also proud of Richard saying "What's up programmers", before we all broke into laughter in one of our video takes.
What we learned
We learned many programming techniques and algorithms in our attempt to complete this project. Our experience with Flask in the front-end interface was something new for all of us due to our overall strength with programming the back-end. Backend was also something new to us, where we learned network requests & APIs, and how to connect the backend to the frontend for a dynamic web application. Our strategies in analyzing the stocks through programming was also something we learned from slowly experimenting throughout the course of these two days.
What's next for Profiters Trading Bot
We plan on continuing this project by implementing the buy/sell functionality to automate the trading bot, and improving the sentimental analysis by incorporating machine learning. In addition, we will be deploying it to the web so that it is no longer locally run. We also plan to add historical backtesting and more customizability of the strategy, i.e. changing the moving average periods or time periods of the tweet sentiment analysis.