# オプション契約ランキング

get_option_rank(option_market, sort_type, count=None, trading_date=None, sort_direction=None, page=None, filter_list=None)

  • 説明

    オプション契約ランキングリストを取得します。出来高、建玉、増玉、減玉、IV、騰落率等の次元でのソートに対応。

  • パラメータ

    パラメータ 説明
    option_market OptionMarket オプション市場タイプ
    sort_type OptionRankType ソートタイプ
    count int 返却数量
    trading_date str 取引日
    sort_direction int ソート方向
    page str ページングカーソル
    filter_list list[OptionRankFilter] フィルタ条件リスト
  • フィルタ(OptionRankFilter)

    OptionRankFilter でフィルタ条件を構築します。複数条件は AND 関係です。

    OptionRankFilter(indicator_type, value_list=None, interval_min=None, interval_max=None,
                     min_inclusive=True, max_inclusive=True, security_list=None)
    
    1
    2
    パラメータ 説明
    indicator_type OptionRankIndicatorType フィルタ因子タイプ
    value_list list 確定値リスト(列挙値または整数)
    interval_min float 区間下限
    interval_max float 区間上限
    min_inclusive bool 下限を閉区間にするか、デフォルト True
    max_inclusive bool 上限を閉区間にするか、デフォルト True
    security_list list[str] 証券コードリスト
    • フィルタ因子(完全な列挙は OptionRankIndicatorType を参照)、フィルタ方式別グループ:

      フィルタ方式 使用パラメータ 適用因子 意味
      security_list security_list OWNER_LIST 指定標的の契約のみ
      value_list value_list STOCK_CATEGORYOPTION_TYPEIN_THE_MONEY 列挙値集合に一致
      範囲 interval_min / interval_max IVIV_RANKIV_PERCENTILEUNDERLYING_IVUNDERLYING_HVMARKET_CAPVOLUMEOPEN_INTERESTLEFT_DAYSDELTAGAMMATHETAVEGARHO 区間内
  • 戻り値

    パラメータ 説明
    ret RET_CODE インターフェース呼び出し結果
    data pandas.DataFrame ret == RET_OK の場合、ランキングデータを返す。ret != RET_OK の場合、エラー説明文字列を返す
    next_page str 次ページカーソル。データがない場合は None
    all_count int 総数
    • data DataFrame フィールド:

      フィールド 説明
      code str オプション契約コード
      name str オプション名称
      option_type str オプションタイプ
      oi_increment int 増玉
      oi_decrement int 減玉
      oi_market_cap_increment float 増玉額
      oi_market_cap_decrement float 減玉額
      volume int 出来高
      turnover float 売買代金
      open_interest int 建玉
      open_interest_market_cap float 建玉額
      iv float インプライドボラティリティ(パーセント)
      option_price float オプション最新価格
      change_ratio float 騰落率(パーセント)
      mid_price float 中間価格
      bid_price float 買い価格
      bid_volume int 買い数量
      ask_price float 売り価格
      ask_volume int 売り数量
      delta float Delta
      gamma float Gamma
      theta float Theta
      vega float Vega
      rho float Rho
      trading_date str 取引日
      trading_timestamp float 取引タイムスタンプ
  • Example

from moomoo import *

quote_ctx = OpenQuoteContext(host='127.0.0.1', port=11111)

# フィルタ使用ガイド(必要に応じてコメント解除、構築後 filter_list に渡す、複数条件は AND 関係):
# # ① 標的リストフィルタ — 指定標的の契約のみ
# f_owner = OptionRankFilter(OptionRankIndicatorType.OWNER_LIST,
#                            security_list=['US.TSLA', 'US.AAPL'])
# # ② 確定値フィルタ — ETF 標的 + PUT のみ + アウトオブザマネー契約
# f_cat = OptionRankFilter(OptionRankIndicatorType.STOCK_CATEGORY, value_list=[StockCategory.ETF])
# f_type = OptionRankFilter(OptionRankIndicatorType.OPTION_TYPE, value_list=[2])   # 2=Put
# f_itm = OptionRankFilter(OptionRankIndicatorType.IN_THE_MONEY, value_list=[0])   # 0=OTM
# # ③ 範囲フィルタ — 満期まで 1~30 日、Delta が -0.5 ~ -0.2
# f_days = OptionRankFilter(OptionRankIndicatorType.LEFT_DAYS, interval_min=1, interval_max=30)
# f_delta = OptionRankFilter(OptionRankIndicatorType.DELTA, interval_min=-0.5, interval_max=-0.2)

ret, data, next_page, all_count = quote_ctx.get_option_rank(
    OptionMarket.US_SECURITY,
    OptionRankType.VOLUME,
    count=5
    # filter_list=[f_cat, f_type, f_itm, f_days, f_delta]   # 複数条件 AND、上で構築したフィルタを渡す
)
if ret == RET_OK:
    print(data)
    print('all_count:', all_count)
else:
    print('error:', data)

quote_ctx.close()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
  • Output
                  code                name option_type  oi_increment oi_decrement  oi_market_cap_increment oi_market_cap_decrement  volume    turnover  open_interest  open_interest_market_cap       iv  option_price  change_ratio  mid_price  bid_price  bid_volume  ask_price  ask_volume    delta    gamma      theta     vega  rho trading_date  trading_timestamp
0  US.SPY260612C742000  SPY 260612 742.00C        CALL          1816          N/A                 105328.0                     N/A  730160  91928623.0           7449                  432042.0  146.507          0.58       -67.688      0.580       0.56          28       0.60           1  0.43674  0.27447 -455.46028  0.00385  0.0   2026-06-12       1.781237e+09
1  US.SPY260612C745000  SPY 260612 745.00C        CALL          5416          N/A                   5416.0                     N/A  617981  44479304.0          17013                   17013.0   87.067          0.01       -98.958      0.015       0.01         708       0.02         500  0.02438  0.03501  -18.52310  0.00107  0.0   2026-06-12       1.781237e+09
2  US.SPY260612C743000  SPY 260612 743.00C        CALL          5438          N/A                  48942.0                     N/A  606769  64419534.0           7426                   66834.0   59.082          0.09       -93.898      0.095       0.09         208       0.10         118  0.13412  0.19487  -50.92453  0.00405  0.0   2026-06-12       1.781237e+09
3  US.SPY260612P740000  SPY 260612 740.00P         PUT          1223          N/A                   1223.0                     N/A  566915  69291991.0          15291                   15291.0   53.083          0.01       -99.790      0.015       0.01         447       0.02         407 -0.03761  0.08224  -16.47701  0.00153  0.0   2026-06-12       1.781237e+09
4  US.SPY260612C741000  SPY 260612 741.00C        CALL          2924          N/A                 423980.0                     N/A  506505  88981079.0           6229                  903205.0  224.448          1.45       -33.179      1.520       1.46          12       1.58          23  0.63754  0.17055 -662.49947  0.00367  0.0   2026-06-12       1.781237e+09
all_count: 1955829
1
2
3
4
5
6
7

インターフェース制限

  • 30秒以内に最大60回のオプション契約ランキングインターフェースリクエスト(ページング対応のインターフェースは初回呼び出しのみカウント)