MetaMask Agent Wallet 通过 mm perps 命令集 在 Hyperliquid 上交易永续合约。交易者用自然语言向 Agent 描述想要建立的仓位,Agent 随即将请求路由至相应命令,完成存入保证金、获取报价、开仓、设置止盈止损,以及后续平仓或调整仓位等操作。钱包始终保管资产;存款须经过策略检查,Agent 仅负责提议操作。
这种交互方式,正是 Agent 驱动的永续合约交易与手动点击界面的本质区别。一句话背后往往隐含着大量关于订单类型、滑点和仓位大小的未明确假设。本文将重点阐明值得明确说明的细节,包括 MetaMask 钱包层面的控制机制究竟覆盖了工作流程中的哪些环节,以及哪些环节不在其管控范围之内。
本文是一篇交易机制指南,而非永续合约入门教程。如需了解永续合约的概念及定价原理,请参阅 永续合约交易入门 和 永续合约核心概念。如需了解仓位大小的计算方法,请参阅 永续合约交易中的杠杆与保证金。如需了解钱包类别本身,请参阅 什么是 Agentic 钱包 和 Agentic 钱包的工作原理。
永续合约功能一览
以下是永续合约工作流程所依赖的命令。了解这些命令有助于更准确地表达请求,确保 Agent 按预期执行。
你向 Agent 的请求 | 执行的命令 | 功能说明 |
"有哪些永续合约市场可以交易" | mm perps markets
| 列出交易平台上可交易的标的 |
"向我的永续合约账户存入 500 USDC" | mm perps deposit
| 将 USDC 存入交易平台 |
"BTC 5 倍做多需要多少成本" | mm perps quote
| 在不提交订单的情况下对仓位进行报价 |
"用 100 美元开 BTC 5 倍做多" | mm perps open
| 提交订单 |
"在 58,000 设置止损" | mm perps modify
| 附加止盈、止损或调整杠杆 |
"查看我的持仓" | mm perps positions
| 读取当前持仓敞口 |
"平掉我的 BTC 仓位" | mm perps close
| 全部或部分平仓 |
"取消那笔挂单" | mm perps cancel
| 按订单 ID 取消订单 |
"将 200 USDC 转回现货" | mm perps transfer
| 在现货余额与永续合约余额之间转移保证金 |
来源:MetaMask Agent Wallet 命令参考文档。
在掌握上述基础知识后,以下是使用 MetaMask Agent Wallet 交易永续合约的 9 条关键建议。
1. 首次操作前先为永续合约账户充值
Hyperliquid 子账户在首次使用时余额为零。在保证金到账之前就要求 Agent 开仓,可能会触发 HYPERLIQUID_ERROR 或 ORDER_REJECTED 错误,且 Agent 无法进行有效重试。
mm perps deposit 默认从 Arbitrum 获取 USDC,因此 USDC 需要存放在 Arbitrum 上,或者通过 --source-chain-id 指向其所在的链。如果保证金已在交易平台的现货余额中,可使用 mm perps transfer --direction spot-to-perp 进行划转,而无需重新存款。
有一个数字值得牢记:名义价值低于 10 美元的订单会因 INVALID_AMOUNT 被拒绝,系统会提示增加仓位大小或杠杆倍数。小额测试交易必须满足这一最低门槛。
2. 开仓前先获取报价,或使用模拟运行进行预览
mm perps quote 可在不提交订单的情况下对仓位进行报价。mm perps open --dry-run 则更进一步,可在不签名或提交的情况下验证完整订单。
这两种方式在使用 Agent 时比手动操作界面更为重要,因为交易者通常会在屏幕上阅读的确认步骤,可以被设置为让 Agent 跳过。获取报价或进行模拟运行,可以在签名之前将具体数据重新呈现给用户。
3. 如需限价单,请明确说明"限价"
mm perps open 支持 --type market(市价)或 --type limit(限价),限价单需要指定 --limit-px。如果请求表述为"用 200 美元开 ETH 5 倍做多",其中不包含价格指令,则会被解析为市价单。
市价单会穿越买卖价差,可能产生滑点,即预期成交价与实际成交价之间的差异。在流动性较差的市场中,这一差距会扩大。注重入场价格的交易者通常会明确指定价格,而更注重成交确定性的交易者则通常不会。
4. 在开仓和平仓时设置滑点上限
mm perps open 和 mm perps close 均支持 --max-slippage-bps 参数,以基点为单位设置滑点上限。文档未公布默认值,因此未设置该参数提交的订单,将采用 CLI 内部应用的默认值,而非用户明确指定的数值。
明确设置滑点上限,是少数几种能够以 Agent 无法重新解读的方式约束自主开仓的指令之一。此外,平仓时也很容易忘记设置,而平仓恰恰是滑点最容易造成损失的环节,因为平仓往往集中在所有人都在同时平仓的时刻。
5. 将止盈止损作为独立的第二步骤进行设置
mm perps open 不支持直接设置止盈止损。这些参数需通过 mm perps modify --tp <价格> 和 --sl <价格> 来添加,且至少需要提供 --leverage、--tp 或 --sl 中的一个参数。
实际影响在于:Agent 开仓后,在有人明确要求之前,该仓位不会附带任何平仓订单。如果提示语为"用 100 美元开 BTC 5 倍做多,然后在入场价下方 4% 设置止损,上方 8% 设置止盈",则描述了两条命令,两者都会执行。如果提示语在第一句话后就结束,则只会得到一个裸仓位。在描述入场的同时设置离场条件,才能避免这两种状态之间的落差带来风险。
6. MetaMask 检查的是存款,而非订单
在永续合约工作流程中,只有一个步骤属于 MetaMask 钱包层面控制机制实际评估的 EVM 交易:存款。在两种交易模式下,存款均会经过威胁扫描。在 Guard 模式下,存款还会被计入 滚动 24 小时出金限额,MetaMask 文档将向 Hyperliquid 的存款与代币转账和兑换并列为纳入该限额的类别。如果存款超出该限额,或在任一模式下被威胁扫描标记,任务将暂停并进入 AWAITING_MFA 状态,等待双重身份验证审批——对于 QR 码登录,将通过 MetaMask Mobile 推送通知发送;对于浏览器登录,则通过电子邮件链接发送。在用户响应之前,Agent 无法继续操作。此机制适用于服务器钱包模式;交易模式不适用于自带钱包的设置。
开仓、修改和平仓操作发生在 Hyperliquid 平台本身,而非作为 MetaMask 模拟的 EVM 交易。这些操作不会经过威胁扫描,不消耗出金额度,不受白名单检查,也不会触发双重身份验证,无论仓位大小如何。一笔 2,000 美元的存款若超出出金限额,在转入时会受到审查;但基于同等保证金以 25 倍杠杆开立的 50,000 美元仓位,则不会受到钱包的二次审查。出金限额是资金层面的控制机制,而非仓位大小的控制机制,订单本身的仓位管理完全取决于提示语的内容以及 Agent 的处理方式。
实用建议:以审慎、独立的步骤为账户充值,且金额应与实际愿意承担的风险相匹配,因为这是 MetaMask 安全机制唯一生效的时刻。存款之后的所有操作,均由交易者和 Agent 共同负责。
7. 始终使用同一种登录方式
Google 登录、无密码邮箱登录和 MetaMask Mobile QR 码登录各自对应不同的服务器钱包地址,即使使用同一个邮箱地址登录多种方式也是如此。由于 Hyperliquid 账户是从特定钱包充值的,使用不同方式登录会显示一个不同的地址,该地址下没有任何保证金。
避免此问题的方法:选择一种登录方式,每次都使用它,并在登录后运行 mm wallet address 确认预期地址,再进行任何操作。资金仍在原处,只是在错误的会话中不可见。
8. 明确指定 HIP-3 DEX 的范围
余额、持仓和订单默认显示主 Hyperliquid DEX 的数据。--dex <名称> 可将查询范围限定至特定 HIP-3 DEX,--all-dexes 则可在余额和持仓读取时跨 DEX 汇总数据。
如果 Agent 被要求"查看我的持仓"而未加任何限定,则只会报告主 DEX 的数据。对于分布在多个 DEX 上的投资组合,这个答案是不完整的,且从结果本身看并不明显,因此在任何旨在呈现完整持仓的提示语中,都值得明确加上 --all-dexes。mm perps dexs 可列出可用的标识符。
范围标志记录在读取命令上,而非订单下达命令上,因此 --dex 在此最好理解为一种可见性控制。
9. 使用报价和模拟运行进行演练,而非测试网
mm perps open --dry-run 可在不签名或提交的情况下验证完整指定的订单,包括标的、方向、大小和杠杆。结合 mm perps quote,可以在不承担任何保证金风险的情况下,针对实时价格端到端运行策略提示,确认 Agent 实际会提交的内容。
--network testnet 在读取和交易命令上均存在,但目前在测试网上演练实盘策略并不实用:Hyperliquid 测试网使用独立的水龙头专用 USDC 变体,无法通过 Agent Wallet 的充值路径获取,因此测试网永续合约账户无法像主网账户那样充值。在此问题解决之前,模拟运行和报价是更可靠的演练工具。
对于实盘版本,--yes 可跳过 open、close、modify 和 cancel 命令的交互式确认提示,这也是实现定时或脚本化流程的前提。--yes 不会关闭第 6 条建议中所述存款环节的钱包自身控制机制。跳过确认提示会移除用户对订单的人工审阅,但不会改变 MetaMask 的检查内容。
Agent Wallet 在永续合约方面的局限性
明确边界比暗示更广泛的功能更有实际价值。
Agent Wallet 没有内置策略引擎。它提供交易接口;决策逻辑存在于 Agent 以及交易者的指令之中。目前没有专门针对永续合约仓位的跟单交易功能、信号推送或自动再平衡功能。希望实现此类自定义逻辑的交易者可以将其构建为插件——这是一项 Beta 功能,允许已安装的 npm 包在经过授权的读取或交易提交权限下,向 CLI 添加新命令,但这是一条自行构建的路径,而非内置功能。
资金费率按交易平台设定的周期累积,钱包不会代表交易者对其进行监控。在多个资金费率结算周期内持有杠杆仓位会产生复利成本,详见永续合约资金费率机制与时机。如果 Agent 被要求检查资金费率,它会执行;如果没有被要求,它不会主动检查。
保证金模式由交易平台而非钱包设定。关于两种模式的区别及其对强平的影响,请参阅永续合约交易中的全仓保证金与逐仓保证金。
Hyperliquid。--venue 在每个 mm perps 命令中默认设置为 hyperliquid,mm perps list-venues 返回当前支持的交易场所列表。
不能直接执行。两者均在向交易平台存款时强制执行,因为该步骤是 MetaMask 以服务器钱包模式处理的 EVM 交易。开仓、修改仓位和平仓均在 Hyperliquid 上进行,不受出金限额、白名单、威胁扫描或双重身份验证的约束,无论仓位大小如何。因此,合理规划存款金额才是关键的控制节点。
最常见的两个原因是场所账户未入金,以及订单低于 $10 的名义最低金额。mm perps deposit 填充会填补第一个缺口,mm perps balance 则加以确认。对于现有账户的抵押品不足问题,mm perps transfer --direction spot-to-perp 可将资金从现货余额转移过来。
通过 mm perps modify 配合 --tp 和 --sl 参数进行设置,此步骤与 mm perps open 分开执行。若开仓后未进行此后续操作,该仓位将不附带任何退出订单。
是的。--dex 将 mm perps 的市场、余额、持仓和订单限定在特定的 HIP-3 DEX 范围内,mm perps dexs 则列出可用的标识符。余额和持仓查询也支持 --all-dexes 参数,以跨 DEX 进行汇总。
mm perps open --dry-run 可在不签名或提交订单的情况下,对完整指定的订单进行验证和预览;mm perps quote 则会先根据实时市场对仓位进行报价。测试网交易已有相关文档说明,但目前尚不是一条实用的演练路径,因为 Agent Wallet 暂时无法为 Hyperliquid 测试网账户充值。
不作为内置功能提供。Agent Wallet 的测试版插件系统允许开发者发布 npm 包,为 CLI 添加新命令,并在安装时征得用户对插件可读取或提交内容的同意——这是目前支持此类自定义工作流的扩展方式。