Why FinzData
Why FinzData: the history your broker can't give you
What sets FinzData apart is how much you get in one place. Prices back to 2000 with the delisted names still in them, fundamentals, institutional positioning, sentiment, volatility, credit spreads and liquidity, all kept exactly as they were known on each date, so your research holds up when it meets the real market. It all comes through one API that works with your Python code and plugs straight into AI assistants like ChatGPT, Claude and Cursor, so you spend your time on ideas instead of stitching data together.
FinzData vs broker APIs and yfinance
| What a backtest needs | FinzData | Interactive Brokers API | Schwab API | yfinance |
|---|---|---|---|---|
| 5-minute bars, how far back | Since 2000 | Years, listed stocks only | About 9 months | About 60 days |
| 1-minute bars, how far back | Since 2000 | Years, slow to pull | About 48 days | About 30 days |
| Delisted stocks (no survivorship bias) | Yes, 7,000+ | No | No | No |
| Bulk download of the whole market | Yes, one file per bundle | No, rate-limited requests | No, per-symbol requests | No, unofficial and throttled |
| Point-in-time fundamentals and valuation (no look-ahead) | Yes, by SEC filing date | No | No | No, today's restated numbers |
| Positioning: COT, 13F, short interest, insiders | Yes, all four | No | No | Partial, latest only |
| Sentiment: UMich consumer sentiment and inflation expectations | Yes | No | No | No |
| Volatility: Cboe indices, VIX futures curve, nightly dealer gamma (GEX) | Yes | Quotes only, no curve history | Quotes only | Index levels only |
| Bond spreads: ICE BofA credit spreads, Moody's AAA/BAA yields | Yes | No | No | No |
| Liquidity: Fed net liquidity, M2/M3, central-bank balance sheets, TIC flows | Yes | No | No | No |
| Crowding and concentration: 13F ownership, top-holder weights, COT index extremes | Yes | No | No | No |
| Macro with every revision (as-of queries) | Yes, 11,000+ series | No | No | No |
| Licence to use inside a team or product | Yes, commercial licence | Personal use only | Personal use only | Personal use, unofficial |
Broker figures are from Interactive Brokers' API documentation and observed Schwab Trader API limits as of October 2026; brokers can change them. yfinance figures are the limits of Yahoo's unofficial endpoint.
1. Intraday history that reaches back to 2000
Broker APIs are built for trading, not research. Schwab returns roughly nine months of 5-minute bars and about 48 days of 1-minute bars. Interactive Brokers goes further back for stocks that still trade, but only through slow, rate-limited requests that take days to cover the market. FinzData ships 1-minute, 5-minute, 30-minute, hourly and daily bars for 16,000+ US stocks and 5,000+ ETFs since 2000 as bulk files and through the API.
2. The stocks that failed are still in the data
Interactive Brokers keeps no history for securities that stopped trading, and neither does Schwab or yfinance. A backtest built only on today's survivors overstates returns. FinzData keeps 7,000+ delisted tickers with their full price history, so your universe on any past date is the universe that actually traded.
3. Point in time, everywhere
Fundamentals are stored by SEC filing date, the daily valuation series (P/E, P/B, P/S, EV/EBITDA) uses only filings public on each day, and 11,000+ macro series keep every revision. Ask what was known on any date and get exactly that, with no look-ahead.
4. Institutional positioning next to prices
Look up any institutional manager, hedge fund or mutual fund: its 13F portfolio, its most concentrated, highest-conviction positions and every add, trim and exit since 2013. Add CFTC Commitments of Traders for 950+ futures markets since 1986, FINRA short interest and SEC Form 4 insider trades, all on the same key.
5. Sentiment, volatility, spreads and liquidity in one place
The regime around a trade matters as much as the trade. FinzData carries University of Michigan consumer sentiment and inflation expectations, Cboe volatility indices and the VIX futures curve, nightly dealer gamma (GEX) levels, ICE BofA credit spreads and Moody's AAA/BAA corporate yields, and a liquidity set: Fed net liquidity (balance sheet minus the Treasury General Account and reverse repo), M1, M2 and M3, Fed, ECB and Bank of Japan balance sheets and Treasury TIC foreign flows. Licensed series carry their owner's source credit and come with the look-back plans.
6. Crowding and concentration, measured
Crowded trades unwind hard. FinzData shows how many institutions hold each stock and how that changed quarter to quarter, each manager's most concentrated positions by portfolio weight, and the COT index that flags when speculators in a futures market sit at the extreme of their positioning range.
Start free, see it yourself
import finzdata as yf # pip install finzdata
bars = yf.Ticker("AAPL").history(interval="5m", start="2026-01-02")
c = yf.Client()
v = c.valuation("AAPL", start="2026-01-01") # point-in-time P/E, P/B, EV/EBITDA
gold = c.cot(report="legacy_fo", market="GOLD") # futures positioningFrequently asked questions
How far back can I get 5-minute data from Schwab?
Schwab's API currently returns roughly nine months of 5-minute bars and about 48 days of 1-minute bars. FinzData has 5-minute and 1-minute bars back to 2000.
Does Interactive Brokers have data for delisted stocks?
No. Interactive Brokers' API documentation lists securities that are no longer trading among the data it cannot provide. FinzData includes 7,000+ delisted tickers.
Can I use broker data in a product or share it with my team?
Broker market data is licensed for the account holder's personal use. FinzData plans include a licence to use the data inside your team, and Institutional covers commercial use.
Is there a free tier?
Yes. The free key returns the last 12 months of every dataset with 1,000 calls a day and no card. Longer history is bought once by look-back.