/api/v1/financials/stock-overviewMarket data snapshot for a ticker from yfinance-sourced daily data.
Market data snapshot for a ticker from yfinance-sourced daily data. Returns beta, close price, sector, industry, market cap, enterprise value, float shares, short data, first traded date, plus technical indicators (RSI, score, volume, pct_change, pct_from_high, above_200_sma, above_50_sma).
Why use this
Common use case
Market-data snapshot for a ticker — the yfinance-sourced sibling of the XBRL fundamentals surface. Returns price + market-cap + enterprise-value + technical indicators (RSI, SMA-50/200, volume signals) + short-interest data + sector/industry classification. The right pairing for: DCF models (needs beta + close to compute discount rate; needs enterprise_value for EV-based valuation), stock-research pages (needs technical context next to fundamentals), and screening UIs that combine fundamental ratios with price-trend filters (above_200_sma=true AND roe>0.15). Cached 24h server-side. Pair with /api/v1/financials/snapshot for the XBRL fundamentals view and /api/v1/tickers/{ticker}/overview for the comprehensive cross-source company-overview that combines both surfaces.
Parameters
| Name | In | Required | Default | Allowed | Description | Example |
|---|---|---|---|---|---|---|
| ticker | query | required | — | — | Stock ticker symbol (canonical hyphen form). Returns 404 if ticker has no Yahoo Finance / yfinance daily-data coverage. Cache: 24h server-side. | AAPL |
Response schema
| Field | Type | Nullable | Description |
|---|---|---|---|
| data.ticker | string | no | Issuer ticker (canonical hyphen form, echoed back). |
| data.company | string | no | Company name (Title Case from yfinance). |
| data.date | string | no | ISO `YYYY-MM-DD` reference date for the snapshot (latest market close — typically prior trading day during US market hours, current trading day after close). May be 1-2 days stale on weekends/holidays. |
| data.close | number | no | Last close price (USD per share). NOT split-adjusted server-side — reflects as-traded price for the reference date. For split-adjusted historical price series use external market-data sources. |
| data.beta | number | yes | 5-year monthly beta vs S&P 500. Decimal (`1.0` = market-neutral, `>1` = higher-volatility, `<1` = lower-volatility). Null for very-recent IPOs (<1 year of price history). |
| data.sector | string | yes | yfinance sector classification (matches Yahoo Finance's sector taxonomy — slightly different from Sharadar's). Null for unmapped tickers. |
| data.industry | string | yes | yfinance industry classification (more specific than sector). Null for unmapped tickers. |
| data.market_cap | number | yes | Market capitalization (USD). Computed as `close × shares_outstanding`. Use for size-based universe filters (e.g. mega-cap > $200B, large-cap $10-200B, mid-cap $2-10B, small-cap $300M-2B, micro-cap <$300M). |
| data.enterprise_value | number | yes | Enterprise value (USD). `market_cap + total_debt - cash_and_equivalents`. The classic 'all-stakeholder' valuation metric — combine with [/financials/snapshot](/docs/company-data/company-financials-xbrl/get-financials-snapshot) EBITDA for EV/EBITDA multiple. |
| data.float_shares | number | yes | Public float (shares freely tradable, excluding insider + institutional restricted holdings). Useful for liquidity-aware position sizing — small-caps with float < 50M shares can have wide bid-ask spreads. |
| data.shares_outstanding | number | yes | Total shares outstanding (point-in-time). Compare against [/financials/metrics](/docs/company-data/company-financials-xbrl/get-financials-metrics) `shares_outstanding` (which is weighted-average for the period); they differ for issuers with active buyback/issuance. |
| data.short_percent_of_float | number | yes | Short interest as fraction of float (decimal — `0.0072` = 0.72%). Updated bi-monthly (NYSE/NASDAQ short-interest publication cadence) so may lag by 2-3 weeks. Above 0.20 flags potentially-squeeze-able names. |
| data.short_ratio | number | yes | Days-to-cover ratio: `short_interest / avg_daily_volume`. Higher = harder for shorts to cover. Above 5 days flags squeeze risk. |
| data.first_traded | string | yes | Unix epoch seconds (as a string) of the ticker's first trading day. Useful for filtering recent IPOs (within 1 year). For human-readable date use the existing `date` semantic on `/api/v1/tickers/{ticker}/overview`. |
| data.rsi_14d | number | yes | 14-day Relative Strength Index (technical momentum indicator). Range `[0, 100]`. Standard interpretation: >70 overbought, <30 oversold. Useful for short-term mean-reversion screens. |
| data.score | number | yes | FinRadar composite technical score (proprietary blend of RSI + SMA-trend + volume signals). Range `[0, 100]`. Higher = stronger technical setup. NOT a buy/sell recommendation — a single technical-flavor signal among many. |
| data.volume | number | yes | Latest trading-day volume (shares). Compare against `avg_volume_30d` for volume-spike detection. |
| data.avg_volume_30d | number | yes | 30-day average daily trading volume. Smoother baseline than spot volume — `volume / avg_volume_30d > 2` flags abnormal-volume sessions. |
| data.pct_change_1d | number | yes | 1-day percent price change (decimal — `0.0048` = +0.48%). Same-day if calling after close; previous-day-vs-day-before-that during market hours. |
| data.pct_change_30d | number | yes | 30-day percent price change (decimal). Useful for medium-term momentum filters. |
| data.pct_from_52w_high | number | yes | Percent from 52-week high (decimal — typically negative since price <= 52w high; `-0.038` = 3.8% below high). Above `-0.05` indicates strong-trend territory; below `-0.30` indicates significant drawdown. |
| data.pct_from_52w_low | number | yes | Percent from 52-week low (decimal — typically positive). Combine with `pct_from_52w_high` for range-position assessment. |
| data.sma_50 | number | yes | 50-day simple moving average price (USD). Short-trend reference. |
| data.sma_200 | number | yes | 200-day simple moving average price (USD). Long-trend reference. Standard 'golden cross' = sma_50 crossing above sma_200; 'death cross' = below. |
| data.above_200_sma | boolean | yes | Boolean: `true` when `close > sma_200`. The classic long-trend filter — most quant momentum strategies require `above_200_sma=true`. |
| data.above_50_sma | boolean | yes | Boolean: `true` when `close > sma_50`. Short-trend filter. |
Sample response
- "status": "success"
- "data":
- "ticker": "AAPL"
- "company": "Apple Inc."
- "date": "2026-05-01"
- "close": 268.5
- "beta": 1.121
- "sector": "Technology"
- "industry": "Consumer Electronics"
- "market_cap": 3984500000000
- "enterprise_value": 4058044000000
- "float_shares": 14820000000
- "shares_outstanding": 14840000000
- "short_percent_of_float": 0.0072
- "short_ratio": 1.38
- "first_traded": "345479400"
- "rsi_14d": 58.4
- "score": 72
- "volume": 48230000
- "avg_volume_30d": 52100000
- "pct_change_1d": 0.0048
- "pct_change_30d": 0.041
- "pct_from_52w_high": -0.038
- "pct_from_52w_low": 0.214
- "sma_50": 261.2
- "sma_200": 244.8
- "above_200_sma": true
- "above_50_sma": true
Errors
| Status | Label | Description |
|---|---|---|
| 200 | OK | Request succeeded. |
| 400 | Bad Request | Invalid query, body, or path parameter. |
| 401 | Unauthorized | Missing or invalid Authorization header / api_Token. |
| 402 | Payment Required | Insufficient token balance for this call. Top up |
| 429 | Too Many Requests | Rate limit exceeded for your tier (see /pricing for tier limits). Tier limits |
| 500 | Server Error | Unexpected server-side failure. Retry with backoff; report if persistent. |
Code samples
curl "https://api.finradar.ai/api/v1/financials/stock-overview?api_Token=YOUR_API_KEY" \
-H "Authorization: Bearer YOUR_JWT_TOKEN"Generate an API key in /account/credentials to run live queries (literal YOUR_API_KEY placeholder shown until then).