Inspiration
With the accelerating development of new machine learning models, we thought it would be interesting to harness the power of modern natural language processing in order to retrieve the sentiment of several users from large social networking sites on stocks and other financial products. Since the influence of these sites has already been demonstrated in 2021 with the sudden rise of GameStop stock due to a sub-Reddit, we thought it would be a good idea to use modern tools to tap into these sites.
What it does
The site allows the user to input multiple stock tickers of their choice. It then runs a query to Reddit, a network of online communities, and parses through posts for relevant content. This content is then ran through a sentiment analysis model, leaving us with data we used to generate a rating for each stock. An appealing graph of the stock's previous closing prices along with a company description is also provided.
How we built it
The intuitive frontend portion of this application was built with React, combined with Tailwind.Css for a robust styling approach. In terms of the backend, we built it primarily using Flask REST endpoints to handle the routing for the external API calls: Yahoo Finance for the graphs, and Alpha Vantage for company background. The scraper and NLP portion of the application was built mainly using python, with the use of the PRAW library to scrape for relevant Reddit posts and the roBERT-a base model fine tuned for sentiment analysis.
Challenges we ran into
The primary challenged we ran into during the development of this project stemmed from the extensive package dependencies that were tied to our tech stack. This caused our preparation phase to be much longer than we'd have hoped for. As a result, version control posed a hurdle due to discrepancies in various versions of source modules and packages - causing integration to be challenging, towards the end of the project .
Accomplishments that we're proud of
Some of our biggest accomplishments are that, although we had some trouble initially, we were able to seamlessly leverage several different technologies to achieve the minimum viable product to accomplish all the goals that we had hoped for.
What we learned
This project really drove home just how crucial it is to have solid planning and thorough research in place before you even think about writing that first line of code. This initial legwork was key in laying out a clear plan and building a strong foundation for everything that came after. It helped us get a good grasp on what we needed to do, pick the right tools for the job, and spot any potential roadblocks early on, making the rest of the development process a lot smoother.
What's next for Stock Vibes
To improve our application we would like to move to other social networking sites, like X/Twitter, and run better queries to get even more accurate sentiment analysis scores and overall ratings. Additionally, we would like to improve user experience by potentially redesigning our UI and adding educational notes.
Log in or sign up for Devpost to join the conversation.