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

在数据管理功能里,下载rb1909日线数据出错,不知道怎么回事?提示如下:

Traceback (most recent call last):
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_datamanager/ui/widget.py", line 609, in download
count = self.engine.download_bar_data(symbol, exchange, interval, start)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_datamanager/engine.py", line 212, in download_bar_data
data = self.datafeed.query_bar_history(req)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_tushare/tushare_datafeed.py", line 205, in query_bar_history
open_price=round_to(row["open"], 0.000001),
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy/trader/utility.py", line 126, in round_to
rounded = float(int(round(value / target)) * target)
ValueError: cannot convert NaN to integer

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

tushare的日线数据对于当天没有成交的数据是使用NaN来表示当天的高开低收的,所以在转换的时候报了这个错,解决办法是在这里处理一下
description

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

谢谢郭总,每次求助都没落空!!!赞一个。

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

郭易燔 wrote:

tushare的日线数据对于当天没有成交的数据是使用NaN来表示当天的高开低收的,所以在转换的时候报了这个错,解决办法是在这里处理一下
description
郭总,下载数据没有问题了,但是数据管理里面,点击更新数据时,又提示触发异常: Traceback (most recent call last):
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_datamanager/ui/widget.py", line 388, in update_data
overview.end
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_datamanager/engine.py", line 215, in download_bar_data
self.database.save_bar_data(data)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/vnpy_arctic/arctic_database.py", line 71, in save_bar_data
table_name, df, upsert=True, chunk_size="M", chunk_range=DateRange(df.date.min(), df.date.max())
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/chunkstore/chunkstore.py", line 565, in update
self.update(sym, item, metadata=metadata, combine_method=self.serializer.combine, chunk_range=chunk_range, audit=audit)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/chunkstore/chunkstore.py", line 449, in
update
data = SER_MAP[sym[SERIALIZER]].serialize(record)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/serialization/numpy_arrays.py", line 197, in serialize
ret = self.converter.docify(df)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/serialization/numpy_arrays.py", line 124, in docify
raise e
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/serialization/numpy_arrays.py", line 115, in docify
arr, mask = self._convert_types(df[c].values)
File "/home/yinxiuqu/anaconda3/envs/vnpy2.7/lib/python3.7/site-packages/arctic/serialization/numpy_arrays.py", line 93, in _converttypes
raise ValueError('Cannot store arrays with {} dtype'.format(type
))
ValueError: Cannot store arrays with mixed-integer dtype

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

可能是NaN数据和0数据混合起来了,我把以前的数据删除,重新下载数据后,再更新就没有出错了。谢谢了,打扰。

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

description
麻烦再这打印一下df,排查一下是哪个合约出了问题,我尝试了一下rb1909和jm2110,下载和更新都没有出现问题,尝试将出问题的合约删除重新下载试试

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

沪公网安备 31011502017034号

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