Historical stock API
Historical OHLCV API for charts and backtests
Request daily open, high, low, close, and volume by symbol and date range. The same series powers Data Captain charts, indicators, and buy-and-hold simulations.
Key endpoints
- GETDate-range OHLCV
/api/stocks/:symbol/history - GETChart-ready candles
/api/stocks/:symbol/candles - POSTSimulate returns from history
/api/backtest/buy-and-hold - GETLatest price + metadata
/api/etf/SPY
Why teams use Data Captain
Aligned history for analytics
Use one history source for charts, RSI/SMA overlays, and portfolio backtests — avoid mismatched vendor series.
Date-range requests
Pass start and end dates, validate first/last trading days, and cache stable windows in your app.
Built for SPY, QQQ, VOO workflows
Common benchmarks are first-class. Search the ETF explorer for any symbol with loaded price history.
Common use cases
- Candlestick and line charts
- CAGR and max drawdown calculators
- ETF comparison pages
- Quant research notebooks
FAQ
How far back does history go?
Coverage depends on imported market data (typically from 2010 onward for US ETFs in the priced universe). Check /status for latest price date and row counts.
Are prices adjusted?
Imported series prioritize split- and dividend-adjusted closes where available from the source files. Document your assumptions when publishing returns.
Related pages
Ship a market-data prototype this week
Start free