AI Trader 架构
统一 TradeIntent 漏斗、account cycle worker、Sim/Live、P/S1/F 与进程边界
5 min read2026-08-08
面向贡献者与运维的 AI Trader / Agent 执行面 摘要。产品操作见 AI Trader:盯盘。权威规格以仓库为准:
- 执行面:
docs/AI_TRADER_EXECUTION_PLAN.md(冲突时以该文为准) - 产品 / Credits / 旅程:
docs/AI_ROADMAP.md - 验收:
docs/TESTING.md§AI(本机 e2e;禁止远程业务机 / 签名机试跑)
一句话
AI Trader 主循环与 Agent execute_trade 共用 TradeIntent → copier → signer → CLOB;LLM 只在冷路径(account 装配 Context → services/ai complete),禁止直连 signer 或在 copier 热路径同步调模型。
三条能力、两条执行河
| 能力 | 队列 / 计佣 | 热路径 |
|---|---|---|
| 跟单(含可选跟 AI 实盘地址 F) | copy_order / 跟单轨 | follow → copier → signer |
| AI 盯盘 / Agent / 手动 trade_order | trade_order / 终端轨 | submit_trade_intent → copier → signer |
| Copilot 只读 | 无下单(Credits) | BFF → services/ai |
硬边界:禁止 AI cycle 自动 POST /follows、禁止 AI 决策直接写他人 copy_order、禁止多人共用一个 Live deployment / 共仓。
进程与职责
web-ui /ai-traders ──JWT──▶ gateway BFF
│
▼
account
┌─ /me/ai-traders*(人类 API)
├─ ai_trader_worker(due cycle)
├─ Context / parse / risk_gate / sim_ledger
└─ AI_URL ──▶ services/ai /internal/llm/complete
│
▼(live decisions)
copier /internal/trade-intent
│
▼
signer ──▶ CLOB
| 进程 | 做 | 不做 |
|---|---|---|
| account | deployment CRUD、Context、gate、Sim ledger、提交 intent、worker | 持用户钥、直连 CLOB |
| services/ai | LLM complete(平台 Key / BYOK) | signer client、下单 |
| copier | 统一意图、执行风控、签单编排、redeem 内部口 | 同步 LLM |
| signer | 通道 A 签单 / 提交 | 业务机常驻用户钥(签名面拆分) |
当前 AT 轨 仅 Channel A;daemon 零钥路径明确延后。
主循环(单 deployment)
every scan_interval:
1. 校验凭证 / 引擎模式
2. 白名单拉数 → PredictionContext(截断 / 脱敏)
3. ai | rules | hybrid → 结构化 decisions
4. sim → sim_ledger;preview → 只记录;live → risk_gate → TradeIntent
5. 持久化 cycle / outcomes(可审计 prompt_version)
同部署用 advisory lock 互斥;进行中 cycle 跳过 due;僵尸 unfinished 由 sweeper 收尾。Live 永久门禁失败 worker 静默跳过,不进瞬时退避。
Risk Gate(双门)
- account
ai_trader_risk_gate:confidence / edge / 价格带 / AI 专用额等(提案层) - copier
check_risk:余额、滑点、订阅限额等(执行层)
跟单日额与 AI 日额 叠加、未统一 portfolio risk engine——产品文案须分开说明。
人类 API(经 gateway)
| 方法 | 路径 | 说明 |
|---|---|---|
| GET/POST | /me/ai-traders | 列表 / 创建(默认 sim、未启动) |
| PATCH | /me/ai-traders/:id | interval / risk / strategy |
| POST | …/start · …/stop · …/run-cycle | 启停与手动一轮 |
| POST | …/set-engine | sim → preview → live |
| GET | …/cycles · …/sim-pnl | 历史与模拟曲线 |
| PATCH | …/showcase · …/follow-cta | 橱窗 P / 地址跟单 F |
| POST | …/publish-template · /me/ai-traders/from-template/:id | 模板 S1(clone 强制 sim) |
| GET | /public/ai-traders/:id | 橱窗公开读(未展示 → 404) |
内部:POST /internal/trade-intent、POST /internal/redeem(须 X-Internal-Secret)。
可见性 DDL(已落地)
| 能力 | 迁移 | 要点 |
|---|---|---|
| 私有默认 | 0076+ | 未展示不可见 |
| P 橱窗 | 0086 | visibility / showcase 字段 |
| S1 模板 | 0087 | 快照 clone,无密钥 / Live |
| F CTA | 0088 | Live + ensure_live_allowed;降档清 CTA;政策 A(警告 + botfilter 仍生效) |
数据配方分层
| 层 | 地位 |
|---|---|
| L1 部署选配(market_ids / rules / instructions / risk) | ✅ |
| L2 平台 Catalog enrichment | ✅ 正确增强方向 |
| L3-B 受控 webhook | 实验 / 非默认 |
| L3-C 任意用户 URL / Trader 整轮 tool 自查 | ❌ 禁止 |
运维开关(摘录)
投放时对照执行规划 § 投放清单,典型包括:
AI_TRADER_WORKER_ENABLEDAI_TRADER_GLOBAL_LIVE_ENABLED(Sim 投放阶段保持关)- 勿在生产打开
AI_TRADER_LIVE_BYPASS_SIM_DAYS AI_URL+ Credits / BYOK 相关开关(见AI_ROADMAP)
验收脚本(本机):infra/e2e_ai_trader_sim.sh、e2e_ai_trader_live.sh、e2e_ai_trader_hybrid.sh 等。
反目标(红线)
- Agent / ai-worker 直连 signer
- copier 热路径 同步 LLM
- 跳过 Sim 默认 Live
- AI 替用户跟 bot / 静默绕过 botfilter
- 多人共 Live deployment / 共仓
- 远程业务机 / 签名机跑 AI 集成测试