← ClaudeAtlas

klse-sentimentlisted

Manually refresh KLSE (Bursa Malaysia) retail sentiment from klsescreener's per-stock community comment threads into a local JSON cache the sentiment-cache LLM scorer consumes. The Bursa-native retail leg — fills the gap StockTwits (404s on KLSE) and Reddit (thin r/Bursa_Malaysia) leave. Real, multilingual (English/Chinese/Malay) chatter, no login wall. Manual by design — no cron. REQUIRED before any §4 retail-sentiment read on a KLSE name.
kensongan-prog/trading-advisor · ★ 1 · AI & Automation · score 62
Install: claude install-skill kensongan-prog/trading-advisor
# klse-sentiment — Bursa community-comment sentiment The KLSE-native raw-fetch leg of the §4 retail-sentiment stack — sibling of `stocktwits-sentiment` / `reddit-sentiment` / `hn-sentiment`. klsescreener hosts a per-stock community thread with genuine retail chatter; this scrapes it into a raw cache that the `sentiment-cache` LLM scorer turns into the canonical `sentiment.json` composite. **Why it exists:** for Bursa names the other three legs are usually empty — StockTwits 404s on KLSE codes, Reddit's `r/Bursa_Malaysia` is thin. Before this, KLSE tickers scored `UNKNOWN` (no source data). klsescreener comments fill that slot: no login wall, and it's a site the project already scrapes for quote / news / announcements. ## Endpoint (discovered 2026-07-01 — see notes/learned.md) Full thread: `https://www.klsescreener.com/v2/comments/all/stock/{CODE}` (GET, server-rendered HTML, no auth). The in-page AJAX pager (`/v2/comments/comment/...`) was **deprecated** (commented out, 404s); the "all" page is the live surface and caps at ~26 most-recent comments — fine, since we want recency. ## Usage ```bash python3 .claude/skills/klse-sentiment/klse_sentiment.py # all KLSE in watchlist, 180d window python3 .claude/skills/klse-sentiment/klse_sentiment.py 9431 5099 # specific Bursa codes python3 .claude/skills/klse-sentiment/klse_sentiment.py --days 90 # tighter window python3 .claude/skills/klse-sentiment/klse_sentiment.py --show # print cached values, no fetch pytho