# 获取实时 K 线

# get_cur_kline

get_cur_kline(code, num, ktype=SubType.K_DAY, autype=AuType.QFQ)

  • 介绍

    获取已订阅股票的实时 K 线数据,必须要先订阅。

  • 参数

    参数 类型 说明
    code str 股票代码
    num int K 线数据个数
    ktype KLType K 线类型
    autype AuType 复权类型
  • 返回

    参数 类型 说明
    ret RET_CODE 接口调用结果
    data pd.DataFrame 当 ret == RET_OK,返回 K 线数据数据
    str 当 ret != RET_OK,返回错误描述
    • K 线数据格式如下:
      字段 类型 说明
      code str 股票代码
      time_key str 时间
      open float 开盘价
      close float 收盘价
      high float 最高价
      low float 最低价
      volume int 成交量
      turnover float 成交额
      pe_ratio float 市盈率
      turnover_rate float 换手率
      last_close float 昨收价
  • Example

from futu import *
quote_ctx = OpenQuoteContext(host='127.0.0.1', port=11111)

ret_sub, err_message = quote_ctx.subscribe(['HK.00700'], [SubType.K_DAY], subscribe_push=False)
# 先订阅 K 线类型。订阅成功后 FutuOpenD 将持续收到服务器的推送,False 代表暂时不需要推送给脚本
if ret_sub == RET_OK:  # 订阅成功
    ret, data = quote_ctx.get_cur_kline('HK.00700', 2, SubType.K_DAY, AuType.QFQ)  # 获取港股00700最近2个 K 线数据
    if ret == RET_OK:
        print(data)
        print(data['turnover_rate'][0])   # 取第一条的换手率
        print(data['turnover_rate'].values.tolist())   # 转为 list
    else:
        print('error:', data)
else:
    print('subscription failed', err_message)
quote_ctx.close()  # 关闭当条连接,FutuOpenD 会在1分钟后自动取消相应股票相应类型的订阅
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  • Output
    code             time_key   open  close   high    low    volume      turnover  pe_ratio  turnover_rate  last_close
0  HK.00700  2020-03-27 00:00:00  390.0  382.4  390.0  381.8  28738698  1.103966e+10    35.466        0.00301       381.8
1  HK.00700  2020-03-30 00:00:00  371.8  376.6  380.0  371.6  21838731  8.188543e+09    34.928        0.00229       382.4
0.00301
[0.00301, 0.00229]
1
2
3
4
5

接口限制

  • 此接口为获取实时 K 线接口,最多能获取最近的 1000 根。如需获取历史 K 线,请参考 获取历史 K 线
  • 市盈率和换手率字段,只有日 K 及以上周期的正股才有数据

提示