关于 gate-exchange-tradfi
gate-exchange-tradfi 是通过 gate-cli 查询和管理 Gate TradFi 订单、持仓、市场数据及账户资产的技能。它区分只读查询与交易操作,并要求写入操作先经确认。
主要功能
- 01查询订单、持仓及历史记录
- 02获取 TradFi 市场数据
- 03查看账户资产和 MT5 信息
- 04创建、修改和取消订单
- 05更新或平仓
- 06交易操作前要求确认
适用场景
- 01查看当前订单或历史持仓
- 02查询交易品种、行情或 K 线
- 03创建带止盈或止损的订单
- 04修改或平仓前确认操作参数
MCP 相关
该技能通过 gate-cli 将工作流路由至 Gate TradFi MCP 工具,并区分只读查询与确认后的交易操作。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gate/ gate-skills --skill gate-exchange-tradfi安装后在 Claude Code 中输入/gate-exchange-tradfi确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
CHANGELOG.mdREADME.mdsetup.shreferences/amend-order.mdcancel-order.mdclose-position.mdgate-cli.mdmcp.mdmodify-position.mdplace-order.mdquery-assets.mdquery-market.mdquery-orders.mdquery-positions.md详细介绍
解析 gate-cli(二进制路径)
按以下顺序解析 gate-cli:(1) command -v gate-cli 和 gate-cli --version 均成功;(2) 如果 ${HOME}/.local/bin/gate-cli 可执行,则使用它;(3) 如果 ${HOME}/.openclaw/skills/bin/gate-cli 可执行,则使用它。规范规则:exchange-runtime-rules.md §4(或 gate-runtime-rules.md §4)。
Gate 传统金融套件
通用规则
⚠️ 停止——继续操作前,必须阅读并严格遵守共享运行时规则。 在阅读完所有规则之前,不得选择或调用任何工具。这些规则具有最高优先级。 → 阅读 gate-runtime-rules.md
- 只能使用此技能中明确列出的
gate-cli命令。 对于这些工作流,严禁运行此处未记录的命令,即使其他接口提供了这些命令也不例外。
技能依赖
使用的 gate-cli 命令
查询操作(只读)
gate-cli cex tradfi market categoriesgate-cli cex tradfi account infogate-cli cex tradfi order historygate-cli cex tradfi order listgate-cli cex tradfi position historygate-cli cex tradfi position listgate-cli cex tradfi market symbolgate-cli cex tradfi market klinegate-cli cex tradfi market tickergate-cli cex tradfi market symbolsgate-cli cex tradfi account assets
执行操作(写入)
gate-cli cex tradfi position closegate-cli cex tradfi order creategate-cli cex tradfi order cancelgate-cli cex tradfi order updategate-cli cex tradfi position update
身份验证
- 交互式文件配置: 当主机上未同时设置
GATE_API_KEY和GATE_API_SECRET时,运行gate-cli config init,完成 API 密钥、密钥、配置档案和默认值的向导(参见 gate-cli)。 - 环境变量 / 标志: 如果已提供凭据,则无需运行
gate-cli config init——例如,主机上已同时设置GATE_API_KEY和GATE_API_SECRET,或在支持的情况下使用--api-key/--api-secret;切勿要求用户在聊天中粘贴密钥。 - 权限: Tradfi:Write
- 门户: 在聊天之外创建或轮换密钥:https://www.gate.com/myaccount/profile/api-key/manage
安装检查
- 必需:
gate-cli(如果缺失,请从此技能目录运行sh ./setup.sh;可选GATE_CLI_SETUP_MODE=release)。 - 如果按名称调用
gate-cli,请将$HOME/.openclaw/skills/bin添加到PATH(或添加setup.sh安装它的目录)。 - 凭据: 当主机设置了非空的
GATE_API_KEY和GATE_API_SECRET时,不要要求运行gate-cli config init——这对gate-cli而言是等效的有效配置。当两者均未设置或为空时,提醒操作者运行gate-cli config init,或在技能库中与之匹配的技能中配置GATE_API_KEY/GATE_API_SECRET(切勿要求用户在聊天中粘贴密钥)。 - 健全性检查: 在进行经过身份验证的调用前,不要继续操作;先确认 CLI 表现符合预期(例如运行
gate-cli --version或此技能中的只读gate-cli cex ...命令),并在执行变更操作前确认凭据已正确解析。
执行模式
阅读并严格遵守 references/gate-cli.md,然后执行此技能的 TradFi 工作流。
SKILL.md负责路由和领域约束。references/gate-cli.md是权威的gate-cli执行规范,规定了查询与变更操作的区分、确认关卡和操作后验证。
子模块
| 模块 | 描述 | 触发关键词 |
|---|---|---|
| 查询订单 | 订单列表、订单历史记录 | orders、open orders、order history |
| 查询持仓 | 当前持仓列表、持仓历史记录 | positions、my positions、position history、holdings、current position |
| 查询市场 | 类别列表、交易品种列表、行情、交易品种 K 线 | category、categories、symbol list、symbols、ticker、kline、candlestick、market |
| 查询资产 | 用户余额/资产信息、MT5 账户信息 | assets、balance、account、my funds、MT5、mt5 account |
| 下单 | 创建新订单(支持在创建时设置止盈/止损) | place order、create order、open order、buy、sell、long、short、take-profit、stop-loss |
| 修改订单 | 更改订单价格、止盈或止损(不支持更改数量) | amend order、modify order、change price、take-profit、stop-loss |
| 取消订单 | 取消一个或多个订单 | cancel order、revoke order、cancel |
| 修改持仓 | 仅更改持仓止盈/止损(不支持调整杠杆、保证金) | modify position、take-profit、stop-loss、change take-profit、change stop-loss |
| 平仓 | 全部或部分平仓 | close position、close、close all、flat |
路由规则
| 意图 | 示例短语 | 路由至 |
|---|---|---|
| 查询订单 | “我的 TradFi 订单”、“订单历史记录”、“显示未结订单”、“订单状态” | 读取 references/query-orders.md |
| 查询持仓 | “我的持仓”、“持仓历史记录”、“当前持仓”、“我持有哪些仓位” | 读取 references/query-positions.md |
| 查询市场 | “TradFi 类别”、“类别列表”、“交易品种列表”、“行情”、“X 的 K 线”、“市场数据” | 读取 references/query-market.md |
| 查询资产 | “我的资产”、“余额”、“账户余额”、“MT5 账户”、“我的 MT5 信息” | 读取 references/query-assets.md |
| 下单 | “下单”、“买入 EURUSD”、“卖出 XAUUSD 0.1”、“开多仓”、“带止盈/止损的订单” | 读取 references/place-order.md |
| 修改订单 | “修改订单”、“将价格更改为 X”、“止盈”、“止损” | 读取 references/amend-order.md |
| 取消订单 | “取消订单”、“取消所有订单”、“撤销订单” | 读取 references/cancel-order.md |
| 修改持仓 | “修改持仓”、“止盈”、“止损”、“更改止盈/止损” | 读取 references/modify-position.md |
| 平仓 | “平仓”、“全部平仓”、“平掉一半”、“清仓” | 读取 references/close-position.md |
| 不明确 | “TradFi”、“给我看看我的 TradFi” | 请先澄清:列出查询和交易模块,或询问用户想要哪一项。 |
gate-cli 命令索引
查询(只读)——仅使用 MCP 文档中说明的参数。
| # | 工具 | 用途 |
|---|---|---|
| 1 | gate-cli cex tradfi order list | 列出未结订单。 |
| 2 | gate-cli cex tradfi order history | 查询订单历史记录(已成交/已取消)。 |
| 3 | gate-cli cex tradfi position list | 列出当前持仓。 |
| 4 | gate-cli cex tradfi position history | 列出历史持仓/结算记录。 |
| 5 | gate-cli cex tradfi market categories | 查询 TradFi 类别列表。 |
| 6 | gate-cli cex tradfi market symbols | 列出交易品种(如果支持,可按类别筛选)。 |
| 7 | gate-cli cex tradfi market ticker | 获取一个或多个交易品种的行情。 |
| 8 | gate-cli cex tradfi market symbol | 获取交易品种配置(下单前必须获取:杠杆倍数、min_order_volume、step_order_volume)。如果没有结果,该交易品种可能不存在——请勿下单。 |
| 9 | gate-cli cex tradfi market kline | 获取交易品种的 K 线/蜡烛图数据。 |
| 10 | gate-cli cex tradfi account assets | 获取用户账户/余额(资产)。 |
| 11 | gate-cli cex tradfi account info | 获取 MT5 账户信息。 |
交易(写入)——工具名称和参数必须与 Gate TradFi MCP 工具定义完全一致。必填/可选项、取值范围和允许的交易品种等条件和值限制,必须在技能和每篇参考文档中声明;不得传递未记录的参数。
| # | 工具(按 MCP 中的名称) | 用途 |
|---|---|---|
| 12 | gate-cli cex tradfi order create | 下新订单;支持止盈/止损。调用前:使用 gate-cli cex tradfi market symbol 验证交易品种并获取 min_order_volume、step_order_volume、杠杆倍数。 |
| 13 | gate-cli cex tradfi order update | 仅修改订单价格、止盈和止损(不支持修改数量)。 |
| 14 | gate-cli cex tradfi order cancel | 取消/删除单个订单。不支持批量操作;每次调用只能处理一个订单。 |
| 15 | gate-cli cex tradfi position update | 仅修改持仓的止盈/止损价格(不支持修改杠杆和保证金)。 |
| 16 | gate-cli cex tradfi position close(或对应的 MCP 工具) | 平仓(全部或部分)。全部平仓:仅提供持仓标识符,不要传递 size/close_volume。 |
参数条件和值限制
- 对于每个 MCP 工具,MCP 中都定义了输入条件和值限制(必填/可选参数、取值范围、允许的交易品种、精度)。本技能和每篇参考文档都必须声明这些条件和值限制,以便 Agent 和用户了解可以传递哪些内容。
- 在每篇交易参考文档(
place-order.md、amend-order.md、cancel-order.md、modify-position.md、close-position.md)中,都要添加一个 Parameters 部分,说明必填/可选参数、取值限制以及 MCP 特定规则。不得添加 MCP 文档中未说明的参数。 - 如果用户提供的值超出允许范围,或缺少必填参数,请先要求用户更正,再构建确认负载。
用户确认(仅限交易)
- 调用任何交易 MCP 工具(下单、修改订单、取消订单、修改持仓、平仓)之前:先输出将发送给 MCP 的所有参数,供用户检查。请用户确认(例如:“确认:以 symbol=X、side=Y、size=Z、price=W 下单。回复 yes 以执行。”)。在用户明确确认之前,不得调用工具。
- 此规则适用于每项写入操作;仅查询的流程无需确认。
响应参数说明(仅限交易)
- 交易 MCP 工具返回后:在回复用户时,说明所使用的参数(例如 symbol、side、size、price、order_id 或仓位标识符)以及执行结果(例如已创建订单、已修改订单、已取消订单、已修改仓位、已平仓)。请用简短的摘要表格或列表列出已发送的参数和结果(成功或错误代码/消息)。此要求已在此技能中声明,以确保 Agent 始终向用户报告发送了什么以及发生了什么。
执行
1. 意图和参数
- 确定模块:查询(订单、仓位、市场、资产)或交易(下单、修改、取消、修改仓位、平仓)。
- 对每次 MCP 工具调用,仅使用 Gate TradFi MCP 工具定义中规定的参数。不要传递 MCP 中未记录的参数。
- 仅从用户消息中提取 MCP 实际支持的键。遵循此技能和参考资料中声明的条件和限制。
2. 阅读子模块并调用工具
- 加载
references/下对应的参考资料,并遵循其中的工作流。 - 查询:使用提取或询问得到的参数调用查询工具;无需确认。
- 交易:根据参考资料和 MCP 构建参数集;向用户展示参数以供确认;仅在用户确认后调用交易 MCP 工具;然后在回复中说明所用参数和执行结果。
3. 报告
- 查询:使用子模块的报告模板(订单/仓位/行情表格、资产)。
- 交易:使用参考资料中的报告模板;包含参数摘要(发送了什么)和结果(成功或错误)。
领域知识
- TradFi:Gate 的传统金融产品集(例如 FX、MT5)。交易品种和类别因产品而异。
- 查询:订单、仓位、市场、资产——仅使用 MCP 文档中规定的参数。
- 交易:下单/修改/取消订单以及修改/平仓——仅使用 MCP 文档中规定的工具和参数;声明条件/限制;执行前必须获得用户确认;在回复中说明参数和执行结果。
- 取消/修改所用的订单 ID:
gate-cli cex tradfi order cancel和gate-cli cex tradfi order update使用的订单 ID 必须来自gate-cli cex tradfi order list。取消或修改时,不要使用gate-cli cex tradfi order create返回的id或log_id。
错误处理
| 情况 | 操作 |
|---|---|
| 未找到工具 / 4xx/5xx | 告知用户 TradFi 服务或工具可能不可用;建议重试或检查 Gate MCP 配置。 |
| 列表为空 | 报告“没有未结订单”/“没有仓位”/“没有交易品种”等,不要假定这是错误。 |
| 交易品种无效 / 未找到订单 | 报告“未找到订单”或“未找到交易品种”,并建议检查交易品种列表。 |
| 身份验证 / 权限错误 | 不要泄露凭证;请用户检查 TradFi 的 API 密钥或 MCP 身份验证。 |
| 交易错误(例如保证金不足、价格无效) | 显示错误消息;在回复中重述已发送的参数并建议修正。 |
安全规则
- 查询:无需确认;工具成功后显示数据。
- 交易:调用下单/修改/取消/修改仓位/平仓工具前,务必向用户展示参数以供确认;未经用户明确确认,绝不执行写入操作。执行后,务必在回复中说明所用参数和执行结果。
- 敏感数据:不要记录或存储凭证或余额;仅在当前回复中显示。
报告模板
查询 — 每次查询后:
- 订单:包含 symbol、side、size、price、status、time 等列的表格(来自列表响应)。
- 持仓:包含持仓字段(例如 symbol、side、size、entry、margin)的表格,或“No open positions.”。
- 市场:类别列表;symbol 列表;行情表格(symbol、last、24h change、volume);或 symbol K 线摘要(interval、range、OHLC)。
- 资产:资产和余额列表;或 MT5 账户/服务器/余额/净值表格;出错时显示“Unable to load”。
交易 — 每次下单/改单/取消/修改/平仓后:
- 所用参数:发送给 MCP 的参数列表或表格(例如 symbol、side、size、price、order_id)。
- 结果:成功(例如订单 ID、状态)或错误(代码/消息)。如果出错,建议下一步操作。