# イベントコントラクトの板取得

get_event_contract_order_book(code, num=10)

  • 説明

    単一のイベントコントラクトの板データを取得します。YES/NO 買い板と売り板の各段の価格・数量を含みます。

  • パラメータ

    パラメータ 説明
    code str イベントコントラクトコード、例: 'EC.KXODIMATCH-26JUL140600INDENG-IND'
    num int 要求する板の段数、デフォルト 10、0 より大きい必要があります
  • 戻り値

    パラメータ 説明
    ret RET_CODE API 呼出結果
    data dict ret == RET_OK の場合、板データを返します。code、yes_bids、yes_asks、no_bids、no_asks を含みます
    str ret != RET_OK の場合、エラー説明を返します

    返される dict のフィールドは以下の通りです:

    フィールド 説明
    code str コントラクトコード
    yes_bids list[tuple] YES 買い板、[(price, size), ...]
    yes_asks list[tuple] YES 売り板、[(price, size), ...]
    no_bids list[tuple] NO 買い板、[(price, size), ...]
    no_asks list[tuple] NO 売り板、[(price, size), ...]
  • Example

from moomoo import *

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

# 板を照会する前に ORDER_BOOK の登録が必要です(そうでない場合はエラーが返されます)
ret, err = quote_ctx.subscribe_event_contract(
    ['EC.KXODIMATCH-26JUL140600INDENG-IND'], [SubType.ORDER_BOOK]
)
if ret != RET_OK:
    print('登録失敗:', err)
else:
    ret, data = quote_ctx.get_event_contract_order_book(
        'EC.KXODIMATCH-26JUL140600INDENG-IND', num=5
    )
    if ret == RET_OK:
        print('コントラクト:', data['code'])
        print('YES 買い板:', data['yes_bids'])
        print('YES 売り板:', data['yes_asks'])
        print('NO 買い板:', data['no_bids'])
        print('NO 売り板:', data['no_asks'])
    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
  • Output
コントラクト: EC.KXODIMATCH-26JUL140600INDENG-IND
YES 買い板: [(0.5, 1030.0), (0.48, 0.01), (0.45, 5.0), (0.43, 1.0), (0.42, 175.0)]
YES 売り板: [(0.51, 2633.6), (0.52, 15500.0), (0.53, 3000.0), (0.54, 1000.0), (0.55, 2124.0)]
NO 買い板: [(0.49, 2633.6), (0.48, 15500.0), (0.47, 3000.0), (0.46, 1000.0), (0.45, 2124.0)]
NO 売り板: [(0.5, 1030.0), (0.52, 0.01), (0.55, 5.0), (0.57, 1.0), (0.58, 175.0)]
1
2
3
4
5