# NautilusTrader Market Data: Point-in-Time Bars

Source: https://finzdata.com/nautilus

Point-in-time, survivorship-free market data for NautilusTrader backtests with nautilus-finzdata and FinzData ParquetDataCatalog.

FinzData + NautilusTrader

# Point-in-time market data for NautilusTrader

[NautilusTrader](https://nautilustrader.io) is a high-performance open-source trading platform; nautilus-finzdata fills its ParquetDataCatalog with FinzData's point-in-time, survivorship-free bars in one call.
[Install](https://finzdata.com/#install)

Why it matters

## Point-in-time correctness

1. **Survivorship bias.** Delisted stocks included, point in time.

1. **No look-ahead.** Bars stamped at their close, daily 16:00 New York, so strategies never see a bar early.

1. **Futures completeness.** Every futures contract since 2007 plus continuous series.

Install

## Use FinzData with NautilusTrader

```
pip install nautilus-finzdata
```

Set `FINZDATA_API_KEY`. A free key, email only: [Get free key](https://finzdata.com/account?ref=nautilus)

```
from nautilus_finzdata import FinzDataLoader
loader = FinzDataLoader()
loader.to_catalog("catalog", symbols=["AAPL", "SPY"], start="2025-10-27", end="2026-10-23", futures=["ES"])
```

```
from nautilus_trader.persistence.catalog import ParquetDataCatalog
catalog = ParquetDataCatalog("catalog")
bars = catalog.bars(bar_types=["SPY.FINZDATA-1-DAY-LAST-EXTERNAL"])
```

Use BacktestNode with BacktestDataConfig(catalog_path="catalog", data_cls=Bar, bar_types=["SPY.FINZDATA-1-DAY-LAST-EXTERNAL"]).

Instruments and bars

## Symbol mapping

| Pattern | Description |
| --- | --- |
| SYMBOL.FINZDATA | Stocks and ETFs, Equity |
| ROOT.c.0.FINZDATA | Continuous futures |
| ES.c.0.FINZDATA | Continuous E-mini S&P 500 futures |
| ESZ26.FINZDATA | Single contract |
| {id}-1-DAY-LAST-EXTERNAL | Daily bar type |
| {id}-5-MINUTE-LAST-EXTERNAL | 5 minute bar type |
| {id}-1-HOUR-LAST-EXTERNAL | 1 hour bar type |

Intervals: 1min, 5min, 15min, 30min, 1hour, 1day.

Built-in futures specs for ES, MES, NQ, MNQ, YM, RTY, M2K, CL, MCL, NG, RB, HO, PL, GC, MGC, SI, HG, ZN, ZF, ZT, ZC, ZS, ZW, VX, FDAX, FESX, E6, A6, B6, J6.

Coverage

## Data scope

16,000+ US stocks that have traded on NYSE and Nasdaq since January 2000, delisted included, point in time; 231 ETFs; 139 futures markets with every contract since 2007; 1, 5, 15, 30-minute, hourly and daily bars; plus GEX for single stocks, ETFs and the major indexes, COT since 1986, 13F, SEC fundamentals as filed, 18,000+ macro series.

Pricing

## Full history

Free key covers the last 12 months of daily data; intraday bars and full history from $19 per ticker or $39 per futures market, yours to keep: [See full history](https://finzdata.com/shop?ref=nautilus)

FAQ

## Questions

### Is FinzData affiliated with NautilusTrader?

No. FinzData is not affiliated with Nautech Systems or the NautilusTrader project. nautilus-finzdata is a community integration.

### Does FinzData provide survivorship-free data for NautilusTrader?

Yes. All bars are point-in-time with delisted names included and stamped at close.

### Can I backtest futures with nautilus-finzdata?

Yes. Every contract since 2007 plus continuous series are available with built-in specs.

### Is a free API key available?

Yes. A free key covers the last 12 months of daily data, email only.

### Can I use ParquetDataCatalog with BacktestNode?

Yes. Load data with FinzDataLoader then use BacktestDataConfig with catalog_path and bar_types.

FinzData is not affiliated with Nautech Systems or the NautilusTrader project.

FinzData: built for AI, quants, data scientists and financial analysts who backtest. Clean data. Real insights. Real alpha.
