Alternative Data in Finance: Satellite, Social, and Sentiment
Module: Fintech AI | Difficulty: Advanced
Data Sources
| Type | Example | Latency |
|---|---|---|
| Satellite | Parking lot counts | Daily |
| Social | Twitter sentiment | Real-time |
| Web | Job postings | Weekly |
| Transaction | Credit card data | Weekly |
Sentiment Analysis
Alpha from Alt Data
Processing Pipeline
import numpy as np
from textblob import TextBlob
class SentimentAnalyzer:
def __init__(self):
pass
def analyze(self, text):
blob = TextBlob(text)
return {
'polarity': blob.sentiment.polarity,
'subjectivity': blob.sentiment.subjectivity
}
def aggregate_sentiment(self, texts, method='mean'):
sentiments = [self.analyze(t)['polarity'] for t in texts]
if method == 'mean':
return np.mean(sentiments)
elif method == 'median':
return np.median(sentiments)
return sentiments
Research Insight: Alternative data provides unique insights but has low signal-to-noise ratio. The key is combining multiple sources β satellite data alone is weak, but combined with social sentiment and transaction data, it can predict earnings surprises.