# MarketParquet

> Historical OHLCV (open, high, low, close, volume) market data for US stocks, ETFs, and futures, delivered as Apache Parquet files. Split-adjusted (dividends are not embedded in prices), survivorship-bias-free (delisted tickers included), multiple timeframes, 2000-present. Buy the archive once -- no subscription.

MarketParquet sells ready-to-use historical price data for quantitative research and backtesting. Data ships as date-partitioned Parquet files (one file per trading day containing every symbol), so it loads directly into pandas, polars, DuckDB, or Spark with no parsing or cleanup. Site: https://marketparquet.com

## For AI agents
- Need one thing, not the whole file? GET https://marketparquet.com/llms?query=<topic> returns only the matching sections of this document as plain text (JSON: /llms/json?query=<topic>). Examples: ?query=pricing, ?query=parquet schema, ?query=delisted, ?query=futures.
- The full text (this index plus FAQ, comparisons and a Python quick start) is https://marketparquet.com/llms-full.txt.

## Pricing
- Free Sample -- $0: recent daily (EOD) bars, unlimited downloads, API at 60 requests/min.
- Complete Archive -- $79 one-time: full history on all timeframes including intraday (1-min, 5-min, 30-min, 1-hour) and daily (EOD) back to 2000, all asset classes, perpetual access.
- Keep Current -- $15/month (optional add-on): each new trading day's bars going forward after purchase.
There is no subscription for the historical archive; you buy once and keep the data forever.

## Data coverage
- US Stocks: 23,000+ tickers including delisted (NYSE, NASDAQ, AMEX), daily history from January 2000.
- US ETFs: 9,500+ tickers including delisted (sector, leveraged, bond, and more), from January 2000.
- Futures: ~130 of the most active contracts (ES, NQ, CL, GC, ZN, ...), continuous ratio-adjusted, from December 2007.
- Timeframes: 1-minute, 5-minute, 30-minute, 1-hour, and daily (EOD).
- Stocks and ETFs are split-adjusted; dividends are not embedded in prices. Delisted securities are included (no survivorship bias).
- New data is added the same night after every trading session, typically by midnight ET.

## Parquet schema
- Intraday files (1min/5min/30min/1hour) columns: timestamp (TIMESTAMP[us], US/Eastern bar open time), symbol (STRING), asset_type (STRING), open, high, low, close, volume (all FLOAT64).
- Daily files: a date (DATE) column in place of timestamp, then symbol, asset_type, open, high, low, close, volume. (Daily files dated before 2026-03-27 use a legacy timestamp (TIMESTAMP[us]) column instead of date; normalize with union_by_name + COALESCE when spanning the boundary.)
- File path convention: by_date/{asset}_{timeframe}/YYYY-MM-DD.parquet (snappy-compressed), e.g. by_date/stock_1min/2024-01-15.parquet.

