QMT获取可转债行情数据方法介绍!支持QMT量化软件的券商平台?
获取可转债行情
为了获取转债的日线/1m/1d的k数据,以通过数据订阅形式获取最新行情subscribe_quote
。如果您需要获取历史数据,可以使用download_history_data
函数下载相关数据,然后使用get_market_data_ex
函数提取所需的信息。这样,使用者就能获得最新和详细的转债最新数据,有助于做出更精准的投资决策。
调用方法
python
# coding=utf-8
from xtquant import xtdata
# 订阅指定合约最新行情
xtdata.subscribe_quote(stock_code, period='', start_time='', end_time='', count=0, callback=None)
# 下载指定合约历史行情
xtdata.download_history_data(stock_code, period, start_time='', end_time='')
# 获取指定合约历史行情
xtdata.get_market_data_ex(field_list = [], stock_list = [], period = '', start_time = '', end_time = '', count = -1, dividend_type = 'none', fill_data = True)
参数
- xtdata.subscribe_quote
字段 | 类型 | 说明 |
---|---|---|
stock_code | str | 股票代码 |
start_time | str | 开始时间格式YYYYMMDD/YYYYMMDDhhmmss |
end_time | str | 结束时间 |
count | int | 数量 -1全部/n: 从结束时间向前数n个 |
period | str | 周期 分笔"tick" 分钟线"1m"/"5m" 日线"1d" |
- xtdata.get_market_data_ex
参数名称 | 类型 | 描述 |
---|---|---|
field_list | list | 表示所有字段。不同的数据周期,取值范围有所不同。 |
stock_list | list | 合约代码列表 |
period | str | 数据周期,默认是当前主图周期。可选值如下: 'tick' (分笔线), '1d' (日线), '1m' (1分钟线), '5m' (5分钟线), '15m' (15分钟线), 'l2quote' (Level2行情快照), 'l2quoteaux' (Level2行情快照补充), 'l2order' (Level2逐笔委托), 'l2transaction' (Level2逐笔成交),'l2transactioncount' (Level2大单统计), 'l2orderqueue' (Level2委买委卖队列) |
start_time | str | 开始时间。为空时默认为最早时间。时间格式为'20201231'或'20201231093000' |
end_time | str | 结束时间。为空时默认为最新时间。时间格式为'20201231'或'20201231235959' |
count | int | 数据最大个数。-1表示不做个数限制 |
dividend_type | str | 复权方式,默认是当前主图复权方式。可选值包括: 'none' (不复权), 'front'(前复权), 'back' (后复权), 'front_ratio' (等比前复权), 'back_ratio' (等比后复权) |
fill_data | bool | 停牌填充方式 |
返回值
- 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
增序排列
示例:
# coding=utf-8
from xtquant import xtdata
# 订阅指定合约最新行情
xtdata.subscribe_quote('123219.SZ', period='1m', start_time='', end_time='20231026150000', count=1, callback=None)
# 下载指定合约历史行情
xtdata.download_history_data('123219.SZ', '1m', '20231026093000', '20231026150000')
# 获取指定合约历史行情
min_data = xtdata.get_market_data_ex(field_list=[], stock_list=['123219.SZ'], period='1m', start_time='', end_time='20231026150000', count=10, dividend_type='none', fill_data=True)
print(min_data)
返回值
{'123219.SZ': time open ... preClose suspendFlag
20231026111800 1698290280000 121.398 ... 121.380 0
20231026111900 1698290340000 121.269 ... 121.229 0
20231026112000 1698290400000 121.269 ... 121.269 0
20231026112100 1698290460000 121.269 ... 121.269 0
20231026112200 1698290520000 121.269 ... 121.269 0
20231026112300 1698290580000 121.269 ... 121.269 0
20231026112400 1698290640000 121.265 ... 121.269 0
20231026112500 1698290700000 121.465 ... 121.468 0
20231026112600 1698290760000 121.461 ... 121.356 0
20231026112700 1698290820000 121.352 ... 121.461 0
[10 rows x 11 columns]}