Historical data

Quant research and backtesting

A backtest is a promise that the past will be served the same way twice. TickerLayer keeps it with daily bars that reach back years, intraday bars whose volume adds up, and an endpoint that only returns a bar once it has settled.

Why TickerLayer

Built for this, not adapted to it

  • History that pages predictably

    Documented maximum windows per interval, so a ten-year series loads in a handful of calls.

  • Intraday that adds up

    Consolidated volume on sub-daily US bars, hourly bars anchored to the session open.

  • Replayable by construction

    The previous-bar endpoint returns only what will not change.

On one key

The calls behind it

Daily
GET /stocks/agg/US:AAPL/1/day/{from}/{to}
Hourly
GET /stocks/agg/US:AAPL/1/hour/{from}/{to}
Settled
GET /stocks/agg/US:AAPL/prev?interval=1h
Universe
GET /fundamentals/stocks/US:AAPL
Ten years of daily bars into a DataFrame
import pandas as pd, requests

url = "https://api.tickerlayer.com/stocks/agg/US:AAPL/1/day/2016-01-01/2026-01-01"
bars = requests.get(url, headers={"x-api-key": "YOUR_API_KEY"},
                    params={"limit": 5000}).json()["results"]

df = pd.DataFrame(bars).rename(columns={"o": "open", "h": "high",
                                        "l": "low", "c": "close", "v": "volume"})
df["t"] = pd.to_datetime(df["t"], unit="ms", utc=True)
print(df.set_index("t")["close"].pct_change().describe())

Frequently asked questions

How far back does history go?

Daily bars reach back years for most instruments, paged in documented slices. Intraday windows are shorter and listed per interval.

Are bars adjusted for corporate actions?

Bars are served as traded. Share-structure fields on the fundamentals endpoint let you apply the adjustment method you control.

Can I pull a whole universe?

Symbol lists are per market and free to call. Business plans are sized so a nightly refresh of a few thousand names fits comfortably.

Start with 3,000 free requests

No card, no sales call. Build first, pick a plan when it ships.

Other use cases