Skip to content

Latest commit

 

History

History
50 lines (37 loc) · 2.44 KB

README.md

File metadata and controls

50 lines (37 loc) · 2.44 KB

pyFin-Sentiment

Documentation Status CI (tests) Code style: black License: MIT

A library for sentiment analysis of financial social media posts

Sentiment Analysis of Financial Social Media Posts

This library can help you extract market sentiment from short social media posts. Trained on data from Twitter, it can classify sentimetn into three classes: Bullish, Bearish, Neutral/No Sentiment. Note that we need to differentiate between market sentiment and general sentiment. Consider this example:

💬 Nice, already made loads of money this morning and now im shorting $AAPL, let's goooo!

While the general sentiment in the text is positve, the market sentiment is negative as the author is shorting a stock. Therefore, ...

  • If you are looking for a generic sentiment model that works well on social media content, take a look at VADER or TwitterRoBERTa
  • If you are looking for a sentiment analysis models that excels on new headlines sentiment analysis, check out FinBERT
  • Otherwise, stay here 🙃

Installation

It's as easy as...

pip install pyfin-sentiment

Documentation

📚 The documentation lives on pyfin-sentiment.readthedocs.io

Example

from pyfin_sentiment.model import SentimentModel

# the model only needs to be downloaded once
SentimentModel.download("small")

model = SentimentModel("small")
model.predict(["Long $TSLA!!", "Selling my $AAPL position"])
# array(['1', '3'], dtype=object)

We use the following conventions for mapping sentiment classes:

Class Name Meaning
1 Positive, Bullish
2 Neutral, Uncertain
3 Negative, Bearish