1 Star 1 Fork 58

greatsong/qmt_trader

forked from 小果量化/qmt_trader 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
订阅单股行情.py 2.66 KB
一键复制 编辑 原始数据 按行查看 历史
小果量化 提交于 2024-06-13 11:39 . 运用
from xtquant import xtdata
import time
# 设定一个标的列表
code_list = ["600031.SH",'600111.SH']
# 设定获取数据的周期
period = "1m"
def f(data):
'''
释义
从缓存获取行情数据,是主动获取行情的主要接口
参数
field_list - list 数据字段列表,传空则为全部字段
stock_list - list 合约代码列表
period - string 周期
start_time - string 起始时间
end_time - string 结束时间
count - int 数据个数
默认参数,大于等于0时,若指定了start_time,end_time,此时以end_time为基准向前取count条;若start_time,end_time缺省,默认取本地数据最新的count条数据;若start_time,end_time,count都缺省时,默认取本地全部数据
dividend_type - string 除权方式
fill_data - bool 是否向后填充空缺数据
返回
period为1m 5m 1d等K线周期时
返回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增序排列
备注
获取lv2数据时需要数据终端有lv2数据权限
时间范围为闭区间
'''
print(data)
code_list = list(data.keys()) # 获取到本次触发的标的代码
kline_in_callabck = xtdata.get_market_data_ex([],code_list,period = '1m') # 在回调中获取klines数据
print(kline_in_callabck)
for i in code_list:
'''
订阅股票行情数据
:param stock_code: 股票代码 e.g. "000001.SZ"
:param start_time: 开始时间,格式YYYYMMDD/YYYYMMDDhhmmss/YYYYMMDDhhmmss.milli,e.g."20200427" "20200427093000" "20200427093000.000"
若取某日全量历史数据,时间需要具体到秒,e.g."20200427093000"
:param end_time: 结束时间 同“开始时间”
:param count: 数量 -1全部/n: 从结束时间向前数n个
:param period: 周期 分笔"tick" 分钟线"1m"/"5m" 日线"1d"
:param callback:
订阅回调函数onSubscribe(datas)
:param datas: {stock : [data1, data2, ...]} 数据字典
:return: int 订阅序号
'''
xtdata.subscribe_quote(i,period=period,count=-1,callback=f) # 订阅时设定回调函数
# 使用回调时,必须要同时使用xtdata.run()来阻塞程序,否则程序运行到最后一行就直接结束退出了。
xtdata.run()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/greatsong1/qmt_trader.git
[email protected]:greatsong1/qmt_trader.git
greatsong1
qmt_trader
qmt_trader
master

搜索帮助