mcpField
G
gate-exchange-options

gate-exchange-options

github.com/gate其他48116 次安装18 周前更新
代码仓库

关于 gate-exchange-options

gate-exchange-options 是用于 Gate 期权交易的技能,覆盖下单、平仓或减仓、撤单和改单。它通过 gate-cli 查询合约、市场和账户信息,并在执行交易变更前要求确认。

主要功能

  1. 01市价、限价或按 Mark IV 下单
  2. 02平仓或减少持仓
  3. 03撤销单笔或全部挂单
  4. 04修改挂单价格或数量
  5. 05查询合约、行情、账户和成交

适用场景

  1. 01按指定标的、行权价和到期日下期权单
  2. 02部分或全部平掉期权持仓
  3. 03取消不再需要的挂单
  4. 04调整挂单价格或数量

MCP 相关

该技能通过 gate-cli 调用 Gate 期权相关能力,包括合约与行情查询、账户和持仓读取,以及订单创建、撤销和修改。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gate/gate-skills --skill gate-exchange-options

安装后在 Claude Code 中输入/gate-exchange-options确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

CHANGELOG.md
README.md
setup.sh
references/
amend-order.md
cancel-order.md
close-position.md
place-order.md
scenarios.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)。

请先阅读并遵循 exchange-runtime-rules.md。

Gate 期权交易

此技能是 Gate 期权的统一入口。支持 五种操作类型:下单(市价/限价)、下单(标记 IV)、平仓/减仓、撤销未成交订单、修改未成交订单。用户意图会被路由至匹配的工作流。

覆盖的情形(5 种)

情形描述触发示例(EN)输出示例(EN)
情形 1市价/限价下单"Market buy 1 BTC call, strike at current price, expire in one week" / "Sell 1000U weekly BTC call at 70k strike" / "Open long 1 SOL weekly option at market" / "Use half of account to buy BTC call expiring in 3 days""Order submitted! You have placed a {buy/sell} order on {underlying} at {market/limit price}, strike {xxx}, expiration {xxx}, option type {call/put}, size {xxx} contracts."
情形 2标记 IV 下单"Mark IV order: buy 1 BTC call, one week expiry" / "Sell 1000U weekly BTC call at 70k strike, mark IV" / "Open long 1 SOL weekly option, mark IV"与情形 1 相同,但价格根据标记 IV 或 IV 转价格后端计算得出。
情形 3市价/限价平仓或减仓"Market close my BTC call, expiry 03/18, strike 70000" / "Close half of my ETH put at market" / "Close all profitable option positions" / "Market close all options with loss over 50%""Close order submitted! As requested, you have closed {size} of your {long/short} position on {underlying} at {market/limit price}."
情形 4撤销未成交订单"Cancel the BTC call order at 70k strike, expiry 03/18" / "Cancel all SOL call buy orders" / "Cancel all open orders" / "One-click cancel""Cancel successful! Your {specified/all} open order(s) have been cancelled. A total of {N} order(s) were cancelled, releasing {xxx} USDT margin."
情形 5修改未成交订单"Change my BTC call order at 70k strike, expiry 03/18, price to 0.05" / "Halve the size of my SOL put at strike 70, expiry 03/20""Amend confirmed! Your open order on {underlying} has been updated: price is now {new price}, size is now {new size}. Waiting for fill."

模块概览

模块描述触发关键词
下单(市价/限价)以市价或限价买卖期权market buy、limit sell、open long、buy call、sell put、spend X on option
下单(标记 IV)按隐含波动率(标记 IV)下单mark IV、IV order
平仓/减仓市价/限价平仓或部分平仓close position、flat、reduce half、close all profitable、close losing
撤销订单撤销一个或所有未成交期权订单cancel order、revoke、cancel all、one-click cancel
修改订单修改未成交订单的价格或数量amend、modify price、change size

路由规则

