Indicators API
A complete guide to the TickCatcher stateless calculation engine.
The Indicators API is a high-performance, stateless calculation engine. It allows you to transform raw OHLCV market data into actionable technical analysis signals.
Unlike the Candles API, the Indicators API does not satisfy the request by fetching data from our database. Instead, it follows a "Pipe-and-Filter" architecture:
- You Provide Data: You send a JSON body containing an array of candle data (from our Candles API, or any other source).
- We Calculate: Our engine validates the data and applies the requested mathematical formula (e.g., RSI, MACD).
- We Return Results: You receive the calculated values for every candle provided.
[!IMPORTANT] Data Independence: This design means you can use TickCatcher's indicators on any asset class (Crypto, clean energy stocks, forex) as long as you can provide the input data in the correct format.
Method: POST (All endpoints)
Headers:
Content-Type:application/jsonX-TickCatcher-Key:YOUR_KEYX-RapidAPI-Key:YOUR_KEY(Optional, if using RapidAPI)
Body Schema:
{
"data": [
// Array of Candle Objects (Ordered by Time ASC)
{ "ts": 1600000000, "open": 100, "high": 105, "low": 95, "close": 102, "volume": 500 },
{ "ts": 1600003600, "open": 102, "high": 104, "low": 101, "close": 103, "volume": 450 }
// ...
],
"params": {
// Specific parameters for the indicator
"period": 14,
"source": "close"
}
}We strictly categorize indicators by computational complexity.
The fundamental building blocks of technical analysis. View Details
- SMA (Simple Moving Average)
- EMA (Exponential Moving Average)
- RSI (Relative Strength Index)
Momentum and volatility tools for intermediate strategies. View Details
- MACD
- Bollinger Bands
- Stochastic
- Volume MA
Advanced trend strength and cycle identifiers. View Details
- ATR
- ADX
- CCI
- Parabolic SAR
Complex, multi-formula trading systems. View Details
- Ichimoku Cloud
- SuperTrend
- Heiken Ashi
- Williams %R
Institutional-grade tools for signal filtering and smart money tracking. View Details
- Keltner Channels
- VWAP
- ZigZag
- Pivot Points
Here is a complete end-to-end example using TypeScript:
import { IndicatorsApi, CandlesApi } from "tickcatcher";
// 1. Get Candles
const candles = await new CandlesApi(config).basicCandles({ symbol: "BTCUSDT", timeframe: "1h", limit: 100 });
// 2. Calculate RSI
const values = await new IndicatorsApi(config).rsi({
rsiRequest: {
data: candles,
params: { period: 14 }
}
});
console.log(`Current RSI: ${values[values.length - 1]}`);| Code | Reason | Description |
|---|---|---|
400 | Bad Input | The data array is empty, malformed, or missing required fields (close, high, etc.). |
422 | Unprocessable | The provided data is too short for the requested period (e.g., 5 candles for a 14-period RSI). |