QMT 获取分时、K 线历史数据完整代码分享
发布时间:4小时前阅读:33
在 QMT 量化交易平台中,获取分时和 K 线历史数据是构建量化策略的重要基础。以下为你分享完整的获取数据代码及详细说明:
获取 K 线历史数据代码
python
运行
# -*- coding: gbk -*-
from qmt.api import *
def get_kline_data(stock_code, start_date, end_date, frequency='1d'):
"""
获取指定股票的K线历史数据
:param stock_code: 股票代码,如 '600000.SH'
:param start_date: 开始日期,格式 'YYYYMMDD'
:param end_date: 结束日期,格式 'YYYYMMDD'
:param frequency: K线频率,'1d' 代表日线,'1w' 代表周线,'1m' 代表月线等
:return: K线数据 DataFrame
"""
data = get_history(stock_code, start_date=start_date, end_date=end_date, frequency=frequency)
if data is None:
return pd.DataFrame()
columns = ['open', 'high', 'low', 'close', 'volume']
df = pd.DataFrame(data, columns=columns)
df.index = pd.to_datetime([str(i) for i in range(len(df))], format='%Y%m%d')
return df
# 示例使用
if __name__ == '__main__':
stock_code = '600000.SH'
start_date = '20230101'
end_date = '20231231'
kline_data = get_kline_data(stock_code, start_date, end_date, frequency='1d')
print(kline_data)
代码说明
- 函数定义:
get_kline_data函数用于获取 K 线历史数据,接受股票代码stock_code、开始日期start_date、结束日期end_date以及 K 线频率frequency作为参数。 - 数据获取:通过
get_history函数从 QMT 数据接口获取数据。如果获取的数据为空,返回一个空的DataFrame。 - 数据整理:将获取到的数据整理成
DataFrame格式,并设置日期为索引。这里简单将索引转换为日期格式,实际应用中可根据需求优化。 - 示例使用:在
if __name__ == '__main__':代码块中,定义示例股票代码、开始日期和结束日期,调用get_kline_data函数获取日线数据并打印。
获取分时历史数据代码
python
运行
# -*- coding: gbk -*-
from qmt.api import *
import pandas as pd
def get_intraday_data(stock_code, trade_date):
"""
获取指定股票在指定交易日的分时历史数据
:param stock_code: 股票代码,如 '600000.SH'
:param trade_date: 交易日,格式 'YYYYMMDD'
:return: 分时数据 DataFrame
"""
data = get_intraday(stock_code, trade_date)
if data is None:
return pd.DataFrame()
columns = ['time', 'price', 'volume', 'amount']
df = pd.DataFrame(data, columns=columns)
df['time'] = pd.to_datetime(df['time'].astype(str), format='%H%M%S')
df.set_index('time', inplace=True)
return df
# 示例使用
if __name__ == '__main__':
stock_code = '600000.SH'
trade_date = '20230101'
intraday_data = get_intraday_data(stock_code, trade_date)
print(intraday_data)
代码说明
- 函数定义:
get_intraday_data函数用于获取指定股票在指定交易日的分时数据,接受股票代码stock_code和交易日trade_date作为参数。 - 数据获取:通过
get_intraday函数从 QMT 数据接口获取分时数据。若获取失败,返回空的DataFrame。 - 数据整理:将获取的数据整理为
DataFrame格式,将时间列转换为datetime类型并设置为索引。 - 示例使用:在
if __name__ == '__main__':代码块中,定义示例股票代码和交易日,调用get_intraday_data函数获取分时数据并打印。
通过上述代码,你可以在 QMT 平台中方便地获取分时和 K 线历史数据,为进一步的量化策略开发和分析提供有力支持。在实际应用中,可根据具体需求对数据进行更深入的处理和分析。
股票/量化开户找我!股票佣金万0.854(满足条件)!无门槛国债逆回购一折 (百万分之一)!ETF佣金万0.5!优惠多多!免费量化使用量化软件QMT+miniQMT+ptrade!

温馨提示:投资有风险,选择需谨慎。
K线图的历史数据可以从哪里获取?
怎么获取沪深300历史数据
-
一家坚守19年的财商教育平台,如何重塑投资服务的“靠谱”底色
2026-06-29 13:08
-
REITs打新:⌈华泰三峡新能源REIT⌋ 和 ⌈创金合信北京国资公司REIT⌋ 本周发售!
2026-06-29 13:08
-
券商客户经理是做什么的?为什么建议你理财投资前找一位?
2026-06-29 13:08


问一问

+微信
分享该文章
