How the sausage is made

Methodology

PULSE answers a simple FinTwit question: if the timeline had a CNN Fear & Greed meter, what would it read? The production version scores a rolling window of market posts on X. This demo runs a deterministic engine so the product is usable without API keys.

  1. Universe — posts that mention liquid tickers, indices, or crypto plus a finance lexicon (squeeze, dump, priced-in, 0DTE, pivot, cooked).
  2. Lexicon tilt — bullish and bearish phrases netted per post, then clipped so all-caps rage does not dominate.
  3. Engagement weight — likes and reposts scale a take. Loud is not smart, but loud is what the crowd hears.
  4. Breadth — percent of tickers with a net-bullish score. A melt-up in three names is not the same as a healthy tape.
  5. Options chatter — calls, puts, gamma, and 0DTE talk as a greed overlay.
  6. Macro anxiety — Fed, CPI, war, and recession language, inverted into the composite so panic pulls the needle left.

The composite is scaled 0–100 and bucketed: Extreme Fear (<20), Fear (20–40), Neutral (40–60), Greed (60–80), Extreme Greed (>80). The contrarian note treats extremes as a crowd-positioning signal, not a trade ticket.

Wire a live X feed into /api/sentiment and replace the seeded engine when you have credentials. Until then the desk still ticks — same UI, honest about the corpus.