Market Data Oracle · v1.0.0

Market data you can trust

Market Oracle delivers clean, verified market data to trading systems and AI agents: closed bars, indicators, order-book microstructure, macro context, and market regime. One request. You make the decisions — we supply facts only.

Documentation →
1request instead of 8–10
8timeframes with indicators
6trading pairs in the API
≥70data_quality gate
BTCUSDT READY live
Close (1m, closed)$78,486.27 -1.32%
RSI14 / ADX1457.1 / 35.1
ATR_PCT (1m)0.055%
Depth imbalance0.24 · ask pressure
H1 vs EMA50H1 below EMA50
Funding0.0098%
Fear & Greed69 · Greed
Volatility regimelow_vol_range
Data quality
Score90
Live GET /v1/context/BTCUSDT via site PHP — bar · htf · depth · macro · regime
Principles

Not an advisor. A facts provider.

Oracle does not open trades or manage positions. Its job is to give your algorithms correct data you can build decisions on.

🎯

Signal only on a closed bar

Trading decisions are formed exclusively on a closed 1m bar (closed: true). No look-ahead — data is always point-in-time correct.

🧮

Verified correctness

EMA, RSI, ATR, ADX(+DI), VWAP, Bollinger, OBV, MFI, and CVD are computed on every native TF and covered by tests. Closed bars and indicators are stored atomically; state recovers after failures.

🤖

Built for agents

One call to GET /v1/context/{symbol} returns everything for a decision: bar, order book, derivatives, macro, and market regime. Machine-readable formats, explicit limits, predictable errors.

Features

Everything for a trading decision — in one API

Context, quotes, and history work only for these symbols. You cannot add your own ticker; check ready via GET /v1/symbols.

BTCUSDTETHUSDTSOLUSDTBNBUSDTDOGEUSDTXRPUSDT

Context in one request

The main endpoint for bots and AI agents. Bar with indicators, ticker, live order book, trade_cost / cost_risk, live HTF, derivatives, macro, quote check, market regime, and data_quality — instead of 8–10 separate calls.

GET /v1/context/{symbol}

The only signal source is a closed bar (closed: true). Everything else is filters: tradable, a macro pause, data_quality.score ≥ 70.

📊

Indicators on every TF

The same core on 1m and on native 5m/15m/30m/1h/4h/1d/1w. Decimal strings; during warmup a field is null, not zero.

EMA20/50/200RSI14ATR14/50ADX+DIVWAPBB 20,2OBVMFI14CVDswings
🧱

Microstructure

Closed minute aggregation of top-20: spread, imbalance, walls, pressure.

/v1/microstructure/{symbol}
🌍

Macro context

Fear&Greed, dominance, stablecoins, DXY, 10Y yield.

/v1/macro
🔥

Derivatives

Funding, open interest, liquidation cascades.

/v1/derivatives/{symbol}
🧭

Market regime

Correlation with BTC, realized vol, market breadth.

/v1/market-regime
🔗

Price consensus

Median-mid across independent sources with divergence control — protection against a bad tick before entry. Symbol must be from the list above.

/v1/quotes/{symbol}
📡

WebSocket

bar_close + opt-in microstructure_close; REST to recover gaps.

WS /v1/stream
🗓

Macro calendar

Upcoming events (FOMC, CPI) with impact level.

/v1/calendar
📚

History for all timeframes

Native candles, not stitched minutes: 5m 60d, 15m 90d, 30m 120d, 1h ~9 mo, 4h 2y, 1d 3y, 1w 5y. WS closes 1m only.

/v1/history/{symbol}?interval=…
How it works

Six steps from connect to signal

A typical flow for an AI agent or trading bot.

Start with an API key mo_… (“Get API key”). Every /v1/* call and the WebSocket then send Authorization: Bearer mo_…. Without a key there are no bars, context, or stream. Only GET /health is public.

GET /health

Check the server

Confirm status=ok and that bars are fresh.

GET /v1/me

Check your plan

Daily limits, RPM, WS count, and key expiry — so you can pick a request cadence.

GET /v1/symbols

Pick pairs

Only the core set (BTC, ETH, SOL, BNB, DOGE, XRP) and only ready=true, ideally history=full_day.

WS /v1/stream

Subscribe

Receive bar_close in real time. Order book optionally via microstructure:true.

GET /v1/context

Decision snapshot

Before entry: cost, HTF, quality. Enter only if tradable and score ≥ 70.

signal

Form a signal

Exactly once per closed bar, with deduplication by symbol:ts.

Pricing

Transparent limits. No sign-ups or dashboards.

Get an API key — and go. Everything is managed from one page.

Free
0 ₽ / forever
  • 2,000 requests per day
  • 30 requests per minute
  • Min. pause between requests 2000 ms
  • 1 WebSocket connection
  • No expiry date
Basic
7 500 ₽ / mo
  • 5,000 requests per day
  • 60 requests per minute
  • Min. pause between requests 200 ms
  • 2 WebSocket connections
  • WS bar_close does not spend daily quota
Pro
9 900 ₽ / mo
  • 8,000 requests per day
  • 90 requests per minute
  • Min. pause between requests 150 ms
  • 3 WebSocket connections
  • Highest client tier

Already have a key?

Pay in RUB with MIR, Visa, Mastercard or SBP (Tochka Bank). The service is delivered electronically: API key by email, no physical shipping. Terms, cancellation and refunds: license agreement (public offer).

Documentation

Full integration specification

The manual is written so a developer can connect Oracle without extra questions. For an AI agent, feed the Markdown spec — link below.

📖
REST API referenceAll endpoints with request/response examples and field explanations.
📡
WebSocket protocolSubscribe, bar_close and microstructure_close events, reconnect with backoff.
🧮
Bar and indicator formatsDecimal strings for precision, semantics of each indicator.
⚠️
Limits and errorsPlans, daily limits, RPM, handling 429 and key_expired.
Open documentation → Agent spec (Markdown)
oracle-client
# Python — standard library only
import json, urllib.request
req = urllib.request.Request(BASE + "/v1/context/BTCUSDT",
    headers={"Authorization": f"Bearer {KEY}"})
ctx = json.load(urllib.request.urlopen(req, timeout=15))

# Signal — only on a closed bar
if (ctx["bar"]["closed"] and ctx["data_quality"]["score"] >= 70
        and ctx["cost_risk"]["tradable"]):
    decide(ctx["bar"])
Ecosystem

Data here, decisions in your code

Oracle delivers facts over the API. You write the strategy, backtest, and execution — any language, any bot or signal engine.

📡

Market Oracle

Clean market data: bars, indicators, order book, macro, and market regime.

● You are here
⚙️

Your bot

Any API client: trading robot, signals, screener, or AI agent.

● Your code