66 Currency Pairs
Forex majors, crosses, commodities (WTI, Brent), and indices (S&P 500, Nikkei, DAX, and more).
Download free Forex historical data from histdata.com and convert to Apache Parquet with zstd compression. 66 currency pairs, one command.
Everything you need to build a clean, local Forex dataset for quantitative research.
Forex majors, crosses, commodities (WTI, Brent), and indices (S&P 500, Nikkei, DAX, and more).
Parquet with zstd compression, ready for pandas, Polars, DuckDB, or any Arrow-compatible tool.
Install once via pip, run from anywhere. One command to download years of data across multiple pairs.
Past years download as single yearly ZIPs. Current year downloads month-by-month automatically.
Clean OHLCV schema with timestamp[ms] and float64 columns. No manual parsing needed.
Only requests, beautifulsoup4, and pyarrow. No heavy frameworks or complex setup required.
A simple four-step ETL process from raw web data to analysis-ready Parquet files.
histdata.com → ZIP (CSV) → list[OHLCVRow] → Parquet (zstd)66 instruments across Forex, commodities, and global indices.
Typed Parquet columns ready for direct analysis. No post-processing required.
| Column | Type | Description |
|---|---|---|
| timestamp | timestamp[ms] | Bar open time (EST) |
| open | float64 | Open price |
| high | float64 | High price |
| low | float64 | Low price |
| close | float64 | Close price |
| volume | float64 | Tick volume |
Install from GitHub and start downloading data in seconds.
pip install git+https://github.com/StratCraftsAI/histdata.git# Download EURUSD 2020-2025 and convert to Parquet
histdata --pairs EURUSD --year-start 2020 --year-end 2025
# Multiple pairs
histdata --pairs EURUSD GBPUSD USDJPY --year-start 2015 --year-end 2025
# All 66 pairs
histdata --pairs all --year-start 2020 --year-end 2025import pandas as pd
df = pd.read_parquet("output/EURUSD_M1.parquet")
print(df.head())
# timestamp open high low close volume
# 0 2023-01-02 17:00:00 1.07045 1.07048 1.07045 1.07048 0.0No. histdata.com provides free data without registration or API keys.
Approximately 2 seconds per ZIP file (polite throttle). Downloading all 66 pairs for 5 years takes roughly 10-15 minutes.
Yes. The Parquet output follows the standard OHLCV schema and can be loaded directly into StratCraft as a data source.
All timestamps are in EST (Eastern Standard Time, UTC-5). histdata.com does not apply DST adjustment.
Yes. Pass --timeframe tick to download tick-level data instead of 1-minute bars.
Free, open source, MIT licensed. One pip install away from clean Forex data.