Stock Market Sentiment Analysis using NLP
Project Description
To buy or not to buy? To sell or not to sell? Investors are making these decisions daily with imperfect information. The market is dynamic, with many factors influencing its behavior. The sheer volume of information prevents a user from gathering much of what is needed to make an informed decision.
- Identify appropriate sources of information regarding stock prices and trends as well as general market trends.
- Organize and clean the data.
- Explore semantic analysis techniques and implement a model that will support predicting short-term and long-term behaviors of specific stocks or classes of stocks.
- Allow the user to adjust how the data and results are displayed.
Gantt Chart
Philosophy Statement
Initially declaring myself as a Biomedical Major, I would be surprised if someone told me that I was now taking my Computer Science Capstone here at St. Norbert College. Like every other kid, I was really fascinated by technology in general, especially smartphones and desktops. After being uncertain of where my future in Biology would take me, I decided to pivot my area of study to Computer Science and the journey ever since has been nothing short of rewarding. The ability to bring into reality something you just think of is something that you really begin to appreciate the more you do and is something that still amazes me to this day. Every project, every program and every line of code has taught me to problem solve in creative and innovative ways and has fundamentally changed the way I approach situations in my everyday life.
Tinto de Verano
My website is live! Found a template online that I was then able to modify the HTML of to make it mine. Currently looking into finding reliable APIs and the vision of what I want my final project to look like. I hope this allows me to settle on a programming language to use as well as a framework. I do want to come up with a workflow chart by next week and also hopefully start playing around with a few models to get started. I am a little worried about the front end of things, but we'll cross that bridge when we get there.
Milwaukee
This week I worked on familiarizing myself with NLP by working on a small scale project that used a Hugging Face model, specifically FinBERT (https://arxiv.org/pdf/1908.10063), that was pre-trained to analyze the sentiment of financial text. It was built by further training the BERT language model in the finance domain, using a large financial corpus and thereby fine-tuning it for financial sentiment classification. I pulled market data on specific companies by using their tickers and ran the model on the summary of the news articles that mentioned said company. I then aggregated the sentiment across all articles that I analyzed to output a final score.
Snoopy
After settling on the my framework of choice, I decided to spend time familiarizing myself working with Svelte. I did so by making a little project that helped me understand the component-based structure, syntax and reactivity that comes with Svelte as well as working with .svelte files. I wish I was able to expose myself to FastAPI as well, but I wasn’t able to. And so, that’s what I plan on doing this week.
Roulette
I spent this last week finding more direction with the specifics of my project which involved understanding how encoder-only models (BERT) work. I looked into concepts such as word embeddings, positional encoding, self-attention and finally context-aware embeddings. The model I will be using - FinBERT, is the BERT language model with a dense layer attached to the end that helps with the classification of the set of tokens into three categories - positive, negative and neutral. I was able to get teh source code for FinBERT which means that I can further fine tune this model to achieve a specific task. I could do this by tacking on more layers that take the output of FinBERT and use it as the input.
Sand Dunes
Proin gravida nibh vel velit auctor aliquet. Aenean sollicitudin, lorem quis bibendum auctor, nisi elit consequat ipsum, nec sagittis sem nibh id elit.
- Illustration
Minimalismo
Quisquam vel libero consequuntur autem voluptas. Qui aut vero. Omnis fugit mollitia cupiditate voluptas. Aenean sollicitudin, lorem quis bibendum auctor.
- Branding
- Product Design
Resume