A Python tool that collects recent cryptocurrency news from NewsData.io (free tier) and public RSS feeds, applies VADER sentiment analysis to score daily market tone, and correlates sentiment with next-day price movements for BTC, ETH, and SOL.
Cryptocurrency prices are highly sensitive to news, social hype, and media narratives. Without systematic quantification, it's challenging to distinguish noise from meaningful signals in a 24/7 global market.
- Aggregated news articles from NewsData.io (free tier, keyword-targeted crypto news) and RSS feeds (Cointelegraph, CoinDesk, CryptoSlate, etc.)
- Used VADER NLP to compute compound sentiment scores (-1 very negative → +1 very positive) on titles, summaries, and content
- Aggregated to daily level (mean sentiment + article count)
- Merged with daily price data (Binance via CCXT / CoinGecko fallback)
- Calculated correlations between sentiment and next-day returns
- Strong correlation (+0.878) between daily news sentiment and next-day BTC returns
- Positive sentiment spikes (e.g. +0.281 on Feb 13) preceded meaningful gains (BTC +4.01%, ETH +5.22%, SOL +7.69% next day)
- Fading/neutral-to-negative sentiment (Feb 14–16) aligned with reduced upside → pullback (BTC -1.50%, ETH -5.83% on Feb 16)
- Rising article volume (up to 52 articles on Feb 16) acted as a fear/discussion indicator during the correction
- Data collection: feedparser (RSS), requests + NewsData.io API, python-dotenv (key management)
- Sentiment analysis: vaderSentiment
- Processing & analysis: pandas, numpy
- Visualization: Plotly (interactive charts)
- Price data: ccxt (Binance), pycoingecko (fallback)
01_data_collection.ipynb– NewsData.io + RSS + price fetching02_sentiment_scoring.ipynb– VADER scoring & aggregation03_correlation_analysis.ipynb– Merge, correlation, insightsdaily_sentiment_vader.csv– Daily sentiment scoresdaily_prices_btc_eth_sol.csv– Price historymerged_sentiment_prices_final.csv– Combined datasetsentiment_vs_btc_next_day_return.html– Interactive Plotly chartapp.py– Streamlit dashboard
Interactive Streamlit app showing:
- Sentiment vs next-day returns chart
- Daily sentiment trend
- Correlation table
- Recent data table
- Download buttons for CSVs