Technical Indicators

Technical Indicators API

Calculate common technical indicators including Bollinger Bands, MACD, RSI and more.

MethodEndpointDescription
GET/v1/indicators/bbandsBollinger Bands
GET/v1/indicators/macdMACD
GET/v1/indicators/rsiRSI
GET/v1/indicators/queryGeneric indicator query
GET/v1/market/vwapVWAP
GET/v1/market/stochStochastic
GET/v1/market/atrATR
GET/v1/market/obvOBV
GET/v1/market/adxADX

Bollinger Bands

Endpoint

MethodEndpoint
GET/v1/indicators/bbands

Parameters

ParameterTypeRequiredDefaultDescription
symbolstring-Stock code
intervalstring-1dTime interval
timeperiodint-20Calculation period
stdsfloat-2.0Standard deviation multiplier

Try It

GET/v1/indicators/bbands

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/indicators/bbands",
    params={
        "symbol": "000001.SZ",
        "interval": "1d",
        "timeperiod": 20,
        "stds": 2.0
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
print(f"Upper={data['values'][0]['upper_band']}, Middle={data['values'][0]['middle_band']}")

JavaScript

const API_KEY = 'your_api_key';

const params = new URLSearchParams({
  symbol: '000001.SZ',
  interval: '1d',
  timeperiod: 20,
  stds: 2.0
});

const response = await fetch(
  `https://tickerlab.org/v1/indicators/bbands?${params}`,
  { headers: { 'X-API-Key': API_KEY } }
);

const data = await response.json();
console.log('Bollinger Bands:', data.values[0]);

cURL

curl -G "https://tickerlab.org/v1/indicators/bbands" \
  -H "X-API-Key: your_api_key" \
  -d "symbol=000001.SZ" \
  -d "interval=1d" \
  -d "timeperiod=20" \
  -d "stds=2.0"

Response Example

{
  "meta": {"symbol": "000001.SZ", "indicator": {"name": "BBANDS"}},
  "values": [
    {"datetime": "2024-01-15", "upper_band": "10.80", "middle_band": "10.50", "lower_band": "10.20"}
  ]
}

MACD

Endpoint

MethodEndpoint
GET/v1/indicators/macd

Parameters

ParameterTypeRequiredDefaultDescription
symbolstring-Stock code
intervalstring-1dTime interval
fastperiodint-12Fast EMA period
slowperiodint-26Slow EMA period
signalperiodint-9Signal line period

Try It

GET/v1/indicators/macd

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/indicators/macd",
    params={
        "symbol": "000001.SZ",
        "interval": "1d",
        "fastperiod": 12,
        "slowperiod": 26,
        "signalperiod": 9
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
item = data["values"][0]
print(f"MACD={item['macd']}, Signal={item['macd_signal']}, Hist={item['macd_hist']}")

JavaScript

const API_KEY = 'your_api_key';

const params = new URLSearchParams({
  symbol: '000001.SZ',
  interval: '1d',
  fastperiod: 12,
  slowperiod: 26,
  signalperiod: 9
});

const response = await fetch(
  `https://tickerlab.org/v1/indicators/macd?${params}`,
  { headers: { 'X-API-Key': API_KEY } }
);

const data = await response.json();
console.log('MACD:', data.values[0]);

cURL

curl -G "https://tickerlab.org/v1/indicators/macd" \
  -H "X-API-Key: your_api_key" \
  -d "symbol=000001.SZ" \
  -d "interval=1d" \
  -d "fastperiod=12" \
  -d "slowperiod=26" \
  -d "signalperiod=9"

Response Example

{
  "meta": {"symbol": "000001.SZ", "indicator": {"name": "MACD"}},
  "values": [
    {"datetime": "2024-01-15", "macd": "0.15", "macd_signal": "0.10", "macd_hist": "0.05"}
  ]
}

RSI (Relative Strength Index)

Endpoint

MethodEndpoint
GET/v1/indicators/rsi

Parameters

ParameterTypeRequiredDefaultDescription
symbolstring-Stock code
intervalstring-1dTime interval
timeperiodint-14Calculation period

Try It

GET/v1/indicators/rsi

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/indicators/rsi",
    params={
        "symbol": "000001.SZ",
        "interval": "1d",
        "timeperiod": 14
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
rsi = float(data["values"][0]["rsi"])
signal = "Overbought" if rsi > 70 else "Oversold" if rsi < 30 else "Neutral"
print(f"RSI={rsi:.2f} ({signal})")

JavaScript

const API_KEY = 'your_api_key';

const params = new URLSearchParams({
  symbol: '000001.SZ',
  interval: '1d',
  timeperiod: 14
});

const response = await fetch(
  `https://tickerlab.org/v1/indicators/rsi?${params}`,
  { headers: { 'X-API-Key': API_KEY } }
);

const data = await response.json();
const rsi = parseFloat(data.values[0].rsi);
const signal = rsi > 70 ? 'Overbought' : rsi < 30 ? 'Oversold' : 'Neutral';
console.log(`RSI=${rsi.toFixed(2)} (${signal})`);

cURL

curl -G "https://tickerlab.org/v1/indicators/rsi" \
  -H "X-API-Key: your_api_key" \
  -d "symbol=000001.SZ" \
  -d "interval=1d" \
  -d "timeperiod=14"

Response Example

{
  "meta": {"symbol": "000001.SZ", "indicator": {"name": "RSI"}},
  "values": [
    {"datetime": "2024-01-15", "rsi": "58.75"}
  ]
}

Moving Averages (SMA/EMA)

Endpoint

MethodEndpoint
GET/v1/indicators/query

Generic indicator endpoint supporting SMA, EMA, WMA, TEMA and more.

Parameters

ParameterTypeRequiredDefaultDescription
functionstring-Indicator: SMA, EMA, WMA, TEMA
symbolstring-Stock code
apikeystring-API Key (query parameter)
time_periodint-20Calculation period
series_typestring-closeData type: close, open, high, low

Try It

GET/v1/indicators/query

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/indicators/query",
    params={
        "function": "SMA",
        "symbol": "000001.SZ",
        "time_period": 20,
        "series_type": "close",
        "apikey": API_KEY
    }
)

data = response.json()
print(f"SMA20: {data['values'][0]['sma']}")

JavaScript

const API_KEY = 'your_api_key';

const params = new URLSearchParams({
  function: 'SMA',
  symbol: '000001.SZ',
  time_period: 20,
  series_type: 'close',
  apikey: API_KEY
});

const response = await fetch(`https://tickerlab.org/v1/indicators/query?${params}`);
const data = await response.json();
console.log('SMA20:', data.values[0].sma);

cURL

curl -G "https://tickerlab.org/v1/indicators/query" \
  -d "function=SMA" \
  -d "symbol=000001.SZ" \
  -d "time_period=20" \
  -d "series_type=close" \
  -d "apikey=your_api_key"

Response Example

{
  "meta": {"symbol": "000001.SZ", "indicator": {"name": "SMA"}},
  "values": [
    {"datetime": "2024-01-15", "sma": "10.35"}
  ]
}

Signal Interpretation

IndicatorOverboughtOversoldDescription
RSI> 70< 30Relative strength
MACDDIF > DEADIF < DEATrend direction
BollingerAbove upperBelow lowerVolatility range

VWAP (Volume Weighted Average Price)

Endpoint

MethodEndpoint
GET/v1/market/vwap

Parameters

ParameterTypeRequiredDescription
symbolstringCode
intervalstring-Interval (default 1d)

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/market/vwap",
    params={
        "symbol": "000001.SZ",
        "interval": "1d"
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
# Get latest VWAP value
latest = data["values"][0]
print(f"Date: {latest['datetime']}, VWAP: {latest['vwap']}")

JavaScript

const API_KEY = 'your_api_key';

const response = await fetch(
  "https://tickerlab.org/v1/market/vwap?symbol=000001.SZ",
  { headers: { "X-API-Key": API_KEY } }
);

const data = await response.json();
console.log('Latest VWAP:', data.values[0].vwap);

cURL

```bash
curl -H "X-API-Key: your_key" \
  "https://tickerlab.org/v1/market/vwap?symbol=000001.SZ"

Response Example

{
  "meta": {
    "symbol": "000001.SZ",
    "indicator": { "name": "VWAP" }
  },
  "values": [
    {
      "datetime": "2024-03-20 15:00:00",
      "vwap": 10.45
    },
    {
      "datetime": "2024-03-19 15:00:00",
      "vwap": 10.38
    }
  ]
}

Stochastic

Endpoint

MethodEndpoint
GET/v1/market/stoch

Parameters

ParameterTypeDefaultDescription
fastk_periodint14Fast K period
slowk_periodint3Slow K period
slowd_periodint3Slow D period

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/market/stoch",
    params={
        "symbol": "BTCUSDT",
        "fastk_period": 14,
        "slowk_period": 3,
        "slowd_period": 3
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
k_value = data['values'][0]['slowk']
d_value = data['values'][0]['slowd']
print(f"SlowK: {k_value}, SlowD: {d_value}")

JavaScript

const API_KEY = 'your_api_key';

const params = new URLSearchParams({
  symbol: 'BTCUSDT',
  fastk_period: 14,
  slowk_period: 3,
  slowd_period: 3
});

const response = await fetch(
  `https://tickerlab.org/v1/market/stoch?${params}`,
  { headers: { "X-API-Key": API_KEY } }
);

const data = await response.json();
console.log('Stoch K/D:', data.values[0]);

cURL

curl -H "X-API-Key: your_key" \
  "https://tickerlab.org/v1/market/stoch?symbol=BTCUSDT&fastk_period=14"

Response Example

{
  "meta": {
    "symbol": "BTCUSDT",
    "indicator": {
      "name": "STOCH",
      "k_period": 14,
      "d_period": 3
    }
  },
  "values": [
    {
      "datetime": "2024-03-20 00:00:00",
      "slowk": 75.5,
      "slowd": 70.2
    },
    {
      "datetime": "2024-03-19 00:00:00",
      "slowk": 68.4,
      "slowd": 65.1
    }
  ]
}

ATR (Average True Range)

Endpoint

MethodEndpoint
GET/v1/market/atr

Parameters

ParameterTypeDefaultDescription
timeperiodint14Calculation period

Code Examples

Python

import requests

API_KEY = "your_api_key"

# Calculate ATR
response = requests.get(
    "https://tickerlab.org/v1/market/atr",
    params={
        "symbol": "BTCUSDT",
        "timeperiod": 14
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
print(f"Current Volatility (ATR): {data['values'][0]['atr']}")

JavaScript

const API_KEY = 'your_api_key';

const response = await fetch(
  "https://tickerlab.org/v1/market/atr?symbol=BTCUSDT&timeperiod=14",
  { headers: { "X-API-Key": API_KEY } }
);

const data = await response.json();
console.log('ATR:', data.values[0].atr);

cURL

```bash
curl -H "X-API-Key: your_key" \
  "https://tickerlab.org/v1/market/atr?symbol=BTCUSDT&timeperiod=14"

Response Example

{
  "meta": {
    "symbol": "BTCUSDT",
    "indicator": { "name": "ATR", "period": 14 }
  },
  "values": [
    {
      "datetime": "2024-03-20 00:00:00",
      "atr": 1250.50
    },
    {
      "datetime": "2024-03-19 00:00:00",
      "atr": 1200.30
    }
  ]
}

OBV (On Balance Volume)

Endpoint

MethodEndpoint
GET/v1/market/obv

Parameters

ParameterTypeRequiredDescription
symbolstringCode

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/market/obv",
    params={"symbol": "000001.SZ"},
    headers={"X-API-Key": API_KEY}
)

data = response.json()
print(f"OBV: {data['values'][0]['obv']}")

JavaScript

const API_KEY = 'your_api_key';

const response = await fetch(
  "https://tickerlab.org/v1/market/obv?symbol=000001.SZ",
  { headers: { "X-API-Key": API_KEY } }
);

const data = await response.json();
console.log('OBV:', data.values[0].obv);

cURL

```bash
curl -H "X-API-Key: your_key" \
  "https://tickerlab.org/v1/market/obv?symbol=000001.SZ"

Response Example

{
  "meta": {
    "symbol": "000001.SZ",
    "indicator": { "name": "OBV" }
  },
  "values": [
    {
      "datetime": "2024-03-20 15:00:00",
      "obv": 58000000.0
    },
    {
      "datetime": "2024-03-19 15:00:00",
      "obv": 55000000.0
    }
  ]
}

ADX (Average Directional Index)

Endpoint

MethodEndpoint
GET/v1/market/adx

Parameters

ParameterTypeDefaultDescription
timeperiodint14Calculation period

Code Examples

Python

import requests

API_KEY = "your_api_key"

response = requests.get(
    "https://tickerlab.org/v1/market/adx",
    params={
        "symbol": "000001.SZ",
        "timeperiod": 14
    },
    headers={"X-API-Key": API_KEY}
)

data = response.json()
print(f"ADX Trend Strength: {data['values'][0]['adx']}")

JavaScript

const API_KEY = 'your_api_key';

const response = await fetch(
  "https://tickerlab.org/v1/market/adx?symbol=000001.SZ",
  { headers: { "X-API-Key": API_KEY } }
);

const data = await response.json();
console.log('ADX:', data.values[0].adx);

cURL

```bash
curl -H "X-API-Key: your_key" \
  "https://tickerlab.org/v1/market/adx?symbol=000001.SZ"

Response Example

{
  "meta": {
    "symbol": "000001.SZ",
    "indicator": { "name": "ADX", "period": 14 }
  },
  "values": [
    {
      "datetime": "2024-03-20 15:00:00",
      "adx": 35.5
    },
    {
      "datetime": "2024-03-19 15:00:00",
      "adx": 32.1
    }
  ]
}