用python解析QMT本地数据
获取本地行情数据
get_local_data(field_list=[], stock_code=[], period='1d', start_time='', end_time='', count=-1,dividend_type='none', fill_data=True, data_dir=data_dir)
释义
从本地数据文件获取行情数据,用于快速批量获取历史部分的行情数据
参数
field_list - list 数据字段列表,传空则为全部字段
stock_list - list 合约代码列表
period - string 周期
start_time - string 起始时间
end_time - string 结束时间
count - int 数据个数
dividend_type - string 除权方式
fill_data - bool 是否向后填充空缺数据
data_dir - string MiniQmt配套路径的userdata_mini路径,用于直接读取数据文件。默认情况下xtdata会通过连接向MiniQmt直接获取此路径,无需额外设置。如果需要调整,可以将数据路径作为data_dir传入,也可以直接修改xtdata.data_dir以改变默认值
返回
period为1m 5m 1dK线周期时
返回dict { field1 : value1, field2 : value2, ... }
field1, field2, ... :数据字段
value1, value2, ... :pd.DataFrame 数据集,index为stock_list,columns为time_list
各字段对应的DataFrame维度相同、索引相同
period为tick分笔周期时
返回dict { stock1 : value1, stock2 : value2, ... }
stock1, stock2, ... :合约代码
value1, value2, ... :np.ndarray 数据集,按数据时间戳time增序排列
备注
仅用于获取level1数据
调用示范
from xtquant import xtdata
import pandas as pd
import datetime,time
df=xtdata.get_local_data(field_list=['time','open','high','low','close','volume','amount'],stock_code=['600050.SH'],count=10)
df2=pd.concat([df[i].loc['600050.SH'].T for i in['time','open','high','low','close','volume','amount']],axis=1)
df2.columns=['time','open','high','low','close','volume','amount']
df2['time2']=df2.index
df2['time']=df2['time2'].apply(lambda x: datetime.datetime.fromtimestamp(int(x/1000.0)))
df2.reset_index(drop=True,inplace=True)
print(df2)
输出
time open high low close volume amount time2
0 2023-01-09 4.98 5.01 4.88 4.98 3246943 1.608308e+09 1673193600000
1 2023-01-10 4.95 5.02 4.90 4.98 2571948 1.277204e+09 1673280000000
2 2023-01-11 4.97 5.12 4.93 4.96 3127401 1.572082e+09 1673366400000
3 2023-01-12 4.94 5.14 4.92 5.11 3870406 1.952001e+09 1673452800000
4 2023-01-13 5.07 5.14 4.99 5.06 3227926 1.631200e+09 1673539200000
5 2023-01-16 5.06 5.10 4.98 5.02 2944490 1.483375e+09 1673798400000
6 2023-01-17 4.99 5.04 4.94 4.95 2094947 1.043011e+09 1673884800000
7 2023-01-18 4.95 5.12 4.91 5.07 3392366 1.713247e+09 1673971200000
8 2023-01-19 5.04 5.18 5.02 5.17 4324306 2.205093e+09 1674057600000
9 2023-01-20 5.19 5.62 5.17 5.53 7470132 4.101551e+09 1674144000000