feat: add OKX options module with dual API, USDT/USDC convert, and docs

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-07 08:17:27 +08:00
parent 814fe67a21
commit 806bb074ab
19 changed files with 2009 additions and 3 deletions
+114
View File
@@ -0,0 +1,114 @@
# OKX 期权 — 使用说明
## 1. 前置条件
1. OKX **主账户**已开通期权(USDⓈ 本位),且 App 中可见 `ETHUSD UM` / `BTCUSD UM`
2.`crypto_monitor_okx/.env` 配置 **期权专用 API**(与永续子账户分开):
```bash
OKX_OPTIONS_ENABLED=true
OKX_OPTIONS_API_KEY=你的主账户Key
OKX_OPTIONS_API_SECRET=...
OKX_OPTIONS_API_PASSPHRASE=...
```
3. 重启实例:`pm2 restart crypto_okx`
> 永续仍用原有 `OKX_API_*`(子账户);期权只用 `OKX_OPTIONS_API_*`(主账户)。
## 2. 资金准备
期权权利金使用 **USDC 或 USDG**,不能直接用 USDT 买入。
### 推荐步骤
1. 打开 **期权** 页,查看顶栏:
- **资金账户**USDT 余额
- **交易账户**:USDC 余额(买期权从这里扣)
2. **币种兑换**(资金账户内)
- 从 USDT 兑换为 USDC
- 先点 **询价**,确认预估获得量后点 **确认兑换**
3. **账户划转**
- 从:资金账户 → 到:交易账户
- 币种:USDC
- 将兑换得到的 USDC 划到交易账户
4. 确认 **交易账户 USDC** 足够支付本笔权利金
系统 **不会** 自动兑换或划转,避免误动资金。
## 3. 下单流程
1. 顶栏进入 **期权**
2. 选择 **ETH****BTC**
3. 选择 **到期日**(默认仅 12 日)
4. 选择 **看涨 Call****看跌 Put**
5. 在行权价列表中选 **轻度实值** 合约
6. 查看:
- **卖一价**(每 1 ETH/BTC 的报价)
- **张数 / ETH 数量**
- **预估权利金**USDC
7. 选择 **按预算打满**(默认 10U×0.95)或 **指定 ETH 数量**
8. 点击 **限价买入**(价格 = 卖一)
### 张数说明
- **1 张 = 0.01 ETH**(或 0.01 BTC)— 与 OKX App「合约价值」一致
- 盘口报价是 **每 1 ETH** 的价格
例:报价 15.6,买 0.5 ETH50 张)→ 权利金 ≈ 15.6 × 0.5 = **7.8 USDC**
## 4. 持仓与平仓
持仓表字段对齐 OKX:合约、张数、开仓均价、标记价、浮盈、收益率、到期等。
**平仓(锁利/止损):**
1. 在持仓行点击 **平仓**
2. 查看 **买一价** 与预估收回
3. 确认 **限价卖出**(价格 = 买一)
> 默认不使用市价平仓。若 `.env` 开启 `OKX_OPTIONS_ALLOW_MARKET_CLOSE=true`,市价按钮会出现并带风险提示。
## 5. 微信提醒
当某笔持仓 **未实现盈亏 ≥ 已付权利金的 100%**(翻倍)时,会发 **一条** 企业微信提醒(同一笔只提醒一次)。
需已配置 `WECHAT_WEBHOOK`
## 6. 与永续的关系
| | 永续(子账户) | 期权(主账户) |
|--|----------------|----------------|
| API | `OKX_API_*` | `OKX_OPTIONS_API_*` |
| 页面 | 实盘下单 / 关键位 | 期权 |
| 资金顶栏 | USDT 资金户+交易户 | 期权页单独显示 USDC 等 |
两套资金 **不合并** 显示。
## 7. 配置说明
| 变量 | 默认 | 含义 |
|------|------|------|
| `OKX_OPTIONS_TRADE_BUDGET_USDC` | 10 | 单笔权利金上限 |
| `OKX_OPTIONS_BUDGET_BUFFER` | 0.95 | 算张数时预留 5% 缓冲 |
| `OKX_OPTIONS_MAX_DTE_DAYS` | 2 | 最多选几天内到期 |
| `OKX_OPTIONS_ITM_MAX_DIST_USD` | 30 | 轻度实值:价内不超过多少 USD |
| `OKX_OPTIONS_PROFIT_ALERT_RATIO` | 1.0 | 浮盈/权利金 ≥ 此值推送 |
## 8. 常见问题
**Q:为什么买不了?**
- 交易账户 USDC 不足 → 先兑换再划转
- 卖一价过高,10U 预算买不到 1 张 → 选更便宜合约或提高 `OKX_OPTIONS_TRADE_BUDGET_USDC`
- 期权 API 未配置或 `OKX_OPTIONS_ENABLED=false`
**Q:报价 15 是每张 15U 吗?**
- 不是。15 是 **每 1 ETH** 的报价;每张(0.01 ETH)约 0.15 USDC。
**Q:子账户能开期权吗?**
- 本系统期权走主账户 API;子账户永续不受影响。
## 9. 风险说明
- 买方最大亏损为 **权利金**;近期实值仍会时间衰减
- 限价单可能因无流动性未成交
- 请先在小额下验证兑换、划转、开平仓全流程