Agent skill

Sentiment Reality Gap

by Geeksfino in Geeksfino/finskills

Identify stocks where market sentiment is significantly more negative than fundamentals warrant — the gap between narrative and reality.

Apache-2.0Auto-check passedBusiness, Finance & HR

Install Sentiment Reality Gap

skills CLI
$ npx skills add Geeksfino/finskills --skill sentiment-reality-gap -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Geeksfino/finskills sentiment-reality-gap --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Geeksfino/finskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/US-market/sentiment-reality-gap .claude/skills/sentiment-reality-gap && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sentiment-reality-gap
GitHub stars
282
Token cost
~1.4k tokens
SKILL.md length
651 words
Files
4 (incl. references)
Skills in repo
30
Repo updated
First seen
Licence
Apache-2.0

At a glance

Identify stocks where market sentiment is significantly more negative than fundamentals warrant — the gap between narrative and reality.

  • Works in 6 steps: Define Scope → Identify Negative Sentiment Candidates → Validate Fundamental Strength → …
  • The user asks to find contrarian opportunities
  • SKILL.md covers Workflow, Data Enhancement and Important Guidelines
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Sentiment Reality Gap is an agent skill from Geeksfino/finskills. 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 or sectors.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/gap-analysis-methodology.md` and `references/output-template.md`).

It sits in Business, Finance & HR, covering Stock and market analysis. The repository describes itself as: Financial engineering and risk/compliance skills for agents. The licence is Apache-2.0.

When your agent uses it

  • The user asks to find contrarian opportunities
  • Stocks with sentiment-fundamental misalignment
  • Oversold but fundamentally strong companies
  • Stocks punished by negative narratives

Example prompts

  • “/sentiment-reality-gap”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Define Scope
  2. Identify Negative Sentiment Candidates
  3. Validate Fundamental Strength
  4. Classify the Issue
  5. Measure the Valuation Gap
  6. Rank and Present

What it can do on your machine

Read from SKILL.md and the folder at commit 8722415. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sentiment Reality Gap loads about 1.4k tokens when it runs, and up to ~5k if it reads all its reference files. Until then it costs about 108 tokens; SKILL.md has 651 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~108
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Geeksfino/finskills at commit 8722415, republished under its Apache-2.0 licence (© Geeksfino). 651 words, ~1,438 tokens.

Download SKILL.mdSave it as .claude/skills/sentiment-reality-gap/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
sentiment-reality-gap
description
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 or sectors.
license
Apache-2.0

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:

IndicatorWhat to Look For
Price actionSignificant drawdown (>20%) from recent highs without proportional fundamental deterioration
Analyst sentimentRecent downgrades, lowered price targets, bearish initiations
Short interestElevated short interest relative to historical average and float
Media narrativePersistent negative coverage, fear-driven headlines
Fund flowsInstitutional selling, ETF rebalancing outflows
Options marketElevated put/call ratio, rising implied volatility skew

See 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:

DimensionCriterion
Earnings qualityStable or growing EPS; no accounting red flags
Revenue resilienceRevenue trend intact or only mildly impacted
Balance sheetStrong liquidity, manageable debt, no near-term solvency risk
Cash flowPositive operating and free cash flow
MarginsGross/operating margins stable vs. 3-year average
Competitive positionMarket 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 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
Show full SKILL.md (251 more words)Show less
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 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.

© Geeksfino, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in US-market/sentiment-reality-gap of Geeksfino/finskills.

  • SKILL.md
  • LICENSE.txt
  • references/gap-analysis-methodology.md
  • references/output-template.md

Open the folder on GitHubat commit 8722415

Compare with similar skills

Sentiment Reality Gap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sentiment Reality Gap compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sentiment Reality Gap this skillGeeksfino/finskills282—~1.4kAutomated safety check: PassApache-2.0
Stock APIzhangxiangliang/stock-api2k—~507Automated safety check: PassMIT
Tushare Datazillionare/zillionare3212 repos~2.3kAutomated safety check: PassNone
Tradingview MCPatilaahmettaner/tradingview-mcp5k—~1.3kAutomated safety check: PassMIT
Digital Oraclekomako-workshop/digital-oracle878—~5.9kAutomated safety check: PassMIT
Longbridge Researchhelsome/folio2713 repos~2.1kAutomated safety check: PassMIT

Similar skills

  • Stock API

    zhangxiangliang/stock-api

    Fetch real-time stock quotes, K-line (candlestick) history, and search symbols for China A-shares, Hong Kong, and US markets.

    2k GitHub stars~507 tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Tushare Data

    zillionare/zillionare

    面向中文自然语言的 Tushare 数据研究技能。用于把“看看这只股票最近怎么样”“帮我查财报趋势”“最近哪个板块最强”“北向资金在买什么”“给我导出一份行情数据”这类请求,转成可执行的数据获取、清洗、对比、筛选、导出与简要分析流程。适用于 A 股、指数、ETF/基金、财务、估值、资金流、公告新闻、板块概念与宏观数据等研究场景。

    321 GitHub starsUsed in 2 repos~2.3k tokens
    Business, Finance & HRAuto-check passed
  • Tradingview MCP

    atilaahmettaner/tradingview-mcp

    AI Trading Intelligence — live prices, 30+ technical indicators, backtesting (6 strategies), walk-forward overfitting detection, trade logs, equity curves, licensed news sentiment (Marketaux), and…

    5k GitHub stars~1.3k tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Digital Oracle

    komako-workshop/digital-oracle

    Answer prediction questions using market trading data, not opinions.

    878 GitHub stars~5.9k tokensUpdated 2 mo ago
    Business, Finance & HRAuto-check passed
  • Longbridge Research

    helsome/folio

    Institution ratings, consensus price targets, EPS/revenue forecasts, finance calendar, shareholder data, fund holders, insider trades (SEC Form 4), short interest, industry rankings, peer group…

    271 GitHub starsUsed in 3 repos~2.1k tokens
    Business, Finance & HRAuto-check passed
  • Longbridge Earnings

    helsome/folio

    Earnings analysis — pre- and post-earnings. An agent skill from helsome/folio.

    271 GitHub starsUsed in 1 repo~2.5k tokens
    Business, Finance & HRAuto-check passed

More from Geeksfino/finskills

All 30 skills in this repo
  • US Market Data Toolkit

    Geeksfino/finskills

    Free Python scripts that fetch US stock data, SEC filings, insider trades and macro indicators, and run financial score calculators and portfolio analytics.

    282 GitHub stars~1.2k tokensUpdated 7 mo ago
    Auto-check passed
  • Runs a forensic review of one company's financial statements covering DuPont profitability, earnings quality, financial health scores and fraud-risk signals.

    282 GitHub stars~1.8k tokensUpdated 7 mo ago
    Auto-check passed
  • Quantitative Factor Screener

    Geeksfino/finskills

    Screens a stock universe with a six-factor model, scores value, momentum, quality, low volatility, size and growth, ranks by composite score and notes which factors suit the macro regime.

    282 GitHub stars~1.3k tokensUpdated 7 mo ago
    Auto-check passed
  • Tech Hype vs Fundamentals

    Geeksfino/finskills

    Compares leading tech stocks to separate hype-driven valuations from fundamentally justified ones and to flag undervalued names the market overlooks.

    282 GitHub stars~1.3k tokensUpdated 7 mo ago
    Auto-check passed
  • Analyze Dividend Aristocrats (25+ years of consecutive dividend increases) for income reliability and total return.

    282 GitHub stars~1.2k tokensUpdated 7 mo ago
    Auto-check passed
  • ESG Stock Screener

    Geeksfino/finskills

    Screens US stocks through an ESG lens, applies optional exclusion lists, scores the environmental, social and governance pillars and judges whether ESG quality is improving.

    282 GitHub stars~1.4k tokensUpdated 7 mo ago
    Auto-check passed

Questions about Sentiment Reality Gap

What does Sentiment Reality Gap do?

Identify stocks where market sentiment is significantly more negative than fundamentals warrant — the gap between narrative and reality. Sentiment Reality Gap is an agent skill from Geeksfino/finskills. Identify stocks where market sentiment is significantly more negative than fundamentals warrant — the gap between narrative and reality.

When should I use Sentiment Reality Gap?

Sentiment Reality Gap fits situations like: the user asks to find contrarian opportunities; stocks with sentiment-fundamental misalignment; oversold but fundamentally strong companies; stocks punished by negative narratives.

How do I install Sentiment Reality Gap in Claude Code?

Run `npx skills add Geeksfino/finskills --skill sentiment-reality-gap -a claude-code`. Or copy the skill folder (US-market/sentiment-reality-gap in Geeksfino/finskills) into .claude/skills/sentiment-reality-gap in your project. Claude Code loads it when a task matches its description.

How do I install Sentiment Reality Gap in Codex?

Run `npx skills add Geeksfino/finskills --skill sentiment-reality-gap -a codex`. Or copy the skill folder (US-market/sentiment-reality-gap in Geeksfino/finskills) into .agents/skills/sentiment-reality-gap in your project. Codex loads it when a task matches its description.

Can I use Sentiment Reality Gap in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Geeksfino/finskills --skill sentiment-reality-gap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sentiment-reality-gap, .gemini/skills/sentiment-reality-gap, .github/skills/sentiment-reality-gap and .opencode/skills/sentiment-reality-gap in your project.

What does Sentiment Reality Gap need to run?

SKILL.md names no scripts, command-line tools or credentials: Sentiment Reality Gap is instructions for the agent only.

Does Sentiment Reality Gap access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Sentiment Reality Gap safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Sentiment Reality Gap use?

Sentiment Reality Gap is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sentiment Reality Gap use?

About 1.4k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.6k tokens, read only when the agent opens those files.

What are the alternatives to Sentiment Reality Gap?

Skills that share tags, products or a category with Sentiment Reality Gap: Stock API (zhangxiangliang/stock-api, 2k stars), Tushare Data (zillionare/zillionare, 321 stars), Tradingview MCP (atilaahmettaner/tradingview-mcp, 5k stars) and Digital Oracle (komako-workshop/digital-oracle, 878 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sentiment Reality Gap?

Geeksfino (a GitHub user) maintains it in Geeksfino/finskills, which has 282 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on March 5, 2026.

Source: Geeksfino/finskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.