意图示例短语路由至
下单(市价/限价)“市价买入 1 张 BTC 看涨期权,行权价为当前价格,一周后到期” / “以 70k 行权价卖出价值 1000U 的 BTC 周度看涨期权” / “以市价开仓做多 1 张 SOL 周度期权” / “使用账户一半资金买入 3 天后到期的 BTC 看涨期权”阅读 references/place-order.md
下单(标记 IV)“标记 IV 下单:买入 1 张一周后到期的 BTC 看涨期权” / “以 70k 行权价、标记 IV 卖出价值 1000U 的 BTC 周度看涨期权” / “开仓做多 1 张 SOL 周度期权,标记 IV”阅读 references/place-order.md
平仓/减仓“市价平掉我的 BTC 看涨期权,MM/DD 到期,行权价 XXXX” / “以市价平掉一半 ETH 看跌期权” / “BTC 看涨期权多头价格达到 60000 时全部平仓” / “市价平掉所有盈利的期权仓位”阅读 references/close-position.md
撤销订单“撤销 70k 行权价、MM/DD 到期的 BTC 看涨期权订单” / “撤销所有 SOL 看涨期权买单” / “撤销所有未结订单”阅读 references/cancel-order.md
修改订单“将 70k 行权价、MM/DD 到期的 BTC 看涨期权订单价格改为 XXXX” / “将行权价为 70、MM/DD 到期的 SOL 看跌期权订单规模减半”阅读 references/amend-order.md
不明确“帮我处理期权”/“显示我的期权仓位”澄清:查询仓位/订单,然后引导用户

工具映射

所有期权工具均使用 cex_options_ 前缀。参见 gate-mcp 工具。

分组MCP 工具
标的与合约gate-cli cex options market underlyings、gate-cli cex options market expirations、gate-cli cex options market contracts、gate-cli cex options market contract
市场数据gate-cli cex options market order-book、gate-cli cex options market tickers
账户与仓位gate-cli cex options account get、gate-cli cex options position list
订单gate-cli cex options order list、gate-cli cex options order create、gate-cli cex options order cancel、gate-cli cex options order cancel-all
修改gate-cli cex options order amend
成交gate-cli cex options position my-trades
身份验证
  • **交互式文件设置:**当主机上未同时设置 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;切勿要求用户在聊天中粘贴密钥。
  • **权限:**期权:写入(以及按报价/仓位查询需要的读取权限);在满足此技能要求的前提下使用最低权限。
  • **门户:**在聊天之外创建或轮换密钥:https://www.gate.com/myaccount/profile/api-key/manage
安装检查
  • 必需:gate-cli(从 gate-cli releases 安装,或通过适用于你环境的 Gate MCP/技能安装程序安装)。
  • 按名称调用时,将包含 gate-cli 的目录添加到 PATH。
  • 凭据:如果主机上同时设置了非空的 GATE_API_KEY 和 GATE_API_SECRET,不要要求运行 gate-cli config init。如果两者均未设置或为空,提醒操作人员运行 gate-cli config init,或在技能库中相应的技能内配置 GATE_API_KEY/GATE_API_SECRET(切勿要求用户在聊天中粘贴密钥)。
  • **健全性检查:**在 CLI 按预期工作之前,不要进行需要身份验证或会产生变更的调用(例如 gate-cli cex options market tickers 或 gate-cli --version);下单前确认凭据已正确解析。

执行工作流

1. 意图和参数
  • 确定模块(下单 / 平仓 / 取消 / 修改)。
  • 提取:标的、到期日、行权价、看涨 / 看跌 → 解析为准确的合约名称。合约格式为 {underlying}-{expiration}-{strike}-{C|P}(例如 BTC_USDT-20210916-50000-C)。使用 list_options_contracts 或 get_options_contract。
  • 缺少参数:如果缺少必需参数(例如行权价或到期日),询问用户(澄清模式)。
2. 单位换算(仅下单时)

当用户未以合约为单位指定数量时,下单前将数量换算为合约数。

用户表述意图如何计算数量(合约数)
合约数明确指定合约数量“1 张合约”、“买入 3 张合约” → 数量 = 1、3
标的名义金额以标的资产计价的名义金额“0.1 BTC 看涨期权”、“1 BTC 看跌期权” → 合约数 = base_amount / multiplier(来自 get_options_contract)
计价币(USDT)USDT 计价的权利金 / 成本“1000U”、“花费 500 USDT”、“账户的一半” → 合约数 = usdt_amount / price_per_contract(来自订单簿 / 行情数据)
  • 标的名义金额 → 合约数:contracts = base_amount / multiplier。Multiplier = 单张合约以标的资产单位计价的面值(来自 get_options_contract)。
  • 计价币(USDT)→ 合约数:contracts = usdt_amount / price_per_contract。对于“账户的一半”,使用 list_options_account,然后取可用余额的一半。
  • 默认规则:用户说“X BTC”或“X ETH”但未提及“合约”时,视为标的名义金额并进行换算。明确表示合约数量时,使用“X 张合约”。
  • 精度:向下取整至整数;结果必须满足 get_options_contract 中的 order_size_min。如果结果小于 order_size_min,告知用户。
