Files
crypto_monitor/docs/对冲计划-选约与虚实值.md
T
dekun afe361ce47 feat(hedge): add option-primary mode for perp+options plans
Add UI switch for Call+short/Put+long, premium x0.95 sizing, option-first open, and K+/-points exits with fee-aware net PnL.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 08:29:26 +08:00

3.7 KiB

对冲计划 · 选约与虚实值

实现日:2026-08-05 · 吸收 eth_hedge_sim(比特骆驼)选约几何;退出仍用本仓 TP/SL/S*,移植仿真「净盈亏 15U 离场」。

1. 冻结规则

计划类型 允许虚实值 禁止 推荐模板
永期保险 perp_options(开关关) 实值、平值 虚值 距指数最近的实值/平值(做多 Put / 做空 Call)
永期以期权为主 option_primary=1 实值、平值、虚值 —(间隔+杠杆门) 做多 Call+永续空 / 做空 Put+永续多;详见 docs/对冲计划-以期权为主.md
期期 options_options 平值、虚值 实值 平值跨式(ATM C+P);双虚值(OTM C+P)

口径与 lib/options/options_pricing_lib.option_moneyness 一致:ATM 带 = max(指数×0.2%, 2U)

永期几何兜底(与仿真一致):

  • Call 实值/平值:K ≤ S
  • Put 实值/平值:K ≥ S

2. 代码落点

文件 作用
选约/校验库 lib/hedge_plan/hedge_plan_moneyness_lib.py is_itm_or_atm / is_atm_or_otm / pick_* / recommend_oo_legs / validate_*
启动门禁 hedge_plan_orders_lib.validate_start_body 测算外再拦一遍;防绕过 UI 直 POST
测算 hedge_plan_register._preview_po/_preview_oo 预览同样拒绝违规腿
UI hedge_plan.js + hedge_plan_panel.html 筛选锁定、推荐按钮、选用前校验
Env env_ui_manifest 永期分组 HEDGE_PLAN_ITM_MAX_DIST_USD / MIN_OPTION_HOURS / MIN_OPTION_LEVERAGE

3. Env

默认 说明
HEDGE_PLAN_ITM_MAX_DIST_USD 空→沿用 OKX_OPTIONS_ITM_MAX_DIST_USD(常 30) 永期过深实值上限;0=不限
HEDGE_PLAN_MIN_OPTION_HOURS 8 仅当请求带 hours_to_expiry 时生效
HEDGE_PLAN_MIN_OPTION_LEVERAGE 0 指数/卖一;0=关闭

4. 可用性审计

结论
默认筛选 永期默认「实值/平值」;期期默认「平/虚」—减少误选
推荐一键 永期「推荐」;期期「推荐跨式 / 推荐双虚」—降低手选成本
文案 规则说明与 alert 明确禁虚(永期)/禁实(期期)
服务端一致 UI 过滤可绕过时,preview/start 仍会 400
兼容旧 API 未传 strike 时从 inst_id 解析;未传 index_px 时永期用 entry、期期用上下破中点
以期权为主 docs/对冲计划-以期权为主.md:点数目标+扣费净利出场(非仿真 15U 固定);保险模式仍不接仿真净盈亏离场

已知局限:

  • 链上 moneyness 依赖刷新时指数;剧烈跳动后需「刷新链」再选。
  • MIN_OPTION_HOURS 需前端/调用方传入 hours_to_expiry 才校验(当前链行未必带该字段)。
  • 期期「推荐跨式」优先 ATM,若无 ATM 会回退到最近允许档(含 OTM)。

5. 安全性审计

风险 控制
客户端改包选虚值永期保险 validate_start_body + preview 服务端拒绝
客户端选实值期期腿 同上
过深实值权利金过贵 / 杠杆过低 ITM_MAX_DIST + 可选 MIN_OPTION_LEVERAGE
误开实盘 既有 HEDGE_PLAN_LIVE_ORDERLIVE_TRADING_ENABLED ∩ 全仓(永期)门禁不变
保险模式平仓 不变:交易所 TP/SL
以期权为主平仓 独立监控分支;不改保险模式路径

6. 测试

python -m unittest tests.test_hedge_plan_moneyness tests.test_hedge_plan_orders -v

覆盖:虚实值几何、永期拒 OTM、期期拒 ITM、validate_start_body 集成。

7. 与开发方案对齐

更新 docs/对冲计划开发方案.md §3.2 / §4.1 选约约束,与本文件一致。