adona-robot · market data by capacity

A forex OHLC candles API

Open, high, low and close candles for 46 currency pairs and 5 metals, on seven timeframes from one second to one day, read back in time by REST and received live on the WebSocket as each bar closes.

Seven timeframes
S1, M1, M5, M15, H1, H4, D1. From the live feed on, the five-minute to one-hour candles are rolled up from the one-minute bars inside them, and the four-hour and daily candles from the same bars, so a chart can move from one timeframe to another on one series.
What a candle is built from
The bid: open, high, low and close of the bid in the bar's time. The volume is a tick volume, the number of price updates in the bar, not a traded volume. A second without an update has no one-second bar.
When a candle is stamped
A candle carries its open time, in UTC. Up to one hour, bars start on round times in UTC. Four-hour and daily candles follow the FX trading day instead, which rolls over at five in the afternoon in New York, so their open times move by an hour when New York changes its clocks.
Reading them by REST
GET GET /v1/candles with a symbol, a timeframe and a limit of up to 5 000; each page comes oldest first with next_before, the cursor to the page before it. On one-second bars a page covers one day, so an empty page with a cursor is a day without trading, such as a weekend: continue.
The bar still forming
The newest page ends with the bar still forming, so a chart drawn from history is current to the second; the stream then sends each bar as it closes. A page that carries the bar still forming counts as following the symbol live.
How far back
One-minute bars and above since 16.05.2025 for EURUSD, GBPUSD, USDJPY, XAUUSD, since 17.03.2026 or 17.05.2026 for the others; one-second bars kept 180 days rolling, the archive opened on 06.09.2026. Each symbol's page gives its own dates.
What it costs
Billed in slices of 1 000 bars, rounded up per response, from CHF 500 a month: a full page of 5 000 bars is 5 slices, and an empty page costs nothing. A symbol followed live for more than 80% of its open hours in a month adds CHF 150.
The trial
The free trial lasts 7 days, on EURUSD · XAUUSD, and reads the last 7 days of history.

Facts as of 06.10.2026.

First call

# 1. your server exchanges the key for a short-lived token
export ADONA_API_KEY="${ADONA_API_KEY:-adk_live_...}"
RESP=$(curl -s https://api.adona-robot.com/v1/tokens \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $ADONA_API_KEY" \
  -d '{"end_user_id":"u-42"}')
TOKEN=$(echo "$RESP" | grep -o '"access_token":"[^"]*' | cut -d'"' -f4)
[ -n "$TOKEN" ] || echo "refused: $RESP"

# 2. the token reads candles
curl -s 'https://api.adona-robot.com/v1/candles?symbol=EURUSD&timeframe=S1&limit=1000' \
  -H "Authorization: Bearer $TOKEN"

The quickstart: from the key to the live stream, step by step

Start the free trial

Related guides

Pairs