关于 ib-report-delta-adjusted-notional-exposure
用于计算 Interactive Brokers 各账户 Delta 调整名义敞口的报告技能。它从本地 TWS 或 IB Gateway 获取持仓数据,并生成按账户和标的拆分的 Markdown 报告。
主要功能
- 01连接 TWS 或 IB Gateway
- 02计算 Delta 调整名义敞口
- 03汇总多头、空头和净敞口
- 04按账户和标的拆分敞口
- 05保存 Markdown 报告
适用场景
- 01查看 IB 各账户的敞口
- 02比较多头与空头持仓
- 03检查各标的的敞口
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ staskh/ trading_skills --skill ib-report-delta-adjusted-notional-exposure安装后在 Claude Code 中输入/ib-report-delta-adjusted-notional-exposure确认已加载。
附带文件scripts/delta_exposure.pytemplates/markdown-template.md
详细介绍
IB Delta 调整后名义敞口报告
计算并报告所有 Interactive Brokers 账户的 Delta 调整后名义敞口。
IB 连接
本地必须运行 TWS 或 IB Gateway,并启用 API:
- 模拟交易 — 端口 7497
- 实盘交易 — 端口 7496
IB_PORT环境变量 — 未指定--port时使用的默认端口(例如,Gateway 容器可设置IB_PORT=4001)。优先级:--port标志 >IB_PORT> 内置默认值。在 shell 或.env文件中设置。
**端口回退:**如果配置的端口连接失败,则自动尝试另一个端口。 如果重试成功,则将可用的账户类型(实盘/模拟)保存到记忆中,并在本次及后续会话的所有 IB 技能调用中复用,直到用户明确要求切换到另一种账户。 如果两个端口都连接失败,请让用户确认 TWS 或 IB Gateway 正在运行且已启用 API 访问。
说明
第 1 步:收集数据
uv run python scripts/delta_exposure.py [--port PORT]
脚本会将包含所有持仓 Delta 和汇总数据的 JSON 输出到 stdout。
第 2 步:生成报告
阅读 templates/markdown-template.md 中的格式说明。根据 JSON 数据生成 Markdown 报告并保存到 sandbox/。
文件名:delta_exposure_report_{YYYYMMDD}_{HHMMSS}.md
第 3 步:报告结果
向用户展示汇总表(总多头、总空头、净值)和主要敞口。附上保存的报告路径。
参数
--port- IB 端口(模拟交易的默认端口为 7497)
JSON 输出
返回 Delta 调整后名义敞口,包含:
connected- 布尔值accounts- 账户 ID 列表position_count- 持仓总数positions- 持仓数组,包含标的、Delta、delta_notional、现货价格summary- 多头、空头和净 Delta 名义敞口总额by_account- 按账户划分的多头/空头明细by_underlying- 按标的划分的多头/空头/净值明细
方法
- 股票期权:使用 Black-Scholes,根据实值程度估算 IV 来计算 Delta
- 期货:Delta = 1.0(完整名义敞口)
- 期货期权:使用较低的 IV 假设(20%)计算 Delta
- 股票:Delta = 1.0
Delta 调整后名义敞口 = delta x 现货价格 x 数量 x 乘数
示例
# Paper trading (default)
uv run python scripts/delta_exposure.py
# Live trading
uv run python scripts/delta_exposure.py --port 7496
时区
所有时间戳和基于时间的计算都必须使用 America/New_York 时区。所有 JSON 输出都必须包含 generated_at(纽约时间字符串)和 data_delay 字段。