← Back to Docs

DATA SOURCES

Strategies consume two data sources, both reached through ctx.data. Data is cached in the platform database and refreshed by scheduled jobs — strategies never call external APIs directly.

Market Data — Databento

  • Coverage: daily OHLCV (EQUS summary bars) for ~2,900 US equities (iShares R3K proxy ∩ Databento coverage).
  • Fields: open, high, low, close, volume, plus adjusted_close and vwap when available.
  • Split adjustment: applied point-in-time using corporate-actions data to avoid look-ahead bias.
  • Refresh: daily after the close (market-data-refresh cron).

Fundamentals — FMP

  • Datasets: key_metrics_ttm (60+ trailing-twelve-month fields) and ratios_ttm (70+ ratio fields), reached via ctx.data.fundamentals(symbol, dataset).
  • Reference: sector and market-cap lookups via ctx.data.sector() and ctx.data.market_cap().
  • Refresh: weekly (fundamentals-refresh cron).

Accessing Data

python
# All data is reached through ctx.data (DataAccessor):

returns = ctx.data.returns(lookback=126)        # daily simple returns panel
close = ctx.data.close(lookback=50)              # adjusted close panel
volume = ctx.data.volume(lookback=20)
bars = ctx.data.ohlcv(symbols=["AAPL"], lookback=30)

km = ctx.data.fundamentals("AAPL", "key_metrics_ttm")
ratios = ctx.data.fundamentals("AAPL", "ratios_ttm")
sector = ctx.data.sector("AAPL")
mcap = ctx.data.market_cap("AAPL")

For the full field catalog and method signatures, see the Data Reference and Data API.