mcpField
I
ib-option-chain

ib-option-chain

github.com/staskhその他39492 回インストール1 日前に更新
リポジトリ

ib-option-chain について

ib-option-chain は、Interactive Brokers から株式、ETF、先物オプションのチェーンデータを取得するスキルです。IB のコントラクト詳細から資産種別を判定し、指定満期のコール、プット、グリークス、原資産価格を返します。

主な機能

  1. 01利用可能な満期日の一覧表示
  2. 02指定満期のコールとプットを取得
  3. 03株式または先物の自動判定
  4. 04グリークスと市場データの取得
  5. 05資産種別の強制指定

活用シーン

  1. 01満期別のコールとプットの確認
  2. 02オプションの出来高とインプライド・ボラティリティの確認
  3. 03先物銘柄の先物オプションチェーン取得

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/staskh/trading_skills --skill ib-option-chain

インストール後、Claude Code で/ib-option-chainを入力して読み込まれたか確認します。

同梱ファイルscripts/options.py

詳細

IB オプションチェーン

Interactive Brokers から、指定した満期日のオプションチェーンデータを取得します。 株式/ETF(Stock/OPT)と先物オプション(FOP)に対応しています。資産タイプと 取引所はIB のコントラクト詳細から解決されます(ハードコードされた銘柄テーブルは使用しません)。自動検出では まず SMART 株式を試し、株式が存在しない場合は先物にフォールバックします(そのため、NQ、GC、 RTY は先物として解決されますが、AAPL は、あまり知られていない単一銘柄先物があるにもかかわらず、株式として解決されます)。 株式と先物のルートの両方に該当するティッカー(例:ES=Eversource、 CL=Colgate)は、デフォルトで株式として解決されます。先物を指定するには --sec-type fut を渡してください。

IB 接続

TWS または IB Gateway がローカルで起動しており、API が有効になっている必要があります。

  • ペーパートレード — ポート 7497
  • ライブトレード — ポート 7496
  • IB_PORT 環境変数 — --port を省略した場合のデフォルトポート(例:Gateway コンテナでは IB_PORT=4001)。優先順位:--port フラグ > IB_PORT > 組み込みのデフォルト値。シェルまたは .env ファイルに設定してください。

ポートのフォールバック: 設定されたポートへの接続に失敗した場合、もう一方のポートで自動的に再試行します。 再試行に成功した場合は、どの口座タイプ(ライブ/ペーパー)が動作したかをメモリに保存し、このセッションおよび今後のセッションで、ユーザーが明示的に別の口座を求めるまで、すべての IB スキル呼び出しに再利用します。 両方のポートで失敗した場合は、TWS または IB Gateway が起動しており、API アクセスが有効になっていることをユーザーに確認するよう求めてください。

手順

最初に、利用可能な満期日を取得します。

uv run python scripts/options.py SYMBOL --expiries

次に、指定した満期日のチェーンを取得します。

uv run python scripts/options.py SYMBOL --expiry YYYYMMDD

引数

  • SYMBOL - ティッカーシンボル。株式/ETF(例:AAPL、SPY、TSLA)または先物ルート(例:NQ、ES、CL、GC)。資産タイプは IB 経由で自動検出されます。
  • --sec-type {stk,fut} - 資産タイプを指定します。デフォルト:自動検出(株式を優先)。ES/CL など、どちらにも該当するルートで先物を指定する場合は fut を使用します。
  • --expiries - 利用可能な満期日のみを一覧表示します
  • --expiry YYYYMMDD - 指定した日付のチェーンを取得します(IB 形式:YYYYMMDD、ハイフンなし)
  • --port - IB のポート(デフォルト:ペーパートレードでは 7497)

出力

以下を含む JSON を返します。

  • calls - 行使価格、bid、ask、lastPrice、volume、openInterest、impliedVolatility、greeks(IB モデルの delta/gamma/theta/vega/iv)、および multiplier(先物のみ)を含むコールオプションの配列
  • puts - 同じフィールドを含むプットオプションの配列
  • underlying_price - 参照用の現在の原資産価格(株式/ETF の価格または連続先物価格)
  • asset_type - "stock" または "future"
  • source - "ibkr"

データはテーブル形式で提示してください。出来高の多い行使価格と、注目すべき IV 水準を強調してください。

依存関係

  • ib-async

タイムゾーン

すべてのタイムスタンプと時間ベースの計算には、America/New_York タイムゾーンを使用する必要があります。すべての JSON 出力には generated_at(NY 時刻の文字列)と data_delay フィールドを含める必要があります。

コメント