From sentiment-analysis
This skill should be used when the user asks about StockTwits sentiment, trader bullish/bearish ratio, StockTwits stream, real-time trader sentiment, what traders are saying on StockTwits, or the StockTwits signal for a stock.
npx claudepluginhub tradeinsight-info/investment-analysis-skills --plugin sentiment-analysisThis skill uses the workspace's default tool permissions.
Fetch StockTwits sentiment for a ticker by scraping the symbol page, tally
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Analyzes multiple pages for keyword overlap, SEO cannibalization risks, and content duplication. Suggests differentiation, consolidation, and resolution strategies when reviewing similar content.
Share bugs, ideas, or general feedback.
Fetch StockTwits sentiment for a ticker by scraping the symbol page, tally bullish vs bearish self-labeled messages, and produce a channel score from -10 to +10.
WebFetch the StockTwits symbol page with this prompt:
"Extract: (1) bullish message count or percentage, (2) bearish message count or percentage, (3) total labeled messages, (4) any overall sentiment label (e.g. Bullish, Bearish, Extremely Bullish, Extremely Bearish, Neutral), (5) up to 2 recent message bodies labeled Bullish and up to 2 labeled Bearish."
https://stocktwits.com/symbol/{ticker}
If that page returns no useful data, retry with:
https://stocktwits.com/symbol/{ticker}/sentiment
If raw counts are available (bullish_count and bearish_count):
score_method = "ratio"total_labeled = bullish_count + bearish_countIf only a percentage is available (e.g. "73% Bullish"):
bullish_count = round(pct × total_labeled), bearish_count = total_labeled - bullish_countscore_method = "pct-derived"If only a qualitative label is available (no counts or percentages):
score_method = "label-derived"| StockTwits Label | stocktwits_score |
|---|---|
| Extremely Bullish | +8.5 |
| Bullish | +5.0 |
| Neutral | 0.0 |
| Bearish | -5.0 |
| Extremely Bearish | -8.5 |
If the page fails to load, returns an error, or yields no sentiment data:
Set stocktwits_available = false.
Note: "StockTwits: Page unavailable or no sentiment data found"
stocktwits_score = (bullish_count - bearish_count) / total_labeled × 10
Use the mapped score from the label table in Step 2. Set total_labeled = N/A.
Extract the most recent Bullish-labeled message body and most recent Bearish-labeled message body from the page content. If unavailable, note "Sample unavailable".
STOCKTWITS SENTIMENT RESULT
Ticker: {ticker}
Channel Score: {stocktwits_score} / 10
Signal: {label per signal bands below}
Score Method: {ratio | pct-derived | label-derived}
Labeled Messages: {total_labeled} ({bullish_count} bullish / {bearish_count} bearish)
Sample Bullish: "{message_body}"
Sample Bearish: "{message_body}"
If unavailable:
STOCKTWITS SENTIMENT RESULT
Ticker: {ticker}
Channel Score: N/A
Signal: N/A
Note: {reason}
Signal bands (applied to stocktwits_score):