## Key pages
- [Historical US stock data](https://marketparquet.com/data/stocks): 23,000+ tickers, 1-min to daily, 2000-present.
- [Historical US ETF data](https://marketparquet.com/data/etfs): 9,500+ tickers, 1-min to daily, 2000-present.
- [Historical futures data](https://marketparquet.com/data/futures): ~130 contracts, continuous ratio-adjusted, Dec 2007-present.
- [Delisted stock data](https://marketparquet.com/data/stocks/delisted): survivorship-bias-free stock history with delisted tickers included.
- [Intraday stock data](https://marketparquet.com/data/stocks/intraday): US stock 1-minute, 5-minute, 30-minute, and 1-hour bars.
- [Continuous futures data](https://marketparquet.com/data/futures/continuous): ratio-adjusted futures history from Dec 2007-present.
- [Data quality](https://marketparquet.com/data-quality): gap detection, duplicate screening, price validation, and volume-consistency checks.
- [Changelog](https://marketparquet.com/changelog): dated record of split adjustments applied and delisted tickers added, listed by ticker with ratio and effective date.
- [Guide: yfinance limitations for backtesting](https://marketparquet.com/guides/yfinance-limitations-backtesting): when a reproducible Parquet archive is a better yfinance alternative.
- [Guide: DuckDB stock data Parquet](https://marketparquet.com/guides/duckdb-stock-data-parquet): query OHLCV Parquet files directly with SQL.
- [Guide: Polars market data Parquet](https://marketparquet.com/guides/polars-market-data-parquet): lazy-load market data with Polars.
- [Guide: build a local market data lake](https://marketparquet.com/guides/build-local-market-data-lake): organize stock, ETF, and futures files by date locally.
- [Pricing](https://marketparquet.com/pricing): Free Sample, Complete Archive ($79 one-time), and optional Keep Current ($15/month).
- [FAQ](https://marketparquet.com/faq): data quality, adjustments, format, timezones, pricing, coverage.
- [Documentation](https://marketparquet.com/documentation): file format and Python (pandas/polars/DuckDB) + API usage.
- [About](https://marketparquet.com/about): what MarketParquet is and what's included.

## Comparisons
Honest side-by-side comparisons of MarketParquet vs other market data providers (full index: https://marketparquet.com/vs):
- [MarketParquet vs Massive (formerly Polygon.io)](https://marketparquet.com/vs/polygon): bulk Parquet archive vs real-time market-data API; also explains the October 2025 Polygon.io -> Massive rebrand.
- [MarketParquet vs Databento](https://marketparquet.com/vs/databento): flat-fee bulk Parquet vs usage-priced, exchange-direct HFT data (US-equity tick history from 2018).
- [MarketParquet vs FirstRate Data](https://marketparquet.com/vs/firstrate): two bulk historical-file vendors compared -- Parquet and $79 vs zipped CSV with broader assets and tick data.
- [MarketParquet vs Kibot](https://marketparquet.com/vs/kibot): Parquet plus complete delisted coverage vs very deep, cheap CSV history (daily back to 1962).
- [MarketParquet vs Norgate Data](https://marketparquet.com/vs/norgate): intraday Parquet at a one-time price vs an end-of-day-only subscription for AmiBroker/RealTest.
- [MarketParquet vs Tiingo](https://marketparquet.com/vs/tiingo): bulk Parquet vs API-first EOD + news data.
- [MarketParquet vs EODHD](https://marketparquet.com/vs/eodhd): bulk US Parquet vs a global EOD + fundamentals API subscription.
- [MarketParquet vs Alpha Vantage](https://marketparquet.com/vs/alpha-vantage): bulk download vs rate-limited free API.
- [MarketParquet vs Finnhub](https://marketparquet.com/vs/finnhub): bulk OHLCV vs an API that moved US stock candles behind a paywall (~2025); Finnhub is strong on fundamentals and alternative data.
- [MarketParquet vs Twelve Data](https://marketparquet.com/vs/twelve-data): bulk Parquet with deep intraday vs a credit-metered multi-asset API (intraday only from ~2022).
- [MarketParquet vs Financial Modeling Prep (FMP)](https://marketparquet.com/vs/fmp): bulk price Parquet vs a fundamentals-first API (30-year history on paid tiers).
- [MarketParquet vs Intrinio](https://marketparquet.com/vs/intrinio): one-time bulk Parquet vs a premium API platform (SEC-sourced fundamentals; was IEX Cloud's referral partner).
- [MarketParquet vs Alpaca](https://marketparquet.com/vs/alpaca): bulk backtesting archive (history from 2000) vs a live-trading market-data API (from 2016).
- [MarketParquet vs Yahoo Finance / yfinance](https://marketparquet.com/vs/yahoo-finance): reliable archive vs free unofficial scraper.
- [MarketParquet vs Nasdaq Data Link (formerly Quandl)](https://marketparquet.com/vs/quandl): a live, daily-updated Parquet archive vs a dataset marketplace whose free WIKI feed froze in 2018.
- [MarketParquet vs IEX Cloud](https://marketparquet.com/vs/iex-cloud): a historical-data replacement for IEX Cloud, which shut down on August 31, 2024.

## API
- Base URL: https://marketparquet.com/api/v1
- Auth: HTTP header `Authorization: Bearer bt_YOUR_KEY` (create a key on the account page).
- Rate limits: 60 requests/min (free), 600 requests/min (paid).
- Endpoints: GET /api/v1/assets (list asset/timeframe slots), GET /api/v1/dates/{asset_type} (list available dates), GET /api/v1/download/{asset_type}/{date} (returns a 60-second presigned download URL for that day's Parquet file).
