Concordal
The Decision Dialectic · Concord
FOR DEVELOPERS

Use Concordal as your backend

Same 5-analyst pipeline, available as a JSON API. Add /v1/decisions to your stock terminal, Slack bot, internal dashboard, anything. $99/month for 500 decisions; cached repeats are free.

JSON REST API

Same endpoints as our frontend uses. POST /v1/decisions returns a job id; poll /v1/decisions/job/{id} until done.

Bearer token auth

One key per app. Rate-limited per key. Revocable. Self-serve console (coming) shows usage + remaining quota.

Real LLM

Gemini 3.1 Pro / DeepSeek V4 / Claude Sonnet auto-fallback. Cached repeats are free — re-asking the same ticker on the same day costs you 0 credits.

Quick start (Python)

import requests, time

API = "https://trading-agents-platform.onrender.com"
TOKEN = "sk_xxx"  # request via /developers waitlist

# Kick off a decision job
job = requests.post(
    f"{API}/v1/decisions",
    headers={"Authorization": f"Bearer {TOKEN}"},
    json={"ticker": "AAPL", "debate_rounds": 2, "locale": "en"},
).json()

# Poll until done (typical 60-90s for real LLM)
while True:
    r = requests.get(
        f"{API}/v1/decisions/job/{job['job_id']}",
        headers={"Authorization": f"Bearer {TOKEN}"},
    ).json()
    if r["status"] == "done":
        break
    if r["status"] == "error":
        raise RuntimeError(r["error"])
    time.sleep(2)

decision = r["result"]["decision"]
print(decision["side"], decision["target_weight"], decision["confidence"])

…or just curl

curl -X POST https://trading-agents-platform.onrender.com/v1/decisions \
  -H "Authorization: Bearer sk_xxx" \
  -H "Content-Type: application/json" \
  -d '{"ticker": "AAPL", "debate_rounds": 2}'
机构集成 · 论文 §10.3

集成你的内部数据源 — 一行代码

机构客户经常有自营数据源(Bloomberg feed、Refinitiv、内部研究数据库)。把它们集成进 7-agent 流水线只需在系统启动时注册一个 Source handler,无需修改任何消费者代码。新源自动加入 priority-ordered fallback 链路。

from trading_agents.ecosystem.data_bus import bus, Source, NeedKind

# 把你的内部 Bloomberg feed 注册为 OHLCV 数据源
bus.register(Source(
    project_slug="your_firm_bloomberg",
    handles=NeedKind.OHLCV,          # 或任意其他 Need 类型
    priority=1,                       # 1 = 最先尝试(优于 yfinance/akshare)
    handler=lambda need: your_bloomberg_client.get_bars(
        ticker=need.params["ticker"],
        asof=need.params["asof"],      # 强制 asof < today 已在 bus 层保证
        lookback_days=need.params.get("lookback_days", 90),
    ),
    description="Bloomberg BPIPE feed via internal proxy",
))

# 完成。所有 5 位分析师、所有 7-agent 决策、所有 /chain 调用
# 自动开始用你的 Bloomberg feed 作首选源。
Schema Registry 模式:bus 强制 asof 安全 + 缓存 + in-flight 去重 + 完整遥测, 你的 handler 只需要返回数据。新增 Source 不破坏任何已有 Source — 自动加入按 priority 排序的回退链。

$299 / month

1,500 fresh decisions/month · cached repeats free · all 6 LLM providers with auto-fallback · 30 req/min rate limit · email support · dedicated audit log retention.

Bigger volume? Institutional $649/mo · SSO + dedicated audit DB + custom prompts

Start building

The full OpenAPI schema is auto-generated by FastAPI at /docs (interactive Swagger UI). Source on GitHub if you want to self-host instead.