qmt编程之获取期货行情数据
qmt更加详细的教程方法,会持续慢慢梳理。
也可找寻博主的历史文章,搜索关键词查看解决方案 !
获取行情数据
提示
使用该接口时,需要先订阅实时行情(subscribe_quote
)或下载过历史行情(download_history_data
)
python
from xtquant import xtdata
xtdata.get_market_data_ex(field_list=[], stock_list=[], period='1d', start_time='', end_time='', count=-1, dividend_type='none', fill_data=True)
参数
名称 | 类型 | 描述 |
---|---|---|
field |
list |
数据字段,详情见下方field字段表 |
stock_list |
list |
合约代码列表 |
period |
str |
数据周期——1m、5m、1d、tick |
start_time |
str |
数据起始时间,格式为 %Y%m%d 或 %Y%m%d%H%M%S,填""为获取历史最早一天 |
end_time |
str |
数据结束时间,格式为 %Y%m%d 或 %Y%m%d%H%M%S ,填""为截止到最新一天 |
count |
int |
数据个数 |
dividend_type |
str |
除权方式 |
fill_data |
bool |
是否填充数据 |
field
字段可选:
field | 数据类型 | 含义 |
---|---|---|
time |
int |
时间 |
open |
float |
开盘价 |
high |
float |
最高价 |
low |
float |
最低价 |
close |
float |
收盘价 |
volume |
float |
成交量 |
amount |
float |
成交额 |
settle |
float |
今结算 |
openInterest |
float |
持仓量 |
preClose |
float |
前收盘价 |
suspendFlag |
int |
停牌 1停牌,0 不停牌 |
period
周期为tick时,field
字段可选:
字段名 | 数据类型 | 含义 |
---|---|---|
time |
int |
时间戳 |
stime |
string |
时间戳字符串形式 |
lastPrice |
float |
最新价 |
open |
float |
开盘价 |
high |
float |
最高价 |
low |
float |
最低价 |
lastClose |
float |
前收盘价 |
amount |
float |
成交总额 |
volume |
int |
成交总量(手) |
pvolume |
int |
原始成交总量(未经过股手转换的成交总量)【不推荐使用】 |
stockStatus |
int |
证券状态 |
openInterest |
int |
若是股票,则openInt含义为股票状态,非股票则是持仓量openlnt字段说明 |
transactionNum |
float |
成交笔数(期货没有,单独计算) |
lastSettlementPrice |
float |
前结算(股票为0) |
settlementPrice |
float |
今结算(股票为0) |
askPrice |
list[float] |
多档委卖价 |
askVol |
list[int] |
多档委卖量 |
bidPrice |
list[float] |
多档委买价 |
bidVol |
list[int] |
多档委买量 |
返回值
period为
1m
5m
1d
K线周期时- 返回dict { field1 : value1, field2 : value2, ... }
- 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
增序排列