vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 4
声望: 0

老师好,道指csv文件导入的问题:
1)表中是1896年开始的数据,报如下错误,请帮忙看看怎么解决,谢谢。
2)导入后的数据怎么在软件中显示成K线图,添加指标等操作呢,谢谢。

Traceback (most recent call last):
File "c:\vnstudio\lib\site-packages\vnpy\app\data_manager\ui\widget.py", line 230, in import_data
datetime_format
File "c:\vnstudio\lib\site-packages\vnpy\app\data_manager\engine.py", line 64, in import_data_from_csv
volume=float(item[volume_head]),
ValueError: could not convert string to float:

description

description

Member
avatar
加入于:
帖子: 959
声望: 51

报这个错通常是因为:要转换成浮点数的字符串中包含非数字字符 的东西,比如空字符串、字母都不可以转换为浮点数。
请检查一下自己的字符串内容,注意里面是否有换换行符 \n,制表符 \t 或空字符串 ‘ ’

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

整理的如第一张截图所示,没多余的字符,其他品种也是这样整理都成功导入了。把数据删除掉一些,从1901年开始也不行。

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

description

是数据的时间不能支持过早的日期数据,把1986年前的删除后就可以导入了。期盼指导一下此问题怎样处理较好,谢谢。

Administrator
avatar
加入于:
帖子: 4220
声望: 241

上面的报错,是说Volume这列有内容无法转换为数字,和日期无关,请检查下你的数据中比较早期的内容是否有缺失

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

description
Volume问题已解决;网上看的说Sqlite数据库的datetime支持的日期是1970-1-1开始的,怀疑还是数据库支持的日期范围超限,可能数据库表得增加一个字段,专门用于解决1970年之前的日期存放问题,代码部分估计也需要适当修改。

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