Data & Markets

Understand symbol coverage, scan universes, price history, and freshness.

Data ownership

Strata supplies current U.S. listing identity and universe membership. Massive supplies prices, history, news, and fundamentals. PostgreSQL stores canonical settled daily history. A bounded in-process hot window accelerates recent reads, while deeper formulas load only the required PostgreSQL tail. FMP remains parked and is not a hidden fallback.

The application provides:

  • split-adjusted daily OHLCV;
  • session-aware current prices and intraday charts;
  • company profiles, fundamentals, and normalized quarterly statements;
  • technical indicators calculated from the selected real price series.

Symbol search and scan universes

Symbol search uses Strata's current non-test listing catalog, independently of market cap, fundamentals, candle history, or scanner conditions.

Choose a source in the scanner:

  • u:us-stocks — stocks, ADRs, REITs, and the explicitly supported common-equity types; the default for scans and market breadth.
  • u:us-etfs — Nasdaq ETF-flagged listings and mapped exchange-traded products, including BAR.
  • u:us-all — stocks plus ETFs, without a price, liquidity, or market-cap cutoff.
  • u:sp-500 and u:nasdaq-100 — fixed index definitions.

Warrants, rights, preferred shares, units, closed-end funds, and unknown types do not become common stocks merely because they are listed. Catalog membership does not promise enough history for a formula.

Use Add source with add (+), overlap (&), or exclude (-) to combine universes and your watchlists. The source expression remains editable and is saved with the screen. For example, u:us-all - wl:"Do not trade" removes a watchlist from the combined universe.

Price, market cap, and liquidity belong in scan conditions, not hidden universe construction rules. For example, start from u:us-stocks and add c > 5 and sma(c * v, 20) > 10M for a dollar-volume filter.

The old market, us-all-liquid, us-1b-plus, and etf-major sources are retired. Existing saved screens are not silently rewritten: select a new source and preserve any desired liquidity conditions explicitly.

Price history and formulas

Recent formulas normally use the hot window. A formula requiring more retained bars, such as sma(600), loads a bounded canonical PostgreSQL tail.

History is never fabricated:

  • a mature listing can calculate a long lookback when enough real bars exist;
  • a recent listing returns unavailable for a lookback longer than its life;
  • unavailable symbols are dropped with coverage reported, or fail in strict mode.

The catalog does not bulk-download history for every listing. Opening a catalog-only symbol may use the existing bounded one-symbol backfill path and persist real provider bars.

Dates, sessions, and freshness

Default scans use the latest completed EOD unless a live session is explicitly requested. Always check the displayed effective date before comparing a scan with a broker or a live chart.

During the regular session, StockVyze uses provider REST snapshots rather than a streaming NBBO/order-book feed. Poll cadence, session selection, and the displayed valuation point can therefore differ from a broker's executable quote. Use a broker for order-entry truth.

After the closing bell, an exact-date adjusted provider response may update what users see before canonical settlement finishes. Provisional versus settled is an internal process; the UI exposes the effective date and warns only when the best available value is stale.

Coverage and performance

Scan results include alignment metadata:

  • requested symbols;
  • included and dropped symbols;
  • coverage percentage;
  • effective anchor date;
  • the cache/PostgreSQL route used.

The managed serving universe is configured by CACHE_UNIVERSE, defaulting to us-all. Settlement, hot-cache loading, and the shared realtime sweep use that same membership. With active broad-screen demand, Massive's full-market snapshot is requested on a 15-second target cadence and filtered to managed members. Foreground demand remains the faster lane. Provider delays, scan cadence, and unavailable data can make the visible refresh slower.

For faster formula iteration, start with a short watchlist and then run the validated formula against the desired universe.

Fundamentals

Fundamental data is independent of listing identity and candle coverage. Company fundamentals may lag while the provider ingests filings. ETFs and non-standard listings often have limited or inapplicable company-statement fields.

A missing market cap or financial ratio is represented as unavailable, not zero. Filters such as f.market_cap > 500M naturally exclude unavailable values.

Symbol conventions

Use the current U.S.-listed symbol:

  • AAPL — Apple
  • TSM — Taiwan Semiconductor ADR
  • SPY — SPDR S&P 500 ETF

Class-share symbols use the canonical provider/application form, such as BRK.A, BRK.B, GOOG, and GOOGL.

Start typing in the workspace to search by symbol or company name. Separate share classes retain separate symbols. No inferred punctuation aliases or legacy-symbol migration is applied.

Known limits

  • OTC and international primary listings are not part of the selected U.S. catalog.
  • Delisted symbols are not part of current-universe membership.
  • Historical point-in-time scans that use a current-membership universe use today's members unless a separate historical membership source exists. This is survivorship bias: delisted companies are absent, so results skew optimistic and the effect grows with the lookback. An explicit-symbol chart backtest does not mechanically exclude other securities, but selecting a present-day survivor with hindsight can still make strategy evidence look too optimistic. See AI & Backtest Disclosures.
  • Newly listed symbols cannot satisfy lookbacks longer than their real history.
  • Daily history is split-adjusted under the selected Massive basis; changing provider or adjustment basis requires a deliberate rebuild.

Reporting a data issue

Include:

  1. symbol;
  2. effective date/session;
  3. scan, chart, or formula involved;
  4. expected and observed value;
  5. whether the comparison source used adjusted or unadjusted prices.

This is enough to trace the provider response, canonical PostgreSQL row, alignment decision, and serving route.

Was this article helpful? Let us know