ποΈ
Screener Data Architecture - FMP/Finnhub/Yahoo Cascade
P3 - LowArchitecture Hedge
Screener uses FMPβFinnhubβYahoo cascade with daily sync to Supabase
Data Sources (Priority Order)
FMP (Financial Modeling Prep) - Primary
- New API:
/stable/quote,/stable/profile,/stable/ratios-ttm - Free tier: 250 calls/day
- Best for fundamentals
- New API:
Finnhub - Fallback
- Free tier: 60 calls/min
- Good for real-time quotes
Yahoo Finance - Last resort
- Via yfinance library
- No API key needed
- Rate limits apply
Stock Universe
~200 stocks: S&P 500 + Nasdaq 100 (deduplicated)
~50 ETFs: SPY, QQQ, sector ETFs, leveraged
Architecture
- Daily cron pulls data β Supabase
screener_stockstable - Frontend reads from cached data (fast, no API calls)
- Cascade fallback when rate limited
Endpoints
GET /api/screener- Get cached screener dataPOST /api/screener/sync- Trigger data syncGET /api/screener/status- Check data freshnessGET /api/screener/symbols- List tracked symbols
FMP API Notes
- Old v3 endpoints deprecated Aug 2025
- New
/stable/prefix required - Batch quotes NOT available on free tier
Created: Tue, Feb 17, 2026, 6:05 PM by bob
Updated: Tue, Feb 17, 2026, 6:05 PM
Last accessed: Mon, Mar 16, 2026, 8:35 AM
ID: 57fe03bb-29e7-4d30-bef3-e472fe348998