← ClaudeAtlas

eodhd-screenlisted

Screen stocks by fundamental and technical criteria using the EODHD screener — market cap, P/E, dividend yield, sector, exchange, and signals, with currency- aware thresholds. Invoke as /eodhd-screen <criteria>.
EodHistoricalData/eodhd-claude-skills · ★ 24 · AI & Automation · score 84
Install: claude install-skill EodHistoricalData/eodhd-claude-skills
Screen stocks using EODHD screener based on these criteria: $ARGUMENTS Translate the user's criteria into EODHD screener filters. **Filter format (critical):** `filters` is a **JSON array of `[field, operation, value]` triples**, NOT dot-notation and NOT a JSON object. A JSON object is rejected with HTTP 422 ("must be an array"). Operations: `=`, `!=`, `>`, `>=`, `<`, `<=`, `match`. **Sort format:** `--sort field.direction`, e.g. `market_capitalization.desc` or `pe.asc`. A bare field name (or a separate order flag) is rejected with HTTP 422 ("sort.0.direction is required"). **Currency caveat (important):** absolute-money fields — `market_capitalization`, `revenue`, `ebitda` — are reported in each listing's **local currency**, not normalized to USD. So a raw threshold leaks huge non-USD companies (e.g. a Vietnam-listed firm shows "3.88T" ₫ ≈ $150M but passes a `>= 10B` filter). Each result row carries a `currency_symbol` field telling you the currency. Therefore: - When filtering/sorting by an absolute-money field, **scope to one market** — add `["exchange","=","us"]` (or the user's intended exchange) so the threshold is currency-consistent. - For multi-market screens, you cannot 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. Common mappings (note: `dividend_yield` is a **fraction** — 0.03 = 3%): - "large