Quick Start
TickerLab Documentation
RESTful APIs for China A-share historical market data, technical indicators, corporate financials, and macroeconomic series.
Basic Information
| Item | Description |
|---|---|
| Base URL | https://tickerlab.org |
| Authentication | API Key via X-API-Key header |
| Data Format | JSON |
| Protocol | HTTPS |
Authentication
All API requests require an API Key:
curl -H "X-API-Key: your_api_key" https://tickerlab.org/v1/markets/history?symbol=sz.000001
# Technical indicator request
curl -H "X-API-Key: your_api_key" "https://tickerlab.org/v1/indicators/ma?symbol=sz.000001&timeperiod=20"
Quick Start
Python
import requests
API_KEY = "your_api_key"
BASE_URL = "https://tickerlab.org"
# Get time series data
response = requests.get(
f"{BASE_URL}/v1/markets/history",
params={"symbol": "sz.000001", "interval": "1d"},
headers={"X-API-Key": API_KEY}
)
data = response.json()
print(data["values"][:5]) # Latest 5 records
JavaScript
const API_KEY = 'your_api_key';
const BASE_URL = 'https://tickerlab.org';
// Get time series data
const response = await fetch(
`${BASE_URL}/v1/markets/history?symbol=sz.000001&interval=1d`,
{ headers: { 'X-API-Key': API_KEY } }
);
const data = await response.json();
console.log(data.values.slice(0, 5));
cURL
curl -G "https://tickerlab.org/v1/markets/history" \
-H "X-API-Key: your_api_key" \
-d "symbol=sz.000001" \
-d "interval=1d"
API Endpoints Overview
K-Line Data
Historical candlestick data with multiple intervals. This is the main entrypoint for time-series analysis.
| Method | Endpoint |
|---|---|
| GET | /v1/markets/history |
Example:
curl -G "https://tickerlab.org/v1/markets/history" \
-H "X-API-Key: your_key" \
-d "symbol=sz.000001" \
-d "interval=1d"
Historical Market Data Export
Export-friendly historical data for batch or CSV/JSON download.
| Method | Endpoint |
|---|---|
| GET | /v1/export/history |
Example:
curl -H "X-API-Key: your_key" \
"https://tickerlab.org/v1/export/history?symbol=sh.600519&format=json&start_date=2024-01-01"
Batch Charting
Generate static charts for multiple symbols in a single request.
| Method | Endpoint |
|---|---|
| POST | /v1/markets/chart/batch |
Example:
curl -X POST "https://tickerlab.org/v1/markets/chart/batch" \
-H "X-API-Key: your_key" \
-H "Content-Type: application/json" \
-d '[
{"symbol": "sz.000001", "interval": "1d", "studies": [{"name": "MACD"}]},
{"symbol": "sh.600519", "interval": "1d", "studies": [{"name": "RSI"}]}
]'
Technical Indicators
| Endpoint | Description | Specific Parameters |
|---|---|---|
/v1/indicators/vwap | VWAP | - |
/v1/indicators/bbands | Bollinger Bands | timeperiod (default 20), nbdevup (2) |
/v1/indicators/macd | MACD | fastperiod (12), slowperiod (26), signalperiod (9) |
/v1/indicators/rsi | RSI | timeperiod (14) |
/v1/indicators/stoch | Stochastic | fastk_period (14), slowk_period (3) |
/v1/indicators/atr | ATR | timeperiod (14) |
/v1/indicators/obv | OBV | - |
/v1/indicators/adx | ADX | timeperiod (14) |
Macro Data
Macro and global cross-asset datasets for policy, migration, commodities, FX, crypto, and risk monitoring.
| Method | Endpoint Group | Notes |
|---|---|---|
| GET | /v1/macro/cpi, /v1/macro/ppi, /v1/macro/gdp, /v1/macro/money-supply, /v1/macro/lpr, /v1/macro/pmi | China core macro indicators |
| GET | /v1/macro/social-finance, /v1/macro/new-loans, /v1/macro/fx-reserves | Credit and reserve indicators |
| GET | /v1/macro/migration-scale, /v1/macro/migration-area, /v1/macro/epu-index | Migration and policy uncertainty |
| GET | /v1/macro/oil-price-adjustment, /v1/macro/oil-price-region | China oil price tracking |
| GET | /v1/macro/commodity-daily, /v1/macro/forex-daily, /v1/macro/crypto-daily | Daily commodity / FX / crypto series |
| GET | /v1/macro/global-index-daily, /v1/macro/global-index-spot, /v1/macro/fx-spot | Global index and FX snapshots |
| GET | /v1/macro/energy-inventory, /v1/macro/global-risk-factor | US energy and global risk factors |
Capital Flow and Event Data
| Method | Endpoint Group | Notes |
|---|---|---|
| GET | /v1/money-flow/capital-flow, /v1/money-flow/north-flow, /v1/money-flow/south-flow | Core fund flow channels |
| GET | /v1/markets/margin, /v1/markets/margin-detail | Margin financing summary/detail |
| GET | /v1/rankings/dragon-tiger, /v1/rankings/hsgt-hold-rank | Market leaderboards |
| GET | /v1/markets/hsgt-stock-statistics | HSGT holding statistics |
| GET | /v1/finance/stock-repurchase, /v1/finance/institute-recommend | Corporate actions and institutional views |
| GET | /v1/finance/restricted-release-summary, /v1/finance/restricted-release-detail, /v1/finance/restricted-release-queue, /v1/finance/restricted-release-stockholder | Restricted release lifecycle |
| GET | /v1/markets/suspend-resume-events | Suspend/resume events |
Market Aggregation Endpoints
Aggregated endpoints for analysis workflows: market state overview, sentiment, sector rotation, and stock-level snapshot synthesis.
| Method | Endpoint Group | Notes |
|---|---|---|
| GET | /v1/markets/market/regime, /v1/markets/market/sentiment | Market state and sentiment overview |
| GET | /v1/markets/market/hot-stock-trend | Hot-stock ranking trend summary |
| GET | /v1/markets/sector/rotation | Sector rotation and leadership indicators |
| GET | /v1/markets/sector/concept-heat, /v1/markets/sector/breadth | Concept/sector heat and breadth |
| GET | /v1/markets/stock/snapshot | Single-stock snapshot (price/technical/capital/finance/risk) |
| GET | /v1/markets/stock/event-timeline | Catalyst timeline for one symbol |
| GET | /v1/markets/opportunity/watchlist, /v1/markets/risk/invalidation | Opportunity pool and invalidation tracking |
Momentum & Breadth Endpoints
| Method | Endpoint Group | Notes |
|---|---|---|
| GET | /v1/markets/momentum | Momentum and breakout/fade risk indicators |
| GET | /v1/markets/sector-pulse | Sector pulse and continuation metrics |
| GET | /v1/markets/market-breadth | Market breadth time-series indicators |
Error Handling
All API errors return a standardized JSON format:
{
"error": {
"code": "ERROR_CODE",
"message": "Human readable error description",
"request_id": "abc123-uuid"
}
}
Error Codes
| Code | HTTP Status | Description |
|---|---|---|
BAD_REQUEST | 400 | Invalid request parameters |
UNAUTHORIZED | 401 | Invalid or missing API Key |
FORBIDDEN | 403 | Access denied |
NOT_FOUND | 404 | Resource not found |
VALIDATION_ERROR | 422 | Request body validation failed |
RATE_LIMIT_EXCEEDED | 429 | Rate limit exceeded |
GEO_RESTRICTED | 451 | Region restricted (e.g. some crypto) |
INTERNAL_ERROR | 500 | Internal server error |
Rate Limits
Rate limits depend on the user’s current subscription and may change as plans are updated. Check the dashboard or Pricing page for the limits currently applied to your account.