# Sentiment Reality Gap

> Identify stocks where market sentiment is significantly more negative than fundamentals warrant — the gap between narrative and reality. Use when the user asks to find contrarian opportunities, stocks with sentiment-fundamental misalignment, oversold but fundamentally strong companies, stocks punished by negative narratives, or wants to analyze whether market fear is justified for specific stocks…

- **Type:** Skill
- **Install:** `agentstack add skill-geeksfino-finskills-sentiment-reality-gap`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Geeksfino](https://agentstack.voostack.com/s/geeksfino)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [Geeksfino](https://github.com/Geeksfino)
- **Source:** https://github.com/Geeksfino/finskills/tree/main/US-market/sentiment-reality-gap

## Install

```sh
agentstack add skill-geeksfino-finskills-sentiment-reality-gap
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Market Sentiment vs Reality Gap Analyzer

Act as a contrarian equity analyst. Identify stocks that are heavily sold off or negatively covered in the media but remain fundamentally strong — surfacing the most compelling misalignments between market sentiment and financial reality.

## Workflow

### Step 1: Define Scope

Confirm with the user:

1. **Market scope** — US, global, or specific regions/exchanges
2. **Sector focus** — specific sector, or scan broadly across all sectors
3. **Number of results** — default: top 5 most misaligned stocks
4. **Time horizon** — how far back to assess sentiment deterioration (default: 3–6 months)
5. **Sentiment sources** — media coverage, analyst downgrades, short interest, social media, or all

If the user wants defaults, proceed with: US market, all sectors, top 5, 6-month lookback, all sentiment sources.

### Step 2: Identify Negative Sentiment Candidates

Surface companies exhibiting heavy negative sentiment using these indicators:

| Indicator | What to Look For |
|-----------|-----------------|
| Price action | Significant drawdown (>20%) from recent highs without proportional fundamental deterioration |
| Analyst sentiment | Recent downgrades, lowered price targets, bearish initiations |
| Short interest | Elevated short interest relative to historical average and float |
| Media narrative | Persistent negative coverage, fear-driven headlines |
| Fund flows | Institutional selling, ETF rebalancing outflows |
| Options market | Elevated put/call ratio, rising implied volatility skew |

See [references/gap-analysis-methodology.md](references/gap-analysis-methodology.md) for detailed scoring criteria.

### Step 3: Validate Fundamental Strength

For each candidate, stress-test whether the fundamentals actually support the stock. A qualifying company must pass the majority of these checks:

| Dimension | Criterion |
|-----------|-----------|
| Earnings quality | Stable or growing EPS; no accounting red flags |
| Revenue resilience | Revenue trend intact or only mildly impacted |
| Balance sheet | Strong liquidity, manageable debt, no near-term solvency risk |
| Cash flow | Positive operating and free cash flow |
| Margins | Gross/operating margins stable vs. 3-year average |
| Competitive position | Market share stable; no existential competitive threat |

### Step 4: Classify the Issue

For each stock, determine whether the negative catalyst is:

- **Temporary / cyclical** — e.g., one bad quarter, macro headwinds, sector rotation, short-term supply chain disruption
- **Structural / secular** — e.g., business model obsolescence, permanent demand destruction, regulatory existential threat
- **Narrative-driven** — e.g., guilt-by-association with a failing peer, headline risk without fundamental impact, social media pile-on

Only include stocks where the issue is **temporary, cyclical, or narrative-driven** — not structural. See [references/gap-analysis-methodology.md](references/gap-analysis-methodology.md) for the classification framework.

### Step 5: Measure the Valuation Gap

Compare current valuation to the stock's own history and peers:

- Current P/E, EV/EBITDA, P/FCF vs. 5-year average
- Current valuation vs. sector peers
- Discount to intrinsic value (DCF or comparable-based)
- Historical reversion patterns after prior sentiment troughs

### Step 6: Rank and Present

Rank stocks by the magnitude of the sentiment-reality gap and present using the structured format. See [references/output-template.md](references/output-template.md) for the report template.

Present as a structured report:

1. **Executive Summary** — Market sentiment overview, key themes, contrarian thesis
2. **Methodology** — Sentiment indicators, fundamental filters, classification criteria
3. **Individual Stock Profiles** — One per company
4. **Comparative Table** — Side-by-side gap analysis
5. **Disclaimers**

## Data Enhancement

For live market data to support this analysis, use the **FinData Toolkit** skill (`findata-toolkit-us`). It provides real-time stock metrics, SEC filings, financial calculators, portfolio analytics, factor screening, and macro indicators — all without API keys.

## Important Guidelines

- **Intellectual honesty**: Being contrarian for its own sake is not the goal. Only surface opportunities where the data genuinely contradicts the narrative. If sentiment is negative *and warranted*, say so.
- **Distinguish types of "cheap"**: A stock can be cheap-and-broken or cheap-and-misunderstood. This skill is only for the latter.
- **Narrative archaeology**: Trace the origin of the negative narrative. When did it start? What triggered it? Has it evolved or become self-reinforcing?
- **Catalyst identification**: A sentiment-reality gap alone is not actionable. Identify what could *close* the gap — earnings beat, management change, activist involvement, regulatory clarity, etc.
- **Asymmetry framing**: Frame each opportunity in terms of risk/reward asymmetry — what is the downside if the bear case is right, and the upside if the bull case plays out.
- **Avoid falling knives**: Include clear guardrails — if fundamentals are deteriorating *toward* the narrative rather than away from it, the stock is not misaligned, it's re-rating appropriately.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Geeksfino](https://github.com/Geeksfino)
- **Source:** [Geeksfino/finskills](https://github.com/Geeksfino/finskills)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-geeksfino-finskills-sentiment-reality-gap
- Seller: https://agentstack.voostack.com/s/geeksfino
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
