AllTick
Solutions

Researchers

Remove weeks of data-engineering work with clean, normalized historical and live data from one API and one schema.

A single normalized dataset for reproducible market research.

Normalized schema

Every asset class shares the same fields, so notebooks and pipelines generalize across markets.

Historical depth

Backtest and study 12+ years of tick and bar data without stitching multiple vendors together.

Reproducible pipelines

Deterministic timestamps and stable identifiers make results easy to reproduce and share.

Academic-grade multi-asset data specifications

AllTick datasets and representative academic research topics
Research domainData granularity and depthExample research topics
Market microstructure12+ years of raw tick data for major global Forex markets (150+ currency pairs), commodities and crypto, with L1/L2 order-book depth.Order-flow imbalance (OFI), liquidity depletion and high-frequency limit-order-book (LOB) modelling.
Asset pricing and quantitative factorsMulti-interval OHLCV and volume-weighted average price (VWAP) data for major global equities, including US and Hong Kong stocks, and key derivatives indices.Momentum effects, multi-factor models (Fama-French) and cross-asset risk-premium research.
Behavioural finance and volatilitySecond-by-second change histories and records of sharp volume fluctuations for 1,000+ spot and perpetual-contract pairs worldwide.Crypto-market extreme-event resonance, abrupt shifts in market sentiment and tail risk.
Macroeconomics and cross-market transmissionLong time series for core commodities, including gold, silver and Brent crude, and major global equity indices.Inflation-expectation transmission and the real-time response of commodity futures to macroeconomic policy.

Why financial researchers and laboratories choose AllTick

Eliminate tedious data engineering and focus on theoretical innovation

In the past, empirical finance research often required weeks or months to buy, download and clean data from different exchanges and vendors. AllTick removes that barrier. Our unified cross-market schema normalizes complex international, multi-asset data into a standard format with consistent fields and UTC timestamps, so researchers can devote their full attention to econometric modelling and paper writing.

Deterministic timestamps for perfectly reproducible results

Academic research places strict demands on reproducibility. AllTick historical time series provide high-precision, millisecond deterministic timestamps and exclude bias caused by bad data, spikes or exchange transmission delays. Peers and team members using the same code and the AllTick API can reproduce identical empirical results.

Native integration with the research technology stack

Whether you analyse data in Jupyter Notebook with Pandas and NumPy, build complex GARCH volatility models in R, or use MATLAB for matrix computation, AllTick standard REST API lets you retrieve large datasets asynchronously in only a few lines of code.

Dedicated academic offers and flexible distribution licences

We understand the needs of academic research and laboratory budgets. AllTick offers cost-effective academic sponsorship programmes for university professors, doctoral students and financial laboratories, with flexible licences that support sharing cleaned research samples within teams and research groups to speed paper publication.

Jupyter Notebook data-import example for researchers

Scenario: retrieve historical K-line data in one call for time-series regression analysis (Python example).

# AllTick — Real-time Financial Market Data API
# Real-time Forex, Stocks, Crypto, Commodities and Indices market data

import json
import os

import pandas as pd
import requests

def load_research_dataset(symbol, query_count=100, end_timestamp=0):
    """Load AllTick daily stock candles into a UTC-indexed Pandas DataFrame."""
    query = {
        "trace": "research_daily_kline",
        "data": {
            "code": symbol,
            "kline_type": 8,  # Daily candle
            "kline_timestamp_end": end_timestamp,  # 0 requests the latest candle
            "query_kline_num": query_count,  # Maximum 500 per request
            "adjust_type": 0,
        },
    }
    response = requests.get(
        "https://quote.alltick.co/quote-stock-b-api/kline",
        params={
            "token": os.environ["ALLTICK_API_TOKEN"],
            "query": json.dumps(query, separators=(",", ":")),
        },
        timeout=15,
    )
    response.raise_for_status()
    payload = response.json()
    if payload.get("ret") != 200:
        raise RuntimeError(payload.get("msg", "AllTick K-line request failed"))

    frame = pd.DataFrame(payload["data"]["kline_list"]).rename(
        columns={
            "open_price": "open",
            "close_price": "close",
            "high_price": "high",
            "low_price": "low",
        }
    )
    numeric_columns = ["open", "close", "high", "low", "volume", "turnover"]
    frame[numeric_columns] = frame[numeric_columns].apply(pd.to_numeric)
    frame["timestamp"] = pd.to_datetime(pd.to_numeric(frame["timestamp"]), unit="s", utc=True)
    return frame.set_index("timestamp").sort_index()

if __name__ == "__main__":
    daily_candles = load_research_dataset("AAPL.US")
    print(daily_candles.tail())

Start streaming market data today

Generate a free API key in seconds and connect to every market from one endpoint.

FAQ

FAQ for financial researchers