关于 orderly-onboarding
orderly-onboarding 是面向 Orderly Network 永续合约基础设施开发者的入门技能,帮助构建者和开发者了解相关工具。它指引用户使用 MCP 工具、Agent 技能、SDK 和 API 来构建 DEX 界面、集成服务及交易机器人。
主要功能
- 01介绍 Orderly Network 架构
- 02通过 MCP 工具查询文档、SDK 模式和 API
- 03整理开发用 Agent 技能
- 04提供 SDK 与 DEX 开发指引
- 05说明 REST API 和 WebSocket 集成
适用场景
- 01查找 Orderly 文档和代码模式
- 02构建自定义永续合约 DEX
- 03让交易机器人接入交易 API
- 04为钱包或 SDK 开发选择技能
MCP 相关
建议安装 Orderly MCP 服务,并列出其八种工具。这些工具提供文档搜索、SDK 模式、合约地址、工作流、API 参考、索引器数据、UI 组件指南及 Orderly One API 信息。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ starchild-ai-agent/ official-skills --skill orderly-onboarding安装后在 Claude Code 中输入/orderly-onboarding确认已加载。
附带文件scripts/_trade_report.pyscripts/trade_sync.py
详细介绍
Orderly Network:Agent 入门
Orderly 是基于全链订单簿的交易基础设施,为去中心化交易所提供永续期货流动性。本技能是你开始构建 Orderly Network 或了解相关信息的起点。
适用场景
- 首次接触 Orderly Network
- 为 Orderly 开发设置 AI Agent 工具
- 了解 Orderly 生态系统和产品
- 为任务找到合适的技能或资源
- 了解 AI Agent 可用的工具
什么是 Orderly Network
Orderly 是基于订单簿的交易基础设施与强大流动性层的结合,可提供永续期货订单簿。与传统平台不同,Orderly 没有前端,而是在生态系统核心运行,为基于其构建的项目提供关键服务。
主要特征:
- 全链 CLOB:所有主流 EVM 链和 Solana 均可访问的共享中央限价订单簿
- 后端基础设施:没有官方前端;开发者可基于其构建 DEX 和交易界面
- 链上结算:所有交易均在链上结算,同时完全由用户自主托管资产
- 统一流动性:一个订单簿服务于所有已集成的前端
- 永续期货:交易 BTC、ETH、SOL 等资产,最高可达 50 倍杠杆
- 免 Gas 交易:存入资金并激活交易密钥后,无需支付 Gas 费
- 一键交易:每个会话都会生成一对新的交易密钥,无需后续签名
主要用例:
| 用例 | 描述 |
|---|---|
| 开发者/DEX | 使用即插即用的 SDK,在 EVM 和 Solana 上创建自己的永续合约 DEX |
| 永续合约聚合器 | 通过 API 或 SDK 直接访问 Orderly 的共享流动性 |
| 交易团队 | 使用 API 实现具备低延迟订单簿的 CEX 级交易 |
| 交易机器人 | 连接订单簿以获取最优费率,使用 SL/限价订单和免 Gas 交易 |
主要优势
- 统一订单簿和流动性:通过单一交易基础设施访问所有主流链
- 快速开发:使用我们的 SDK,在几天内上线 DEX
- 即用型流动性:由多家顶级做市商提供支持
- 收益分成:从平台产生的费用中赚取一部分
- CEX 级性能:低延迟撮合引擎,支持链上结算
- 自主托管:你掌控自己的资产和私钥
- 协作生态系统:加入蓬勃发展的开发者社区
架构
你的应用(DEX、机器人、钱包、聚合器)
- Orderly 基础设施
- CLOB — 共享中央限价订单簿(在所有链上统一)
- 撮合引擎 — 低延迟订单撮合(CEX 级性能)
- 金库 — 自主托管资产的链上结算
- 风险管理 — 清算引擎和持仓监控
- 结算网络
- EVM:Arbitrum、Optimism、Base、Ethereum、Polygon、Mantle
- 非 EVM:Solana
开始使用:AI Agent 工具
要基于 Orderly 进行构建,请安装 MCP 服务,以获得最佳开发体验。它提供 8 种强大的工具,可用于搜索文档、查找 SDK 模式、合约地址、工作流和 API 参考。
MCP 服务(推荐)
MCP 服务可让 AI 助手即时访问 Orderly 文档、代码模式和 API 参考。
快速安装:
npx @orderly.network/mcp-server init --client <client>
支持的客户端:
| 客户端 | 命令 | 配置文件 |
|---|---|---|
| Claude Code | --client claude | .mcp.json |
| Cursor | --client cursor | .cursor/mcp.json |
| VS Code | --client vscode | .vscode/mcp.json |
| Codex | --client codex | ~/.codex/config.toml |
| OpenCode | --client opencode | .opencode/mcp.json |
手动配置:
如果自动设置不起作用,请将以下配置添加到你的 AI 客户端:
Claude Code(.mcp.json):
{
"mcpServers": {
"orderly": {
"command": "npx",
"args": ["@orderly.network/mcp-server@latest"]
}
}
}
Cursor(.cursor/mcp.json):
{
"mcpServers": {
"orderly": {
"command": "npx",
"args": ["@orderly.network/mcp-server@latest"]
}
}
}
VS Code(.vscode/mcp.json):
{
"servers": {
"orderly": {
"command": "npx",
"args": ["@orderly.network/mcp-server@latest"]
}
}
}
OpenCode(.opencode/mcp.json):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"orderly": {
"type": "local",
"command": ["npx", "@orderly.network/mcp-server@latest"],
"enabled": true
}
}
}
Codex(~/.codex/config.toml):
[mcp_servers.orderly]
command = "npx"
args = ["@orderly.network/mcp-server@latest"]
MCP 服务提供的功能:
| 工具 | 说明 |
|---|---|
search_orderly_docs | 搜索 Orderly 文档中的特定主题 |
get_sdk_pattern | 获取 SDK v2 钩子和模式的代码示例 |
get_contract_addresses | 查询任意链上的智能合约地址 |
explain_workflow | 常见任务的分步指南 |
get_api_info | REST API 和 WebSocket 端点文档 |
get_indexer_api_info | 交易指标、事件和交易量统计 |
get_component_guide | React UI 组件构建指南 |
get_orderly_one_api_info | Orderly One 的 DEX 创建和管理 API |
Agent 技能
安装 Orderly 技能,为你的 AI Agent 增添在 Orderly 上构建产品所需的流程知识。
全局安装所有技能(推荐):
npx skills add OrderlyNetwork/skills --all --agent '*' -g
本地安装所有技能:
npx skills add OrderlyNetwork/skills --all
安装指定技能:
# List available skills
npx skills add OrderlyNetwork/skills --list
# Install specific skill
npx skills add OrderlyNetwork/skills --skill orderly-trading-orders
# Install multiple skills
npx skills add OrderlyNetwork/skills --skill orderly-api-authentication --skill orderly-trading-orders
# Install for specific agent
npx skills add OrderlyNetwork/skills --all --agent claude-code -g
全局安装与本地安装:
- 全局(
-g):适用于所有项目,安装到用户目录 - 本地:仅适用于当前项目,在代码库中创建
.skills/,可提交到版本控制
可用技能:
| 类别 | 技能 | 描述 |
|---|---|---|
| API / 协议 | orderly-api-authentication | 双层身份验证:EIP-712(EVM)+ Ed25519(Solana) |
orderly-trading-orders | 通过 REST API 或 SDK 下单、管理和取消订单 | |
orderly-positions-tpsl | 监控持仓、止盈/止损、杠杆和盈亏 | |
orderly-websocket-streaming | 用于订单簿和成交信息的实时 WebSocket 流 | |
orderly-deposit-withdraw | 代币存款、提现和跨链操作 | |
| SDK / React | orderly-sdk-react-hooks | 所有 React SDK Hooks 的参考 |
orderly-ui-components | 预构建的 React UI 组件 | |
orderly-sdk-install-dependency | 安装 Orderly SDK 软件包 | |
orderly-sdk-dex-architecture | 完整的 DEX 项目结构和设置 | |
orderly-sdk-page-components | 预构建的页面组件 | |
orderly-sdk-theming | CSS 变量主题和自定义 | |
orderly-sdk-trading-workflows | 端到端交易流程 | |
| 平台 | orderly-sdk-wallet-connection | EVM 和 Solana 钱包集成 |
orderly-sdk-debugging | 调试/排查 SDK 错误 | |
orderly-one-dex | 使用 Orderly One API 创建/管理自定义 DEX |
面向构建者(SDK 和 DEX 开发)
使用 Orderly 的 React SDK v2 构建自定义交易界面。
快速开始(创建 DEX 的默认方式)
Fork DEX Template,几分钟内即可获得一个可运行的 DEX。
⚠️ 对 Agent 至关重要 — 绝不要尝试通过安装
@orderly.network/cli来构建 DEX:
@orderly.network/cli是用于下达永续合约订单的终端交易工具,不是 DEX 构建器或脚手架 CLI。安装它会拉取keytar(通过node-gyp进行原生 C++ 构建),导致 1GB 沙盒因内存不足而被强制终止(SIGKILL / 137)。- 零安装部署 DEX:官方 DEX 模板不需要在 Agent 机器上进行任何繁重的安装。将
OrderlyNetwork/dex-templateFork 到用户的 GitHub 账户,配置.env,然后让 GitHub Actions 直接免费构建并部署到 GitHub Pages(也可部署到 Vercel/Netlify)。
- 将仓库
OrderlyNetwork/dex-templateFork 到你的 GitHub 账户(或通过 Composio/gh Fork 到用户的 GitHub 账户) - 配置
.env,填写你的经纪商 ID(VITE_ORDERLY_BROKER_ID)和名称(VITE_ORDERLY_BROKER_NAME) - 使用 orderly-sdk-theming 在
app/styles/theme.css中自定义主题(纯 CSS 自定义属性,无需构建步骤) - Fork 后完成所需的 一次性 GitHub 设置(参见模板 README / AGENTS.md):
- 启用 Actions:
gh api repos/$REPO/actions/permissions -X PUT -f enabled=true -f allowed_actions=all - 授予工作流写入权限:
gh api repos/$REPO/actions/permissions/workflow -X PUT -f default_workflow_permissions=write -F can_approve_pull_request_reviews=true - 通过 Actions 启用 GitHub Pages:
gh api repos/$REPO/pages -X POST -f build_type=workflow(如果没有这些权限,GitHub Actions 将不会运行,自动部署也会失败。)
- 启用 Actions:
- 推送到
main— GitHub Actions 会通过 GitHub 托管的运行器构建,并发布到https://<user>.github.io/<repo>/
此模板使用 components SDK — 预构建的页面组件,无需额外操作即可使用,且自定义需求较少。若要完全控制各个组件,请使用 MCP 服务并加载 SDK 技能(尤其是 orderly-sdk-react-hooks 和 orderly-sdk-ui-components)进行 hooks 级开发。
核心 SDK 包:
包管理器:优先使用
pnpm add(或yarn add),而不是npm install—pnpm在解析依赖时的峰值内存用量约为其 ⅓,可避免资源受限的容器环境出现内存压力。
# Full DEX setup (prefer pnpm)
pnpm add @orderly.network/react-app \
@orderly.network/trading \
@orderly.network/portfolio \
@orderly.network/markets \
@orderly.network/wallet-connector \
@orderly.network/i18n
# Required: EVM wallet support
pnpm add @web3-onboard/injected-wallets @web3-onboard/walletconnect
# Required: Solana wallet support
pnpm add @solana/wallet-adapter-base @solana/wallet-adapter-wallets
可用的关键组件:
OrderEntry- 下单表单Orderbook- 市场深度展示PositionsView- 仓位管理表格TradingPage- 完整交易页面Portfolio- 用户投资组合仪表板ConnectWalletButton- 钱包连接界面
Orderly One(白标 DEX):
无需从头构建,即可推出拥有自有品牌的永续合约 DEX。Orderly One 提供交钥匙解决方案,包括:
- 自定义域名和品牌
- 支付毕业费用后分享手续费收入
- 完整的交易基础设施
- 自定义主题
加载以下技能以进行 SDK 开发:
- orderly-sdk-install-dependency - 包安装指南
- orderly-sdk-dex-architecture - 项目结构和 Providers
- orderly-sdk-wallet-connection - 钱包集成
- orderly-sdk-trading-workflows - 完整交易流程
- orderly-sdk-theming - 自定义指南
面向 API / Bot 开发者
直接集成 Orderly 的 REST API 和 WebSocket 数据流。
API 基础 URL:
| 网络 | URL |
|---|---|
| 主网 | https://api.orderly.org |
| 测试网 | https://testnet-api.orderly.org |
WebSocket URL:
| 网络 | URL |
|---|---|
| 主网 | wss://ws.orderly.org/ws |
| 测试网 | wss://testnet-ws.orderly.org/ws |
身份验证:
- 用于 API 签名的 Ed25519 密钥对生成
- EVM 账户的 EIP-712 钱包签名
- Solana 账户的 Ed25519 消息签名
交易对格式:
PERP_<TOKEN>_USDC
示例:PERP_ETH_USDC、PERP_BTC_USDC、PERP_SOL_USDC
关键端点:
POST /v1/order- 下单GET /v1/positions- 获取持仓GET /v1/orders- 获取订单GET /v1/orderbook/{symbol}- 订单簿快照GET /v1/public/futures- 市场信息
加载以下技能以进行 API 开发:
- orderly-api-authentication - 完整的身份验证设置
- orderly-trading-orders - 订单管理
- orderly-positions-tpsl - 持仓管理
- orderly-websocket-streaming - 实时数据
Orderly CLI(仅用于终端交易 — 不用于构建 DEX)
终端交易工具(@orderly.network/cli),封装了 Orderly REST API,可用于基于 CLI 的交易。
⚠️ 内存警告:请勿在资源受限的环境(≤1GB RAM)中安装
@orderly.network/cli。它依赖keytar,会触发原生 C++ 编译(node-gyp),导致容器因内存不足而被终止。通过 Agent 进行交易或引导时,优先使用 Orderly REST API 或托管的 MCP 服务(https://mcp.orderly.network)。
安装与快速入门(测试网,仅限 RAM >2GB 的本地机器):
npm install -g @orderly.network/cli
orderly wallet-create --type EVM --network testnet
orderly wallet-register --broker-id demo --network testnet
orderly faucet-usdc <address> --chain-id 421614 --network testnet
orderly wallet-add-key --network testnet
orderly auth-list --network testnet
orderly order-place PERP_ETH_USDC BUY MARKET 0.01 --account <id> --network testnet
注意: 已通过身份验证的命令必须使用 --account(通过 auth-list 获取 ID)。十六进制 ID 必须使用 shell 引号括起来。默认网络为测试网 — 在生产环境中请传入 --network mainnet。Linux 需要 libsecret。
Broker ID
demo— 用于测试、开发和个人用途。无需设置。- 自定义 — 前往 dex.orderly.network,选择 "Custom API integration"。费用为 $10,需要手动进行浏览器交互(无法通过 CLI 或 Agent 完成)。
支持的链
Orderly 支持多个 EVM 和非 EVM 链。若要获取当前支持的网络列表及其链 ID、金库地址和 RPC 端点:
GET https://api.orderly.org/v1/public/chain_info
此端点会返回 Orderly 当前支持的所有主网和测试网链,包括 Arbitrum、Optimism、Base、Ethereum、Polygon、Mantle、Solana、Sei、Avalanche、BSC、Abstract 等。
$ORDER 代币
$ORDER 代币是 Orderly 生态系统的核心:
- 最大供应量: 1,000,000,000 枚代币
- 质押: 质押 $ORDER 可赚取 VALOR 和协议收入分成
- VALOR: 衡量质押头寸的不可转让指标;可兑换 esORDER 奖励
- 收入分成: 协议净手续费的 30% 分配给质押者
- 治理: 质押者参与协议治理决策
- esORDER: 带有归属机制的托管 ORDER 奖励
代币合约:
| 网络 | 地址 |
|---|---|
| Ethereum (ERC20) | 0xABD4C63d2616A5201454168269031355f4764337 |
| EVM Chains (OFT) | 0x4E200fE2f3eFb977d5fd9c430A41531FB04d97B8 |
| Solana | ABt79MkRXUsoHuV2CVQT32YMXQhTparKFjmidQxgiQ6E |
有关完整的代币经济学详情,请访问:https://orderly.network/docs/introduction/tokenomics
关键链接
| 资源 | URL | 备注 |
|---|---|---|
| 文档 | https://orderly.network/docs | |
| SDK 仓库 | https://github.com/orderlynetwork/js-sdk | |
| DEX 模板 | https://github.com/OrderlyNetwork/dex-template | 最快上手,使用组件 SDK |
| MCP 服务(npm) | https://www.npmjs.com/package/@orderly.network/mcp-server | |
| CLI(npm) | https://www.npmjs.com/package/@orderly.network/cli | |
| Skills(npm) | https://www.npmjs.com/package/@orderly.network/skills | |
| Skills.sh | https://skills.sh | |
| DEX 仪表板 | https://dex.orderly.network | |
| Orderly App | https://app.orderly.network | |
| Discord | https://discord.gg/OrderlyNetwork | |
| https://twitter.com/OrderlyNetwork |
推荐的后续步骤
如果你正在构建 DEX:
- Fork DEX 模板,快速开始
- 安装 MCP 服务:
npx @orderly.network/mcp-server init - 在
.env中配置 broker 设置并自定义主题 - 如需更多控制,可加载 orderly-sdk-install-dependency 和 orderly-sdk-dex-architecture,从头开始构建
- 使用 orderly-sdk-wallet-connection 设置钱包连接
如果你正在构建交易机器人或 API 集成:
- 首先加载 orderly-api-authentication
- 安装 MCP 服务以查阅 API 参考
- 加载 orderly-trading-orders 和 orderly-websocket-streaming
如果你想在终端交易或使用 CLI:
- 安装 CLI:
npm install -g @orderly.network/cli - 运行
orderly --help查看所有命令 - 按照测试网快速入门操作(6 条命令,见上文 Orderly CLI 部分)
- 测试时使用
--broker-id demo,或在 dex.orderly.network 获取自定义 broker ID($10,需手动在浏览器中操作)
如果你正在推出白标 DEX:
- 安装 MCP 服务以使用 Orderly One API 工具:
npx @orderly.network/mcp-server init - 加载 orderly-one-dex 技能,了解 DEX 创建和管理工作流
- 加载 orderly-sdk-theming 技能,了解用于 API 更新的主题结构
如果你正在排查问题:
- 加载 orderly-sdk-debugging
- 使用 MCP 服务搜索文档
测试:
- 使用测试网环境进行开发
- 从水龙头申请测试网 USDC:
POST /v1/faucet/usdc(仅限测试网) - 每个账户最多可使用水龙头 3 次
常见问题
“我该从哪里开始构建?”
快速构建 DEX:Fork DEX 模板,配置 .env 并部署。它使用预构建组件,是最快的方式。
需要更多控制:先安装 MCP 服务:npx @orderly.network/mcp-server init --client <your-client>,然后加载 orderly-sdk-react-hooks 和 orderly-sdk-dex-architecture 等 SDK 技能,使用 hooks SDK 进行构建。
然后询问:“如何连接到 Orderly Network?”或加载 orderly-sdk-wallet-connection。
“MCP 服务和 Skills 有什么区别?”
- MCP 服务:为 AI 助手提供的运行时工具(文档搜索、模式查询、API 参考)
- Skills:嵌入上下文中的程序性知识(操作指南、代码示例、最佳实践)
两者结合使用效果最佳。
“如何在没有真实资金的情况下进行测试?”
使用测试网环境:
- API:
https://testnet-api.orderly.org - WebSocket:
wss://testnet-ws.orderly.org/ws - 获取测试用 USDC:
POST https://testnet-operator-evm.orderly.org/v1/faucet/usdc
“我需要手动处理身份验证吗?”
SDK 会自动处理身份验证。对于仅使用 API 的集成,请加载 orderly-api-authentication,了解完整的身份验证流程。
“如何获取自定义 broker ID?”
前往 dex.orderly.network,选择 "Custom API integration" 选项,然后按照步骤操作。费用为 $10。这需要手动与浏览器交互,无法通过 CLI 或 Agent 完成。测试和开发时,请使用 --broker-id demo——无需设置。
相关技能
API / 协议
- orderly-api-authentication - 完整的身份验证设置
- orderly-trading-orders - 订单管理
- orderly-positions-tpsl - 仓位和风险管理
- orderly-websocket-streaming - 实时数据流
- orderly-deposit-withdraw - 资产管理
SDK / React
- orderly-sdk-react-hooks - React hooks 参考
- orderly-ui-components - 预构建 UI 组件
- orderly-sdk-install-dependency - SDK 安装
- orderly-sdk-dex-architecture - DEX 架构
- orderly-sdk-page-components - 页面组件
- orderly-sdk-theming - 主题指南
- orderly-sdk-trading-workflows - 交易工作流
平台
- orderly-sdk-wallet-connection - 钱包集成
- orderly-sdk-debugging - 调试指南
- orderly-one-dex - Orderly One DEX 管理
交易索引(Starchild Agents)
Starchild 会通过
POST {AI_AGENT_API_URL}/v1/trade-events 将 Orderly 成交记录写入 trade_events
(与 hyperliquid / polymarket / DEX 技能使用相同的处理流程)。分为两层——两者都要使用:
| 层 | 负责方 | 覆盖范围 |
|---|---|---|
| 实时(本技能) | Agent,在每笔 Orderly 交易后 | 已确认的 Agent 发起的成交 |
| 中央每日 Public Info 扫描 | 平台 cron(约 10:30 Asia/Hong_Kong) | Agent EVM 钱包 + 个人/登录 EVM 钱包(数千个地址);补录 / 第三方钱包 |
仅使用私有 ed25519
/v1/trades端点不足以满足平台分析需求——API 密钥 / SDK 交易通常绑定到用户的个人钱包,而不是 Agent Privy 钱包。务必记录实际执行交易的钱包。
关键:wallet_address = 执行钱包
上报时,将 wallet_address 设置为持有 Orderly 账户 / 为订单签名的地址——不一定是 Agent Privy 钱包。
| 情况 | wallet_address 的值 |
|---|---|
| 通过 Agent Privy 钱包交易 | 钱包服务提供的 Agent EVM 地址 |
| 通过用户自己的 / 第三方钱包交易(API 密钥、SDK、经纪商 UI) | 该第三方 0x… 地址 |
| 使用覆盖参数的同步脚本 | --address 0x… 或 ORDERLY_WALLET_ADDRESS |
地址错误 → 交易量归属错误,或未被计入 Agent 分析。
每笔 Orderly 交易后实时上报(必需)
任何 Orderly 订单成交或部分成交后(无论通过 SDK、CLI、REST 还是未来的交易技能),都要以发送后不等待的方式上报。上报错误绝不能阻塞交易或导致交易失败。
一次调用,不做后续操作。 这是一个普通的 HTTP POST,不调用大模型,也不需要额外轮次。不要验证上报是否成功,不要重试,也不要向用户提及,除非上报引发错误。服务器会去重,因此重复发送无害;遗漏的上报会由每日扫描补上。
from scripts._trade_report import report_trade_events
# or: copy the same helper used by hyperliquid / other trading skills
report_trade_events([{
"source": "orderly", # realtime skill/agent report
"venue": "orderly:<broker>", # e.g. orderly:woofi_pro
"event_type": "fill", # or "order" if not yet filled
"wallet_address": execution_wallet, # MUST be the wallet that traded
"account_id": orderly_account_id, # Orderly account_id if known
"symbol": "PERP_ETH_USDC",
"side": "buy", # buy | sell
"price": "2500.1",
"size": "0.5",
"notional_usd": "1250.05",
"fee": "0.12",
"fee_currency": "USDC",
"order_id": str(order_id),
"dedupe_key": f"orderly:{account_id}:{trade_id}", # stable unique
"occurred_at": "2026-07-15T12:00:00Z", # ISO8601 UTC
"raw": {"trade_id": trade_id, "broker": broker},
}])
dedupe_key 约定(服务器对 (user_id, dedupe_key) 设置唯一约束):
- 已知
trade_id时,优先使用orderly:{account_id}:{trade_id} - 否则使用
orderly:{execution_wallet_lower}:{order_id}:{fill_index} - 绝不要生成包含空值或
NoneID 的键:归档的 Public Info 行可能缺少id/trade_id/match_id,所有此类成交都会合并到同一个dedupe_key。trade_sync.py会回退到synthetic_trade_id(ts_ms, symbol, side, price, size)(基于 sha1 生成)。
从短生命周期脚本(cron、一次性同步)调用时?请传入
report_trade_events(events, blocking=True)。默认的后台线程是守护线程,进程退出时会被终止,因此 POST 无法离开本机。长时间运行的 Agent 进程应保留默认的非阻塞模式。超过 500 个事件的批次会自动拆分。
分析中使用的来源标签:
source | 含义 | 等级 |
|---|---|---|
orderly | 实时 Agent/技能上报 | 已确认 |
orderly_sync | 本脚本,私有 /v1/trades | 已确认 |
orderly_public_sync | 本脚本,Public Info API | 参考(尤其是第三方) |
backfill:agent_wallet | 平台每日 Public Info(Agent) | 可归因 |
backfill:login_wallet | 平台每日 Public Info(登录) | 参考 |
历史/补漏同步脚本
pip install pynacl base58 # one-time
# Agent wallet (default)
python3 scripts/trade_sync.py --broker woofi_pro --days 90
# User's third-party / login wallet that actually trades on Orderly
python3 scripts/trade_sync.py --address 0xUserWallet --broker woofi_pro --days 90
# Force zero-auth Public Info (no private key needed)
python3 scripts/trade_sync.py --address 0xUserWallet --public-only
环境变量覆盖项(与 --address 相同):ORDERLY_WALLET_ADDRESS=0x…
脚本的操作(幂等):
- 确定执行钱包:
--address→ORDERLY_WALLET_ADDRESS→ Agent EVM。 - 查询该地址及 broker 对应的 Orderly 账户(仅当该地址就是 Agent 钱包且能够进行 EIP-712 签名时才注册)。
- 如果该账户有可用的 ed25519 读取权限密钥,则调用私有
GET /v1/trades。Agent 钱包可通过AddOrderlyKey创建读取密钥; 第三方钱包只能使用现有密钥文件(Agent 无法代表其他钱包签名)。 - 否则回退到 Public Info
POST /v1/public/query{type:trades,address}(无需身份验证)——适用于没有密钥的第三方钱包。 - 将成交映射为
wallet_address=<execution wallet>和dedupe_key=orderly:<account_id|address>:<trade_id>,然后以发送后不等待的方式 上报到/v1/trade-events。
密钥按账户存储于 workspace/.orderly_key_<account_prefix>.json
(权限模式 600)。可安全地安排每日运行;服务器端去重可防止本脚本与平台 Public Info cron 重复计数。
在 Orderly 上执行任何交易后,要么立即调用 report_trade_events
(优先),要么运行此同步脚本,确保成交被索引。上报绝不能阻塞交易或导致交易失败。