VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 97
声望: 4

我测试了,每个交易日21点前,tushare的分钟线获取,如果起止时间只输入日期,不输入时间,那么只能获取到昨日夜盘收盘时的分钟数据,如果带上小时:分钟:秒钟,才能获取到今天白天的分钟数据。具体可以参考tushare的入坑说明:https://www.tushare.pro/document/1?doc_id=234
例子如下:

获取股票1分钟数据

df = ts.pro_bar(ts_code='600000.SH',
freq='1min',
start_date='2020-01-07 09:00:00',
end_date='2020-01-08 17:00:00')
希望下一版vnpy_tushare能修正这个错误。

Member
avatar
加入于:
帖子: 716
声望: 63

vnpy_tushare在获取查询时间时只获取了日期,所以导致只获取到昨日夜盘收盘时的分钟数据。将query_bar_history函数中start = req.start.strftime("%Y%m%d")改成start = req.start.strftime("%Y-%m-%d %H:%M:%S"),end = req.end.strftime("%Y%m%d")改成end = req.end.strftime("%Y-%m-%d %H:%M:%S")应该就可以了。

Member
avatar
加入于:
帖子: 97
声望: 4

郭易燔 wrote:

vnpy_tushare在获取查询时间时只获取了日期,所以导致只获取到昨日夜盘收盘时的分钟数据。将query_bar_history函数中start = req.start.strftime("%Y%m%d")改成start = req.start.strftime("%Y-%m-%d %H:%M:%S"),end = req.end.strftime("%Y%m%d")改成end = req.end.strftime("%Y-%m-%d %H:%M:%S")应该就可以了。
是这样的,我手工改过来了。希望下一版vnpy_tushare要改正这个

搞错了,interval是日线是,不需要修改。不是日线,是小时或者分钟时,需要这样修改。要价格条件判断,分情况获取

Member
avatar
加入于:
帖子: 97
声望: 4

郭易燔 wrote:

vnpy_tushare在获取查询时间时只获取了日期,所以导致只获取到昨日夜盘收盘时的分钟数据。将query_bar_history函数中start = req.start.strftime("%Y%m%d")改成start = req.start.strftime("%Y-%m-%d %H:%M:%S"),end = req.end.strftime("%Y%m%d")改成end = req.end.strftime("%Y-%m-%d %H:%M:%S")应该就可以了。
应该这样:

if interval == Interval.DAILY:
start = req.start.strftime("%Y%m%d")
end = req.end.strftime("%Y%m%d")
else:
start = req.start.strftime("%Y-%m-%d %H:%M:%S")
end = req.end.strftime("%Y-%m-%d %H:%M:%S")

Member
avatar
加入于:
帖子: 716
声望: 63

%Y-%m-%d %H:%M:%S这个格式的数据是可以查询DAILY数据的,应该不需要再做区分了

Member
avatar
加入于:
帖子: 97
声望: 4

郭易燔 wrote:

%Y-%m-%d %H:%M:%S这个格式的数据是可以查询DAILY数据的,应该不需要再做区分了
可以了,谢谢

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】