# 拉取事件合约历史K线

request_history_event_contract_kline(code, start=None, end=None, pre_side=None, ktype=KLType.K_DAY, kline_source=None, max_count=1000, page_req_key=None)

  • 介绍

    拉取事件合约的历史 K 线数据,不需要先下载历史数据。支持按时间区间、方向、K 线来源查询,自动处理分页(max_count 大于单包上限时循环拉取)。

  • 参数

    参数 类型 说明
    code str 必填,事件合约代码,例如 'EC.KXNFLAFCCHAMP-27-CIN'
    start str 选填,开始时间,例如 '2026-07-05'
    end str 选填,结束时间,例如 '2026-07-09'
    pre_side PredSide 选填,合约方向
    ktype KLType 选填,K 线类型,仅支持 K_1M/K_5M/K_60M/K_DAY,默认 K_DAY
    kline_source ECKlineSource 选填,K 线来源
    max_count int 选填,本次请求最大返回数据点个数,None 表示返回区间内全部
    page_req_key str 选填,分页请求 key,初始请求传 None,后续传上次返回值
  • 返回

    参数 类型 说明
    ret RET_CODE 接口调用结果
    data pd.DataFrame 当 ret == RET_OK,返回历史 K 线数据
    str 当 ret != RET_OK,返回错误描述
    page_req_key str 分页请求 key,无更多数据时为 None

    返回的 DataFrame 字段如下:

    字段 类型 说明
    code str 合约代码
    pre_side str 合约方向(YES/NO/N/A)
    name str 合约名称
    time_key str K 线时间
    open float 开盘价
    high float 最高价
    low float 最低价
    close float 收盘价
    volume float 成交量
  • Example

from moomoo import *

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

# 拉取历史 K 线前需先订阅对应 K 线类型
ret, err = quote_ctx.subscribe_event_contract(
    ['EC.KXNFLAFCCHAMP-27-CIN'], [SubType.K_DAY]
)
if ret != RET_OK:
    print('订阅失败:', err)
else:
    ret, data, page_req_key = quote_ctx.request_history_event_contract_kline(
        'EC.KXNFLAFCCHAMP-27-CIN',
        start='2026-07-05', end='2026-07-09',
        pre_side=PredSide.YES, ktype=KLType.K_DAY, max_count=10
    )
    if ret == RET_OK:
        print(data)
        print('page_req_key:', page_req_key)
    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
  • Output
                      code pre_side                                                    name             time_key  open  high   low  close  volume
0  EC.KXNFLAFCCHAMP-27-CIN      YES  Will Cincinnati win the Pro Football AFC Championship?  2026-07-05 00:00:00  0.92  0.92  0.92  0.92  201.0
1  EC.KXNFLAFCCHAMP-27-CIN      YES  Will Cincinnati win the Pro Football AFC Championship?  2026-07-06 00:00:00  0.93  0.93  0.92  0.92  659.0
2  EC.KXNFLAFCCHAMP-27-CIN      YES  Will Cincinnati win the Pro Football AFC Championship?  2026-07-07 00:00:00  0.93  0.93  0.92  0.92  490.0
3  EC.KXNFLAFCCHAMP-27-CIN      YES  Will Cincinnati win the Pro Football AFC Championship?  2026-07-08 00:00:00  0.93  0.93  0.92  0.92  669.0
4  EC.KXNFLAFCCHAMP-27-CIN      YES  Will Cincinnati win the Pro Football AFC Championship?  2026-07-09 00:00:00  0.92  0.92  0.92  0.92  343.0
page_req_key: None
1
2
3
4
5
6
7

接口限制

  • 每 30 秒内最多请求 60 次拉取事件合约历史 K 线接口