Updated every 60 seconds

Bias + Summary API

GET /v1/summary returns a directional bias (bullish/bearish/neutral), a confidence score, and a plain-English summary of the conditions behind it — all computed from the same 42 indicator series behind the indicator endpoints.

No credit card$2.50 PAYG credit on sign up
15+API endpoints
42Indicator series
M1–D17 timeframes
$2.50PAYG starting credit
Why TickAtlas

What is the Market Sentiment API?

The /v1/summary endpoint aggregates every pre-calculated indicator we have for a symbol + timeframe into a single bias score. A deterministic rule engine reads all 42 indicator series and returns a directional bias, a confidence score, and the bullish and bearish conditions behind it. Instead of polling RSI, MACD, ADX, Bollinger Bands and 38 more, then writing logic to combine them, you make one HTTP call and receive: bias direction, confidence (a 0–1 fraction), key support/resistance levels, and a plain-English summary your bot, dashboard, or LLM can render verbatim.

One call replaces 42

No fan-out fetches, no aggregation logic. /v1/summary returns the combined signal across every indicator we track for the symbol.

LLM-ready summary text

The `summary` field is plain English suitable for direct injection into a ChatGPT system prompt, Claude tool response, or a Discord/Slack message.

Bias + confidence, not noise

Each call returns bullish / bearish / neutral plus a 0–1 confidence fraction so your bot can set a directional threshold and skip ambiguous setups.

One Request. Instant Data.

cURL
curl -X GET \
  "https://tickatlas.com/v1/summary?symbol=XAUUSD&timeframe=H1" \
  -H "X-API-Key: YOUR_API_KEY"
200 OK
{
  "success": true,
  "data": {
    "symbol": "XAUUSD",
    "timeframe": "H1",
    "bias": "bullish",
    "bias_strength": "strong",
    "confidence": 0.82,
    "trend_score": 2.4,
    "momentum_score": 1.8,
    "volatility_score": 3.1,
    "signals": {
      "trend": "bullish",
      "momentum": "bullish",
      "volatility": "neutral",
      "volume": "neutral"
    },
    "key_levels": {
      "resistance": [2342.00],
      "support": [2318.50]
    },
    "bullish_signals": ["Price above SMA_50", "MACD histogram positive"],
    "bearish_signals": [],
    "neutral_signals": ["RSI_14 in mid-range"],
    "summary": "Gold is above its 20-period average with MACD histogram expanding. Key resistance at 2,342.",
    "recommendations": ["Trend-following entries favoured while price holds above support"],
    "updated_at": 1711548000
  }
}
Python · feed into an LLM
import requests, openai

summary = requests.get(
    "https://tickatlas.com/v1/summary",
    headers={"X-API-Key": "YOUR_KEY"},
    params={"symbol": "XAUUSD", "timeframe": "H4"},
).json()["data"]

prompt = f"""Market context for XAUUSD H4:
Bias: {summary['bias']} (confidence: {summary['confidence']:.0%})
{summary['summary']}
Key levels: support {summary['key_levels']['support']},
            resistance {summary['key_levels']['resistance']}
"""
# Send 'prompt' to your LLM of choice as system context.

API Response + Scanner

JSON Response
{
  "success": true,
  "data": {
    "symbol": "XAUUSD",
    "timeframe": "H1",
    "bias": "bullish",
    "bias_strength": "strong",
    "confidence": 0.82,
    "trend_score": 2.4,
    "momentum_score": 1.8,
    "volatility_score": 3.1,
    "signals": { "trend": "bullish", "momentum": "bullish",
                 "volatility": "neutral", "volume": "neutral" },
    "key_levels": { "resistance": [2342.00], "support": [2318.50] },
    "bullish_signals": ["Price above SMA_50", "MACD histogram positive"],
    "bearish_signals": [],
    "neutral_signals": ["RSI_14 in mid-range"],
    "summary": "Gold is above its 20-period average with MACD histogram expanding.",
    "recommendations": ["Trend-following entries favoured while price holds above support"],
    "updated_at": 1711548000
  }
}
Python Sentiment Scanner
import requests

PAIRS = ["EURUSD", "GBPUSD", "USDJPY", "XAUUSD", "BTCUSD"]
strong = []
for p in PAIRS:
    s = requests.get(
        "https://tickatlas.com/v1/summary",
        headers={"X-API-Key": "YOUR_API_KEY"},
        params={"symbol": p, "timeframe": "H4"},
    ).json()["data"]
    if s["confidence"] >= 0.75:      # confidence is a 0-1 fraction
        strong.append((p, s["bias"], s["confidence"]))
print(strong)

What the Bias Score Includes

Trend Indicators

EMA alignment, ADX trend strength, Ichimoku cloud position, Parabolic SAR direction

Momentum Indicators

RSI reading, MACD signal line cross, Stochastic position, Momentum(14) zero cross

Volatility Indicators

ATR expansion, Bollinger Band width, Standard Deviation levels

Volume Indicators

OBV trend, MFI level, Accumulation/Distribution line direction

Every new account gets $2.50 in free API credits

Pricing

Pay-As-You-Go
$2.50 free credit

From $0.005 per standard call. Great for testing sentiment-based strategies.

Start Free
Most Popular
Starter
$29 /month

10,000 requests a day for scanners, dashboards, and bots.

Get Started
Pro
$79 /month

Scan all symbols at high frequency for confidence-based signal generation.

Get Started

Plug into any stack

  • ChatGPT Custom GPTs
  • Claude Tools
  • Python / pandas
  • Node.js
  • Discord bots
  • Slack webhooks
  • n8n
  • Zapier
  • Trading dashboards
Frequently asked questions

What developers ask first.

Straight answers on limits, coverage and how the endpoint behaves in production.

How is the bias calculated?

We aggregate signals from all 42 indicator series we maintain for the symbol and timeframe (trend, momentum, volatility, and volume groups) using a deterministic weighted scoring model — no model inference, no randomness. The `summary` text is generated from the same signal set so the explanation stays internally consistent with the numeric bias.

How often does the bias update?

The endpoint refreshes whenever a new candle closes for the requested timeframe — so M1 updates every minute, H1 every hour, D1 once a day. Cached responses live for 60 seconds maximum.

Can I trade off the summary text alone?

The summary text is a description of conditions, not trading advice. Pair the bias + confidence with your own risk management; the API is designed to feed signal pipelines, not auto-execute.

Does it work for crypto and metals?

Yes — any symbol with active indicator coverage on the platform. That includes BTCUSD, ETHUSD, XAUUSD, XAGUSD, all major forex pairs, and indices.

Start building

Drop the bias score into your bot in 5 minutes

Sign up, grab your API key, hit /v1/summary. The summary text comes back ready to paste straight into your LLM or alert.

Every new account starts with $2.50 of pay-as-you-go credit. No card required.