social-media-intelligence
# social-media-intelligence This Claude Code skill extracts financial sentiment and trading signals from Twitter/X, Telegram, Discord, and Reddit by aggregating posts from different user types including analysts, fund managers, crypto influencers, and retail traders. Use it to identify early-stage market movements, track institutional positioning through social commentary, monitor real-time reactions to macroeconomic events, and assess community health for crypto projects before price action reaches traditional markets.
git clone --depth 1 https://github.com/HKUDS/Vibe-Trading /tmp/social-media-intelligence && cp -r /tmp/social-media-intelligence/agent/src/skills/social-media-intelligence ~/.claude/skills/social-media-intelligenceSKILL.md
# Social Media Intelligence
> This skill integrates financial-intelligence collection methods and quantitative applications across Twitter/X, Telegram, Discord, and Reddit.
> Inspired by `himself65/finance-skills` modules such as `discord-reader`, `telegram-reader`, and `twitter-reader`.
---
## 1. Overview of the Four Major Financial Social Platforms
### 1.1 Twitter/X — The FinTwit Ecosystem
**Core roles**
| Role Type | Representative Account Traits | Signal Value |
|---------|------------|---------|
| Sell-side analyst | Institutional backing, dense posting around earnings | Medium, somewhat lagging |
| Fund manager | Holdings views, industry judgment | High, but mixed with subjective opinion |
| Macro commentator | Fed interpretation, macro-data reaction | High, a good sentiment barometer |
| Crypto KOL | On-chain interpretation, project endorsement | Highly volatile, high manipulation risk |
| Retail noise | Meme spread, herd sentiment | Contrarian signal value at extremes |
**Core FinTwit circles**
- `$TICKER` cashtag system directly maps discussion to the asset
- Earnings-season sentiment patterns before and after reports
- Real-time reaction speed to policy / macro events, often 15-60 minutes ahead of traditional media
---
### 1.2 Telegram — The Core Venue for Crypto Intelligence
**Channel types**
| Channel Type | Content Traits | How to Use |
|---------|---------|---------|
| Signal channels | Specific buy/sell levels, stop-loss / take-profit | Use as a sentiment thermometer, not for blind copy-trading |
| Research push channels | Institutional PDF reports, on-chain data | Aggregate information and extract key numbers |
| Macro flash channels | Real-time interpretation of FOMC, CPI, etc. | Event-driven signals |
| Official project channels | Tokenomics updates, partnership announcements | Potential alpha, but requires filtering |
| Whale alert channels | Large on-chain transfer alerts | Capital-flow signal |
---
### 1.3 Discord — Quant Communities and Project Ecosystems
**Important community types**
- Quant / DeFi research communities such as Degen Spartan and Messari Research
- Official crypto project Discords with governance discussion and development progress
- Trader communities focused on options flow and on-chain analysis
- NFT / GameFi projects with floor-price alerts and activity monitoring
**Distinctive value of Discord**
- Community activity directly reflects project health
- Developer channels such as `#dev` and `#build` show implementation activity
- Governance participation indicates the willingness of token holders to stay involved
---
### 1.4 Reddit — A Barometer of Retail Sentiment
**Core subreddits**
| Subreddit | Core User Base | Main Signal |
|-------|---------|---------|
| r/wallstreetbets | Retail options traders | Meme-stock heat, abnormal options chatter |
| r/investing | Value-oriented retail investors | Long-horizon sentiment, ETF flow |
| r/cryptocurrency | Crypto retail | BTC / ETH cycle sentiment |
| r/stocks | General stock discussants | Earnings-season sentiment |
| r/options | Options-strategy community | Unusual IV-related topics |
---
## 2. Data Collection Methods
### 2.1 Twitter/X Data Collection
**Tooling options**
```python
# Option A: Official API v2 (paid, basic tier starts at $100/month)
# Best for: production environments where compliance is the priority
from tweepy import Client
client = Client(bearer_token=os.getenv("TWITTER_BEARER_TOKEN"))
# Search tweets discussing a cashtag over the last 7 days
def fetch_cashtag_tweets(ticker: str, max_results: int = 100) -> list[dict]:
"""Collect Twitter discussion data for a given ticker.
Args:
ticker: Ticker symbol such as AAPL or BTC
max_results: Max number of returned tweets, between 10 and 100
Returns:
List of tweets, each containing id / text / created_at / public_metrics
"""
query = f"${ticker} -is:retweet lang:en"
tweets = client.search_recent_tweets(
query=query,
max_results=max_results,
tweet_fields=["created_at", "public_metrics", "author_id"],
)
return [t.data for t in tweets.data or []]
# Option B: ntscraper (unofficial, free, rate-limited)
# Best for: research / historical backtesting
# pip install ntscraper
from ntscraper import Nitter
scraper = Nitter()
tweets = scraper.get_tweets("$AAPL", mode="term", number=50)
```
**Data schema (Twitter JSON Schema)**
```json
{
"platform": "twitter",
"collected_at": "2026-03-29T08:00:00Z",
"query": "$AAPL",
"items": [
{
"id": "tweet_id_string",
"text": "tweet text",
"created_at": "ISO8601 timestamp",
"author": {
"id": "user_id",
"username": "handle",
"followers_count": 50000,
"verified": false
},
"metrics": {
"like_count": 120,
"retweet_count": 45,
"reply_count": 23,
"quote_count": 8
},
"sentiment_score": null,
"tags": ["$AAPL", "#earnings"]
}
]
}
```
**Suggested collection frequency**
- Earnings season / major events: real time, poll every 5 minutes
- Routine monitoring: hourly
- Historical backfill: daily batch
---
### 2.2 Telegram Data Collection
**Tooling**
```python
# Telethon — official MTProto client, requires API_ID + API_HASH
# pip install telethon
from telethon.sync import TelegramClient
from telethon import functions
API_ID = int(os.getenv("TELEGRAM_API_ID"))
API_HASH = os.getenv("TELEGRAM_API_HASH")
async def fetch_channel_messages(
channel_username: str,
limit: int = 200,
offset_date: datetime | None = None,
) -> list[dict]:
"""Collect historical messages from a Telegram channel.
Args:
channel_username: Channel username without @, e.g. "whale_alert"
limit: Maximum number of messages
offset_date: Start time to backtrack from
Returns:
List of messages containing id / text / date / views / forwards
"""
async with TelegramClProfessional finance research toolkit — backtesting (7 engines + benchmark comparison panel), factor analysis, Alpha Zoo (452 pre-built alphas across qlib158/alpha101/gtja191/academic), options pricing, 77 finance skills, 29 multi-agent swarm teams, Trade Journal analyzer, and Shadow Account (extract → backtest → render) across 7 data sources (tushare, yfinance, okx, akshare, mootdx, ccxt, futu).
ADR/H-share/A-share cross-listing premium analysis — track pricing gaps between US-listed ADRs, HK-listed H-shares, and A-shares for arbitrage signals, dual-listing valuation, and delisting risk assessment.
AKShare financial data aggregator (18k+ stars). Free, no API key. Covers A-shares, US, HK, futures, macro, forex. Primary fallback for tushare and yfinance.
Browse and bench the bundled alpha zoos — prebuilt cross-sectional factor libraries (Kakushadze 101, GTJA 191, Qlib 158, Fama-French / Carhart). Use when the user asks "which alphas exist", wants metadata on a named alpha, or wants to run IC/IR on a whole zoo over a universe.
A 股 ST/*ST 风险预测框架 — 基于最新中报/三季报或业绩预告/快报,预测下一财年是否会因营收、利润、净资产、分红不达标而被风险警示,并将新浪监管处罚记录作为独立证据面纳入风险等级。仅适用于 A 股,不预测财务造假。
Asset allocation theory and optimizer usage — MPT / Black-Litterman / risk budgeting / all-weather strategy, including guides for 4 optimizers and rebalancing rules.
Diagnose failed or underperforming backtests, locate the root cause, and fix the issue
Behavioral finance applications: theories of overreaction and underreaction, behavioral explanations for momentum and reversal, investor sentiment cycles, cognitive-bias checklists, and debiasing quantitative strategies.