前言
在量化交易中,K 线数据是最常用的数据类型。无论是计算技术指标(如均线、MACD、布林带),还是进行策略回测,都离不开 K 线数据。
本文将详细介绍如何使用天勤量化(TqSdk)获取期货 K 线数据,包括:
- 获取不同周期的 K 线(1 分钟、5 分钟、日线等)
- 实时更新 K 线数据
- 判断新 K 线生成
- 使用 pandas 处理 K 线数据
K 线数据基础
什么是 K 线?
K 线(也叫蜡烛图)是一种常用的价格图表,每根 K 线包含四个价格:
| 字段 | 英文 | 说明 |
|---|---|---|
| 开盘价 | open | K 线起始价格 |
| 最高价 | high | K 线期间最高价 |
| 最低价 | low | K 线期间最低价 |
| 收盘价 | close | K 线结束价格 |
K 线周期
常见的 K 线周期:
| 周期 | 秒数 | 说明 |
|---|---|---|
| 1 分钟 | 60 | 短线交易常用 |
| 5 分钟 | 300 | 日内交易常用 |
| 15 分钟 | 900 | 波段交易常用 |
| 1 小时 | 3600 | 中线交易常用 |
| 日线 | 86400 | 趋势分析常用 |
获取 K 线数据
获取 1 分钟 K 线
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
功能:获取期货 K 线数据
说明:本代码仅供学习参考
"""
from tqsdk import TqApi, TqAuth
# 创建 API 实例
api = TqApi(auth=TqAuth("你的快期账户", "你的密码"))
# 获取螺纹钢 2501 合约的 1 分钟 K 线,最近 200 根
klines = api.get_kline_serial("SHFE.rb2501", duration_seconds=60, data_length=200)
# 打印 K 线数据类型
print(f"数据类型:{(klines)}")
()
( * )
()
(klines.tail())
api.close()

