AgentStack
SKILL verified MIT Self-run

Stock Screener

skill-eodhistoricaldata-eodhd-claude-skills-stock-screener · by EodHistoricalData

>-

No reviews yet
0 installs
6 views
0.0% view→install

Install

$ agentstack add skill-eodhistoricaldata-eodhd-claude-skills-stock-screener

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Stock Screener? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Skill: stock-screener

Purpose

Find stocks matching user-defined criteria using EODHD's screener endpoint, then enrich top results with detailed fundamentals and price data for comparison.

Trigger

Activate when the user asks for:

  • Stock screening or filtering ("find stocks with P/E under 15")
  • "Best dividend stocks" or "cheap growth stocks"
  • Sector-specific stock lists
  • Signal-based screening (new highs, oversold, etc.)
  • Comparative analysis of filtered stocks
  • "What should I invest in?" (screen first, then analyze)

Workflow

  1. Translate criteria to filters — map user language to EODHD screener JSON filters
  2. Run screenerscreener endpoint with filters, sort, signals, limit
  3. Review results — present initial list with key metrics
  4. Enrich top picksfundamentals for detailed data on top 5-10 results
  5. Add price contexteod for recent price trends
  6. Compile screener report

Filter Format (critical)

filters is a JSON array of [field, operation, value] triples — NOT dot-notation (market_capitalization.gte) and NOT a JSON object. If the shape is wrong, the EODHD API silently ignores the filter and returns unfiltered, irrelevant results.

Operations: =, !=, >, >=, `=",10000000000],["sector","=","Technology"]]


**Sort:** `--sort field.direction` (e.g. `market_capitalization.desc`, `pe.asc`). A bare field name is
rejected with HTTP 422 ("sort.0.direction is required").

**Currency caveat (important):** absolute-money fields — `market_capitalization`, `revenue`, `ebitda` — are
in each listing's **local currency**, not USD. A raw threshold leaks huge non-USD companies (e.g. a
Vietnam-listed firm at "3.88T" ₫ ≈ $150M passes `>= 10B`). Each result row has a `currency_symbol` field
indicating its currency. So:
- Filtering/sorting by an absolute-money field → **scope to one market** with `["exchange","=","us"]` (or the
  intended exchange) so the threshold is currency-consistent.
- Multi-market screens → don't compare raw caps across rows; group/label by `currency_symbol`.
- Ratio/percent fields (`pe`, `pb`, `ps`, `peg`, `roe`, `roa`, `beta`, `dividend_yield`) are
  currency-independent and safe to compare across markets.

**Instrument-type noise (the screener has NO `type` filter — `["type",...]` → HTTP 422):** the combined
`["exchange","=","us"]` includes OTC foreign cross-listings (codes ending `F`/`Y`, broken 55–110%
`dividend_yield`) and preferred shares (codes with a `-`, e.g. `JPM-PD`). For a clean common-stock screen:
scope to a real venue (`["exchange","=","nyse"]`/`"nasdaq"`), add `["dividend_yield"," This is not financial advice. Data is for informational purposes only.

## Example Filters

```bash
# High-dividend large caps (dividend_yield is a fraction: 0.03 = 3%; nyse avoids OTC junk; =",0.03],["dividend_yield","=",10000000000],["exchange","=","nyse"]]' --sort dividend_yield.desc --limit 20
# then drop rows whose code contains '-' (preferred shares)

# Undervalued growth stocks
python eodhd_client.py --endpoint screener --filters '[["market_capitalization",">=",1000000000],["earnings_share",">=",1],["exchange","=","us"]]' --signals 200d_new_lo --limit 20

# Tech sector screening
python eodhd_client.py --endpoint screener --filters '[["sector","=","Technology"],["market_capitalization",">=",5000000000],["exchange","=","us"]]' --sort market_capitalization.desc --limit 30

Endpoints Used

| Endpoint | Purpose | Cost | |----------|---------|------| | screener | Filter and rank stocks | 1 call | | fundamentals | Detailed data for top picks | 10 calls/ticker | | eod | Price context | 1 call/ticker |

References

  • ../eodhd-api/references/endpoints/stock-screener-data.md
  • ../eodhd-api/references/endpoints/fundamentals-data.md
  • ../eodhd-api/references/endpoints/historical-stock-prices.md

Source & license

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

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

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.