3. 下单前检查
  • 合约:调用 get_options_contract(或通过 list_options_contracts 解析),确保合约存在。
  • 账户:买入时检查余额(使用计价币计量的数量还需从订单簿 / 行情数据中检查 price_per_contract)。
  • 平仓 / 减仓:确认持仓存在且平仓数量不超过持仓数量。全部平仓:close: true、size: 0;部分平仓:使用 reduce_only: true 和数量(多仓为负,空仓为正)。
  • 消除歧义:如果“一个星期”或“3 天”对应多个到期日,选择最近的到期日,或列出选项并询问用户。如果用户说“行权价为当前价格”,使用标的指数价格并选择最近的行权价。
4. 确认
  • 下单:显示最终订单摘要(合约、方向、合约数、价格或市价、行权价、到期日、看涨 / 看跌)。如果数量经过换算,可选择显示对应的标的名义金额或 USDT 金额。“回复‘confirm’以提交订单。” 只有用户确认后,才调用 create_options_order。
  • 平仓 / 取消 / 修改:显示操作范围,并在执行前请求确认。
5. 调用工具并输出
  • 按参考文档指定的顺序调用工具。
  • 使用对应场景的响应模板输出。

报告模板

每次操作后,输出简短、标准化的结果(参见下方响应模板)。

响应模板

使用下方英文模板输出标准化结果。

下单(案例 1 和 2)
Order submitted! You have placed a {buy/sell} order on {underlying} at {market/limit price / mark IV}, strike {xxx}, expiration {xxx}, option type {call/put}, size {xxx} contracts.

如果数量由标的名义金额或 USDT 换算而来,可选择添加示例文本,例如“(相当于 1 BTC 名义金额)”或“(相当于 xxx USDT)”。

平仓 / 减仓(案例 3)
Close order submitted! As requested, you have closed {size} of your {long/short} position on {underlying} at {market/limit price}.
取消订单(案例 4)

工具:

  • 取消所有未完成的期权订单(单击操作 / 所有标的):gate-cli cex options order cancel-all,不带任何参数。
  • 取消单个订单:gate-cli cex options order cancel。
  • 列出未完成订单(以查找 order_id / 确认操作范围):gate-cli cex options order list。
Cancel successful! Your {specified/all} open order(s) have been cancelled. A total of {N} order(s) were cancelled, releasing {xxx} USDT margin.
修改订单(案例 5)
Amend confirmed! Your open order on {underlying} has been updated: price is now {new price}, size is now {new size}. Waiting for fill.

安全规则

确认
  • 下单:显示最终订单摘要(合约、方向、合约数量、价格/市价、行权价、到期日、看涨/看跌),然后在调用 create_options_order 前请求确认。例如:“回复‘confirm’以提交订单。”
  • 平仓/取消/修改(包括取消单笔订单):显示确切范围(合约/order_id,以及适用时的方向、数量/价格),并在执行任何创建/修改/取消订单的操作前请求确认。
错误
代码/情况操作
余额不足建议存入资金或减少数量。
数量低于 order_size_min告知用户;不要提交。
未找到合约确认标的、到期日、行权价、看涨/看跌;建议列出合约。
未找到订单订单可能已成交、已取消,或 ID 有误;建议查看订单历史。
其他
  • 在创建/取消/修改订单前,将标的、到期日、行权价、看涨/看跌解析为唯一合约。
  • 标记 IV订单:如果后端支持 IV 到价格的转换,则使用该功能;否则向用户澄清。
  • 精度:遵循 get_options_contract 返回的 order_size_min 和 order_price_round;价格按 order_price_round 取整。

评论

支持 Markdown