介绍
# Hyperliquid Trading Skill
针对 Hyperliquid 永续合约交易所的完整交易和投资组合管理。
## 前置条件
一次性安装依赖:
```bash cd skills/hyperliquid/scripts && npm install ```
## 身份验证
**对于只读操作(余额、持仓、价格):** - 设置 `HYPERLIQUID_ADDRESS` 环境变量 - 不需要私钥
**对于交易操作:** - 设置 `HYPERLIQUID_PRIVATE_KEY` 环境变量 - 地址会自动从私钥派生
**测试网:** - 设置 `HYPERLIQUID_TESTNET=1` 以使用测试网
## 核心操作
### 投资组合监控
**查询余额:** ```bash HYPERLIQUID_ADDRESS=0x... node scripts/hyperliquid.mjs balance ```
**查看持仓及盈亏:** ```bash HYPERLIQUID_ADDRESS=0x... node scripts/hyperliquid.mjs positions ```
**查看挂单:** ```bash HYPERLIQUID_ADDRESS=0x... node scripts/hyperliquid.mjs orders ```
**查看交易历史:** ```bash HYPERLIQUID_ADDRESS=0x... node scripts/hyperliquid.mjs fills ```
**获取币种价格:** ```bash node scripts/hyperliquid.mjs price BTC ```
### 交易操作
所有交易命令都需要 `HYPERLIQUID_PRIVATE_KEY`。
**下限价单:** ```bash # Buy 0.1 BTC at $45,000 HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs buy BTC 0.1 45000
# Sell 1 ETH at $3,000 HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs sell ETH 1 3000 ```
**市价单(带 5% 滑点保护):** ```bash # Market buy 0.5 BTC HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs market-buy BTC 0.5
# Market sell 2 ETH HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs market-sell ETH 2 ```
**撤销订单:** ```bash # Cancel specific order HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs cancel BTC 12345
# Cancel all orders HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs cancel-all
# Cancel all orders for specific coin HYPERLIQUID_PRIVATE_KEY=0x... node scripts/hyperliquid.mjs cancel-all BTC ```
## 输出格式化
所有命令均输出 JSON。解析并格式化以便聊天展示:
**对于余额/投资组合:** - 显示总权益、可用余额 - 列出持仓及其数量、入场价格、未实现盈亏 - 汇总挂单
**对于交易执行:** - 执行前确认订单详情 - 执行后报告订单 ID 和状态 - 如果立即成交,显示成交价
## 安全指南
**执行交易前:** 1. 与用户确认交易参数(币种、数量、方向、价格) 2. 显示当前价格和持仓作为背景参考 3. 计算预估成本/收益
**仓位规模:** - 如果交易金额超过账户权益的 20%,发出警告 - 根据账户余额建议合适的规模
**价格检查:** - 对于限价单,对比限价与当前市场价格 - 如果限价偏离市场超过 5%,发出警告(可能是操作失误)
## 错误处理
**常见错误:** - "Address required" → 设置 HYPERLIQUID_ADDRESS 或 HYPERLIQUID_PRIVATE_KEY - "Private key required" → 交易需要 HYPERLIQUID_PRIVATE_KEY - "Unknown coin" → 使用 `meta` 命令检查可用币种 - HTTP 错误 → 检查网络连接和 API 状态
**发生错误时:** - 向用户显示错误消息 - 建议修复方法(设置环境变量、检查币种名称、验证余额) - 不要自动重试交易
## 工作流示例
**“我的 Hyperliquid 投资组合怎么样?”** 1. 运行 `balance` 获取总权益 2. 运行 `positions` 获取当前持仓 3. 格式化摘要:权益、带盈亏的持仓、总未实现盈亏
**“在 Hyperliquid 上买入 0.5 BTC”** 1. 运行 `price BTC` 获取当前价格 2. 运行 `balance` 验证资金充足 3. 向用户确认:“是否按市价买入 0.5 BTC?当前价格:$X。预估成本:$Y” 4. 执行 `market-buy BTC 0.5` 5. 报告订单结果
**“Hyperliquid 上当前的 BTC 价格是多少?”** 1. 运行 `price BTC` 2. 格式化回复:“BTC:$X (Hyperliquid)"
**“平掉我的 ETH 仓位”** 1. 运行 `positions` 获取当前 ETH 仓位数量 2. 如果是多头 → market-sell,如果是空头 → market-buy 3. 执行仓位数量的平仓 4. 报告结果
## 高级功能
**列出所有可用币种:** ```bash node scripts/hyperliquid.mjs meta ```
**查询其他地址:** ```bash # Check someone else's positions (read-only, public data) node scripts/hyperliquid.mjs positions 0x1234... ```
## 备注
- 所有数量均以基础货币计价(BTC、ETH 等) - 价格以美元计价 - 市价单使用带 5% 滑点保护的限价单 - Hyperliquid 使用永续合约,而非现货交易 - 查看 references/api.md 获取完整的 API 文档