Files
dekun 457838ef64 Extend semi-auto with ITM/ATM/OTM, offset, and 1:4 sizing.
Moneyness and perp:option units are plan-only; OTM enforces leverage >=180.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 11:42:57 +08:00

513 lines
24 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 比特骆驼自动化对冲系统 — 策略说明
> 产品:**比特骆驼自动化对冲系统**(工程 `eth_hedge_sim`
> 依据当前代码逻辑整理(SIM 默认真值参数)。
> 关联:[开发方案](./开发方案.md)、[商业化与授权方案](./商业化与授权方案.md)、[实盘索引](./实盘策略说明.md)、[OKX实盘](./OKX实盘策略说明.md)、[币安实盘](./币安实盘策略说明.md)
> 更新:2026-08-07(期期对冲互斥模式)
**运行模式**:设置页「运行模式」可切 **SIM / LIVE**;交易所 API 录入后写入服务器 `.env`(不回传明文)。LIVE 须二次确认输入 `LIVE`;**OKX / 币安均可真下单**(须选对应当前交易所并配齐密钥)。有持仓时不可切模式。
分所动作细节另见:[OKX实盘](./OKX实盘策略说明.md)、[币安实盘](./币安实盘策略说明.md)。**策略口径以本文为准。** 期期操作说明见:[期期对冲说明](./期期对冲说明.md)。
---
## 1. 策略一句话
**默认(永期对冲)**:用 **ATM 期权买方** 表达方向弹性,用 **反向永续** 做对冲腿;波动大时争取多轮兑现净盈利,波动小时接受权利金磨损,**到期自动全平**。
**可选(期期对冲)**:系统设置二选一。用回看窗内真实高低点匹配 **虚值 Call + 虚值 Put**,以损预算 1:1 定仓;达标只平盈利腿,亏损腿残留至权利金回升或到期。
本质是 **概率与样本**:不追求每天固定轮次,而按行情吃机会。
**行情来源可切换(SIM**:系统设置中可选 **OKX****币安** 公共行情;成交仍为本机模拟撮合,**不下真单**。
| 交易所 | 永续(默认) | 期权 | 说明 |
|--------|--------------|------|------|
| OKX | ETH-USDT-SWAP | ETH-USD_UM(偏 USDC 保证金族) | 当前默认 |
| 币安 | ETHUSDTUSDT-M | 欧洲期权 ETH-YYMMDD-行权价-C/PUSDT | 后期实盘优先候选 |
有持仓时不可切换交易所;切换后自动套用该所合约并重连行情。
---
## 2. 仓位结构(默认)
| 腿 | 默认数量 | 方向规则 | 成交方式 |
|----|----------|----------|----------|
| 永续 ETH-USDT-SWAP | **1 ETH** | 见下表 | 市价(吃买一/卖一 + 滑点) |
| 期权 ETH-USD_UM | **2 ETH** 名义 | 只买不卖 | 开仓吃卖一,平仓吃买一 |
**开仓顺序**:先成交期权 → 确认后再市价成交永续。永续盘口失败则回滚期权扣款,不留半边仓。
**平仓顺序**:同样先平期权(买一薄)→ 再瞬时平永续。平期权期间永续对冲先留着;永续盘口失败则回滚期权入账。
永续杠杆默认 **3×**(可配)。永续保证金模式默认 **全仓**(可改逐仓);期权保证金模式固定买方现金/逐仓意图。同时最多 **1 组**仓,禁止叠仓开下一组。
### 2.0 仓位模式:手动 vs 以损定仓
设置页二选一:
| 模式 | 行为 |
|------|------|
| **手动** | 直接填 `perp_qty_eth` / `option_qty_eth` / `net_profit_target` |
| **以损定仓** | 禁用手填;每次**新开仓前**按预算反推倍数 `k`(一位小数向下),写出永续 `1×k`、期权 `2×k`、出场 `15×k`(强制 `fixed_usdt` |
预算:
- **亏损幅度**`本金 × 幅度%`。本金二选一——交易账户总资金(USDT+USDC)或单独本金。
- **亏损值**:直接填可亏 USDT。
估算最大亏损(须 ≤ 预算):
```text
premium ≈ ATM卖一 × 2 × k
fee ≈ 指数 × fee_rate × 3 × k # 永续开/平 + 期权一次
max_loss = premium + fee
k = floor(budget / (2A + I×fee_rate×3) × 10) / 10
```
`k < 0.1` 或盘口缺失 → 拒绝开仓。
### 2.1 开仓方向
#### 默认(`fixed_direction_enabled=false`):ATM 相对现价优先
行权价相对标的有偏离时(币安粗档常见),**先按 ATM 偏上/偏下选向**;仅当行权价与标的贴平(≈)时,才回退卖一比价。
| 条件 | 期权 | 永续 | bias |
|------|------|------|------|
| ATM 行权价 **<** 标的(如 1850 vs 1859 | 买入 Call | 做空 | `strike_below_spot` |
| ATM 行权价 **>** 标的(如 1875 vs 1859 | 买入 Put | 做多 | `strike_above_spot` |
| ATM ≈ 标的,且 Call 卖一 > Put 卖一 | 买入 Call | 做空 | `call_ask_gt_put` |
| ATM ≈ 标的,且 Put 卖一 > Call 卖一 | 买入 Put | 做多 | `put_ask_gt_call` |
| ATM ≈ 标的且卖一相等 | 不开仓,继续等待 | — | — |
直觉:偏下行权价用 Call+空,偏上行权价用 Put+多;贴平时再按权利金溢价侧选向。
#### 固定方向(`fixed_direction_enabled=true`
设置里可开「固定方向」(默认关),并指定永续多或空:
| `fixed_perp_side` | 永续 | 期权 | 行权价约束 | bias |
|-------------------|------|------|------------|------|
| `long` | 做多 | 买入 Put | 实值或平值(K ≥ 标的),优先贴近标的 | `fixed_long_put` |
| `short` | 做空 | 买入 Call | 实值或平值(K ≤ 标的),优先贴近标的 | `fixed_short_call` |
固定方向开启时:**不买虚值**;ATM 偏差限制不适用(由实值/平值规则替代)。
---
## 3. 开仓机制(详细)
### 3.1 何时允许尝试开仓
须**同时**满足:
| # | 条件 | 说明 |
|---|------|------|
| 1 | 策略 `running=1` | 暂停时**不新开**(仍可平仓/到期) |
| 2 | 本地无 blocking 仓 | `flat` 才开;`open` / `half_open` / `option_closed_perp_pending` / `opening` 均禁止新开 |
| 3 | 不在组间休息 | 上一组全平成功后 `rest_seconds`(默认 300s)内不开 |
| 4 | 周末门禁 | `skip_weekends=true` 时上海时区六日跳过新开 |
| 5 | 资金门 | 以损定仓模式下预算推不出 `k≥0.1` → 拒绝开仓 |
| 6 | LIVE 对账 | 开仓前核交易所无「多余」永续/期权残留(防双开) |
### 3.2 选约与选向(逐步)
```
1) 列可交易到期日:剩余时长 ≥ min_option_hours(默认 12h
2) 跳过「当日已用过」的到期(one_expiry_per_day,默认开)
3) 跳过仍有 pending 残留期权的到期日(避免同到期叠残留)
4) 固定方向关:取该到期 ATM 对(Call/Put
固定方向开:同到期取实值或平值、最贴近标的的 Put/Call
5) 未开固定方向且 atm_open_offset_enabled|K−标的| ≤ max_atm_open_offset,否则换下一到期/等待
6) 选向(见 §2.1
7) 杠杆门:标的价 ÷ 卖一权利金 ≥ min_option_leverage(默认 100
8) 以损定仓:按预算算出 k,写入本组 perp/option 名义与出场目标
```
无合格合约:状态等待,记「无合格期权…」,**不硬开**。
### 3.3 成交顺序(SIM / LIVE 相同意图)
```
claim 开仓槽 status=opening
→ 先买期权(吃卖一 / LIVE 市价买)
→ 成功后市价开永续(对冲方向)
→ 两边都成功 → status=open,锁定 initial_premium = 成交价×期权名义(不含费)
→ 永续失败 → 立刻卖回期权回滚;回滚失败 → half_open(见 §5
```
要点:
- **薄腿优先**:期权先于永续,避免只剩裸永续。
- **单组纪律**:同时最多 1 组活跃仓。
- **SIM**:本地撮合 + 可配 `fee_rate` + 约 1×费率滑点。
- **LIVE**:交易所真实均价与手续费;**不计模拟滑点**。
### 3.4 时间与节奏
| 规则 | 说明 |
|------|------|
| 开仓时间窗 | **已取消**,全天可尝试(仍受选约约束) |
| 周六/周日 | 默认跳过新开(`skip_weekends`);持仓仍可平 |
| 每日轮次 | **不限制** |
| 组间休息 | 达标/到期/手动/紧急全平**成功后**休息 `rest_seconds` |
| 同到期一日一次 | `one_expiry_per_day`:当日已开过某到期并平仓后,不再开同到期 |
| 暂停时 | 不新开;仍目标平 + 到期 + 残留巡检 |
### 3.5 选约参数
| 参数 | 默认 | 作用 |
|------|------|------|
| `min_option_hours` | 12 | 过滤过近到期 |
| `min_option_leverage` | 100 | 权利金不能太贵 |
| `one_expiry_per_day` | true | 每个到期只开一次(跨日,按 expiry_ymd 历史占用) |
| `fixed_direction_enabled` | false | 固定方向 |
| `fixed_perp_side` | long | long→Put / short→Call |
| `atm_open_offset_enabled` | false | ATM 偏差开关 |
| `max_atm_open_offset` | 3 | \|ATM−标的\| 上限 |
---
## 4. 平仓机制(详细)
平仓入口:**目标平仓**、**到期平仓**、**残留中途回收**、**紧急/手动全平**。
### 4.1 盯盘净盈利口径
```
净盈利 ≈ 永续浮盈 + 期权浮盈 − 预估平仓手续费
期权浮盈 = 当前买一 × 数量 − 初始权利金
```
(盯盘用**买一**,不用标记价顶替持仓合约。)
| 出场模式 | 默认 | 触发 |
|----------|------|------|
| `fixed_usdt` | 15 USDT | 净盈利 ≥ `net_profit_target` |
| `premium_multiple` | 1.0 | 净盈利 ≥ `initial_premium ×` 倍数 |
权利金倍数:**1× = 赚回一倍权利金金额的净利**(权利金 20.41 → 目标约 20.41)。
### 4.2 目标平仓分支 A / B
达标后按期权是否**远虚**分支(远虚:内在价值 ≈ 0,默认阈值约 0.01 USDT/ETH):
#### 4.2.A 双腿全平(非远虚)
```
校验买一深度覆盖名义
+ 买一/标记偏差 ≤ close_bid_mark_max_pct(默认 30%
→ 先平期权(SIM 吃买一;LIVE 市价卖)
→ 再平永续
→ 任一步流动性不过 → liquidity_wait,组不变,下 tick 再试
```
LIVE 特殊态:`option_closed_perp_pending`(期权已在交易所卖掉、永续未平完)→ 只续平永续,**禁止再卖一次期权**。
#### 4.2.B 只平永续 + 期权归档(远虚)
```
只市价平永续
→ 期权写入 residual_optionspending
→ 活跃仓变 flat,可开下一组
→ 残留不挡新开;同到期仍计入「跳过到期」直到残留结清
```
### 4.3 残留期权中途回收(权利金比例)
`residual_options.status=pending`
| 项 | 规则 |
|----|------|
| 巡检间隔 | 默认 **300s**`residual_close_check_sec` |
| 门槛 | `买一×数量 ≥ 初始权利金 × residual_min_premium_pct%`(默认 **20%**,设置页可改) |
| 闸门 | 同 4.2.A:深度 + 买一/标记偏差 |
| 下单 | 再刷最新买一并**重算门槛**;LIVE 用买一 **IOC 限价卖**(不扫市价簿) |
| 部分成交 | 已成交部分入账并扣减残留数量;剩余继续 pending |
| 交易所已空 | 对账后本地直接结清,避免重复卖 |
| 未达标/未成交 | 等到下次巡检或到期 |
到期/紧急结算残留:LIVE **优先交易所卖掉**,失败再回落内在价值记账。
### 4.4 到期平仓
- 净利一直未达标 → **不主动砍仓**,持有到期权到期。
- 到期时刻:OKX 惯例 UTC 08:00 = **上海 16:00**(币安按该所交割时刻)。
- **活跃组**:优先交易所平期权+永续;到期无法交易时用内在价值入账。
- **残留组**:只处理归档期权;不改当前活跃仓与下方 ATM。
- 暂停时仍执行到期与目标平仓。
### 4.5 紧急全平 / 手动全平
| 动作 | 行为 |
|------|------|
| 紧急全平 | 尽量双腿市价;可绕过流动性等待;期权成交价仍按买一逻辑(不用标记抬价);残留优先交易所卖,再内在价值兜底;成功后进休息 |
| 手动全平 | 与策略全平同类入口;运行中手动开仓默认关闭 |
### 4.6 流动性闸门何时生效
| 场景 | 是否强制买一闸门 |
|------|------------------|
| 4.2.A 双腿全平 | **是** |
| 残留中途回收 | **是**(再加权利金比例) |
| 4.2.B 归档当下 | 否(只平永续) |
| 到期 / 紧急 | 可绕过深度/偏差;紧急可市价扫期权 |
### 4.7 原因码
| 原因码 | 含义 |
|--------|------|
| `fixed_usdt` / `premium_multiple` | 目标 · 双腿全平(A |
| `target_perp_only` | 目标 · 只平永续(B |
| `residual_premium_close` | 残留 · 权利金回收中途平 |
| `expiry` | 到期结算 |
| `emergency` / `emergency_perp` | 紧急全平 / 紧急只平永续 |
| `liquidity_retry` | 等待流动性后继续全平 |
| `perp_pending_retry` | 期权已平,续平永续 |
| `manual` | 手动全平 |
| `half_open_repair` | 半仓修复(卖掉孤儿期权) |
### 4.8 流程总览
```
有活跃持仓
├─ 净利达标?
│ ├─ 远虚 → B:平永续 + 期权归档残留
│ └─ 非远虚 → A:流动性闸门 → 先期权后永续;失败则 liquidity_wait
└─ 未达标 → 持有到到期 → 交易所平 / 内在价值
残留 pending
├─ 每 5 分钟:权利金≥设置% + 闸门 → 买一 IOC 卖(可部分成交)
└─ 否则到期或紧急:优先交易所卖,否则内在价值
```
### 4.9 行情监控与页面展示
| 状态 | 持仓区 | 残留列表 | 下方期权盘口 |
|------|--------|----------|--------------|
| 有活跃组 | 当前组 | 历史残留 | **钉持仓行权价**(禁止借 ATM |
| 空仓 | 空 | 无/历史 | 跟新 ATM\|ATM−标的\|≥**5** 点切换) |
| 仅残留 | 空(flat) | 显示归档合约 | 跟新 ATM,不钉残留那张 |
浮盈亏只用**持仓合约买一**。
---
## 5. 实盘常见问题与处理
> 下列状态机为 LIVE 防卡设计;SIM 多数路径不会落到交易所对账,但本地状态名相同。
### 5.1 本地仓位状态
| status | 含义 | 能否新开 | 自动处理 |
|--------|------|----------|----------|
| `flat` | 空仓 | 能 | 选约开仓 |
| `opening` | 已占槽、开仓未完成 | 否 | `recover_opening`:对账后落 open/half_open/清槽 |
| `open` | 双腿齐全 | 否 | 盯目标 / 到期 |
| `half_open` | 仅期权成交、永续未开成且回滚失败 | 否 | `repair_half_open`:卖掉孤儿期权 |
| `option_closed_perp_pending` | 期权已平、永续待平 | 否 | 只续平永续,不重卖期权 |
### 5.2 开仓阶段问题
| 现象 | 原因 | 系统处理 | 人工注意 |
|------|------|----------|----------|
| 期权成交、永续拒单 | 保证金不足、限流、持仓模式不对 | 立刻卖期权回滚;失败→`half_open` 自动修 | OKX 备足 USDT+USDC;确认双向持仓/保证金模式 |
| 进程崩溃在 `opening` | 断电/重启 | 启动后对账恢复或清槽 | 看企微「opening 恢复」;核对交易所是否真有仓 |
| 开仓前对账失败 | 交易所仍有旧仓 | **拒绝开仓** | 先平掉账户里多余仓或紧急全平 |
| 限流 429 | 下单过密 | 退避重试(秒~数十秒) | 独立 IP;勿多实例打同一 Key |
| 币安/OKX 张数换算错感 | ctVal/合约乘数 | 软件内部换算 | 勿在交易所手改张数打乱对账 |
### 5.3 平仓阶段问题
| 现象 | 原因 | 系统处理 | 人工注意 |
|------|------|----------|----------|
| `liquidity_wait` 长时间 | 买一薄或偏离标记 | 持续等待;远虚可走 B | 勿强行市价扫垃圾盘;可调大偏差%或等流动性 |
| 期权已平永续失败 | 保证金/限流 | `option_closed_perp_pending` 续平 | 保证永续账户有余量;勿手工再卖期权 |
| 远虚买一为 0 | 深度枯竭 | 走 B 归档残留 | 正常策略路径,不是故障 |
| 残留 IOC 部分成交 | 买一深度不够吃完 | 部分入账,剩余继续巡检 | 看残留数量是否递减 |
| 残留「交易所已空、本地仍 pending」 | 上次成交未入账/对账 | 对账后本地结清 | 若反复出现查日志查单 |
| 到期无法下单 | 已停止交易 | 内在价值记账 | 与交易所交割核对一口价 |
| 紧急全平仍有残留 | 期权卖不出 | 内在价值强制结 + 尽量交易所卖 | 登录交易所确认期权仓是否清零 |
### 5.4 残留回收专项
| 规则 | 说明 |
|------|------|
| 为何用 IOC 买一而非市价 | 避免扫穿更差价位;吃不到则取消,下轮再试 |
| 门槛跌破 | 二次刷买一后若 \< 设置%,**本轮不卖** |
| 部分成交后门槛 | 按剩余数量比例缩减 `initial_premium` 基准,避免永远达不到 20% |
| 与新开仓 | 残留不挡新开;但**同到期**在残留结清前不会再开 |
### 5.5 运维检查清单(实盘)
1. 设置页:交易所、LIVE、密钥、保证金模式与账户一致。
2. 小 k(如 0.1)跑通:开仓 → A 或 B → 残留回收或到期 各至少一次。
3. 关注状态:`opening` / `half_open` / `option_closed_perp_pending` / `liquidity_wait`
4. 企微:开平仓与故障推送;残留完全结清才推「权利金回收」类通知。
5. 中控/策略机版本尽量一致,避免 Fleet 字段漂移。
---
## 6. 策略侧重点
| 侧重点 | 说明 |
|--------|------|
| **吃波动,不赌横盘** | 买方期权需要标的走动;大波动利于达标出场 |
| **概率与轮次** | 波动日可能多轮;磨盘日可能零轮或一轮认亏 |
| **确定性时间规则** | 用周末跳过、到期全平,**不做**难以精准的横盘识别 |
| **费用后净利** | 出场看扣完预估平仓费后的净盈利,避免「账面赚、平完亏」 |
| **单组纪律** | 活跃持仓最多 1 组;远虚归档的残留期权不挡下一组(逐仓) |
| **权利金是成本预算** | 小波动拖到期亏权利金,属于策略设计内损耗,不是异常 bug |
| **目标平仓两分支** | 能平期权则双腿全平;远虚则只平永续、期权归档并可权利金回收 |
| **监控分工** | 有仓钉持仓行权价;空仓/仅残留时下方跟新 ATM;残留腿单独列表 |
适合对外表述:
> 适合有波动的时段;震荡磨盘是主要磨损源。不怕单边大波动本身,怕没波动却持续付时间价值。
---
## 7. 风险点评估
### 7.1 主要风险
| 风险 | 等级 | 说明 | 缓解(已有/建议) |
|------|------|------|------------------|
| **横盘 / 低波动** | 高 | Theta 消耗权利金;永续几乎不贡献利润 | 周末跳过;到期认亏全平;接受磨损日 |
| **方向选错** | 中高 | 卖一比价并非预测圣杯 | 净利达标才兑现;到期强平止损时间 |
| **开平滑点与手续费** | 中 | 双边 taker 侵蚀小目标 | 目标覆盖费用;勿设过低 |
| **期权流动性** | 中 | 远虚买一枯死 | B 归档 + 权利金回收 IOC + 到期结算 |
| **半仓 / pending 卡死** | 中 | 开平中途失败 | §5 状态机自动修复;企微告警 |
| **杠杆与保证金** | 中 | 永续挤压 | 控制名义;LIVE 留缓冲 |
| **SIM≠实盘** | 高(外推时) | 撮合简化 | 小 k 实盘验证 |
| **限流 / 断连** | 中 | 延误开平 | 退避;健康检查 |
### 7.2 明确不做什么(边界)
- 不做卖方期权。
- 不做横盘「智能识别」开仓过滤。
- 不做多组并行。
- LIVE 须授权与二次确认(见商业化方案)。
### 7.3 损益直觉
- **有利波动**:期权端弹性常快于永续对冲损耗 → 易达净利目标。
- **不利 / 无波动**:权利金贬值 + 费用 → 拖到到期,单组亏损约在权利金量级 + 双边费用。
---
## 8. 最小资金推荐
以下按 **默认仓位**(永续 1 ETH、期权 2 ETH 名义、杠杆 3×)估算,标的价按 **ETH ≈ 1,8002,200 USDT** 量级。
### 8.1 单组占用粗算
| 项目 | 约略金额(USDT) |
|------|------------------|
| 永续保证金(名义÷杠杆) | ≈ 1,800–2,200 ÷ 3 ≈ **600750** |
| 期权权利金(ATM、短期限,2 ETH) | 常见约 **1560**(行情波动大时更高) |
| 开平手续费 / 滑点缓冲 | **2050** |
| 逆向波动缓冲(避免过紧) | **300800**(经验缓冲,非精确 VaR |
### 8.2 建议档位
| 档位 | 建议权益(USDT) | 适用 |
|------|------------------|------|
| **绝对下限(不推荐)** | ≥ **1,500** | 缓冲极薄 |
| **最小可用** | ≥ **3,000** | SIM / 极小实盘验证 |
| **推荐起步** | ≥ **5,000** | 留出磨损日缓冲 |
| **较舒适** | ≥ **10,000** | 连续磨损更从容 |
> 缩放:永续 `0.5`、期权 `1` 约减半资金需求,但费用占比上升。
### 8.3 与出场目标的关系
- 默认净利 **15 USDT**:小而频,依赖波动日。
- 资金按**多次磨损日**留余量,而非「每组必赚 15」。
### 8.4 SIM 默认
`initial_equity = 10,000` USDT(可改)**不代表**实盘建议入金。试跑建议 **k=0.1**。分所见 [OKX](./OKX实盘策略说明.md)、[币安](./币安实盘策略说明.md)。
---
## 9. 关键可配参数速查
| 参数 | 默认 | 类别 |
|------|------|------|
| `perp_qty_eth` | 1 | 仓位 |
| `option_qty_eth` | 2 | 仓位 |
| `leverage` | 3 | 永续 |
| `perp_margin_mode` | cross | 永续全仓/逐仓 |
| `fee_rate` | 0.0005 | 成本(SIM |
| `exit_mode` | fixed_usdt | 出场 |
| `net_profit_target` | 15 | 出场 |
| `premium_exit_multiple` | 1.0 | 出场 |
| `rest_seconds` | 300 | 节奏 |
| `skip_weekends` | true | 时间 |
| `one_expiry_per_day` | true | 选约 |
| `min_option_hours` | 12 | 选约 |
| `min_option_leverage` | 100 | 选约 |
| `fixed_direction_enabled` | false | 固定方向 |
| `fixed_perp_side` | long | 固定永续方向 |
| `atm_open_offset_enabled` | false | ATM 偏差开关 |
| `max_atm_open_offset` | 3 | ATM 偏差上限 |
| `close_bid_mark_max_pct` | 30 | 平仓/残留流动性 |
| `residual_min_premium_pct` | 20 | 残留权利金回收门槛% |
| `residual_close_check_sec` | 300 | 残留巡检间隔秒 |
| `hedge_mode` | perp_option | 永期 / 期期二选一 |
| `oo_amplitude_pct` | 1.5 | 期期振幅最大%(超过不开) |
| `oo_amplitude_hours` | 12 | 期期振幅回看小时 |
| `oo_min_option_hours` | 24 | 期期最短剩余到期 |
| `oo_min_leverage` | 200 | 期期单腿最低杠杆 |
| `oo_reward_ratio` | 2 | 期期盈亏比(目标=预算×比) |
| `oo_budget_cushion` | 0.92 | 期期定仓预留比例 |
| `semi_auto_enabled` | false | 半自动总开关(永期) |
| `semi_armed` | false | 半自动本单是否已授权 |
| `semi_view_side` | long | 半自动看法 long/short |
| `semi_option_move_points` | 50 | 半自动顺向波动点数 |
| `semi_perp_exit_unit` | 5 | 半自动净利出场基数(×k) |
| `semi_min_option_hours` | 30 | 半自动选约最短剩余小时 |
| `semi_min_option_leverage` | 200 | 半自动选约最低杠杆(虚值≥180) |
| `semi_moneyness` | otm | 半自动行权类型 itm/atm/otm |
| `semi_otm_max_offset` | 25 | 半自动虚值最大偏离 |
| `semi_perp_unit` | 1 | 半自动永续名义单位 |
| `semi_option_unit` | 4 | 半自动期权名义单位 |
---
## 9.1 期期对冲(option + option
详见 [期期对冲说明](./期期对冲说明.md)。摘要:
- 回看 `oo_amplitude_hours` 的真实高低;振幅超过 `oo_amplitude_pct` 不开。
- 虚值 Call 贴高、Put 贴低;同到期;杠杆与剩余小时门槛。
- 预算 1:1、qty 一位小数、目标 = B × `oo_reward_ratio`
- 达标只平盈利腿;亏损腿 residual(20% 回升或到期)。
- SIM / LIVEOKX、币安)规则对齐。
---
## 9.2 半自动(永期)
详见 [半自动说明](./半自动说明.md)。摘要:
- 系统设置开启后,首页「半自动 · 本单」定方向/点数/净利基数并授权。
- 机器盯选约(ITM/ATM)→ 开 → 平;平完 `wait_human`,不连开。
- 出场:顺向到点且组合净利>0,或净利≥基数×k;先期权后永续。
---
## 10. 修订记录
| 日期 | 说明 |
|------|------|
| 2026-08-08 | 半自动:人工授权单笔;点数/净利出场;中控展示 |
| 2026-08-07 | 期期对冲互斥模式;振幅高低选约;盈亏比出场;SIM/LIVE 双通道 |
| 2026-08-02 | §3/§4 展开开平仓逐步逻辑;新增 §5 实盘状态机与异常处理;残留买一 IOC 回收 |
| 2026-07-24 | 固定方向:永续多→Put / 空→Call,仅实值或平值 |
| 2026-07-25 | 初稿;平仓顺序先期权后永续 |
| 2026-07-26 | 到期内在价值;目标平仓 A/B;有仓钉持仓监控;SIM/LIVE 切换 |