metadata
title: Finbert Market Evaluation
emoji: 🚀
colorFrom: red
colorTo: red
sdk: docker
app_port: 8501
tags:
- streamlit
- finbert
- sentiment-analysis
- finance
- machine-learning
pinned: false
short_description: Evaluate FinBERT’s sentiment predictions against market data
license: mit
🚀 FinBERT Market Evaluation
Evaluate how well FinBERT's financial sentiment predictions match actual stock market movements.
What It Does
Enter financial news → Get FinBERT sentiment → Compare with actual stock price movement → See if the prediction was right.
How to Use
- Paste financial news (e.g., "Apple reports record earnings")
- Enter stock ticker (e.g., AAPL)
- Select news date (when the news was published)
- Get results - see if sentiment matched price movement
Key Features
- Smart thresholds - Uses each stock's volatility (no rigid ±1% rules)
- Same-day + 24h analysis - Immediate reaction + follow-through
- Graded scoring - Not just right/wrong, but how right (0-1 score)
- Market context - Compares stock vs overall market performance
Example
News: "Tesla announces new factory in Germany"
- FinBERT says: Positive sentiment (85% confidence)
- Stock moved: +4.2% same day
- Evaluation: ✅ Aligned (sentiment matched direction)
- Score: 0.91/1.0 (excellent alignment)
Installation
pip install -r requirements.txt
streamlit run src/streamlit_app.py
Limitations
- Research tool only (not for trading)
- 30-second rate limit between requests
- Needs 1+ day old news (requires market data)
- Uses Yahoo Finance (free but limited)
Build the Docker image
docker build -t finbert-market-eval .
Run locally to test
docker run -p 8501:8501 finbert-market-eval