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

11:42:08 历史数据加载完成,数据量:78089
11:42:08 策略初始化完成
11:42:08 开始回放历史数据
11:42:13 触发异常,回测终止
11:42:13 Traceback (most recent call last):
File "d:\vnstudio\lib\site-packages\vnpy\app\cta_strategy\backtesting.py", line 304, in run_backtesting
func(data)
File "d:\vnstudio\lib\site-packages\vnpy\app\cta_strategy\backtesting.py", line 752, in new_bar
self.update_daily_close(bar.close_price)
File "d:\vnstudio\lib\site-packages\vnpy\app\cta_strategy\backtesting.py", line 735, in update_daily_close
d = self.datetime.date()
AttributeError: 'str' object has no attribute 'date'

11:42:13 开始计算逐日盯市盈亏

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

米筐下载的1m级别数据,
原来两个地方有database.db:
1:c:\users\admin.vntrader\database.db 已经删除了。
2:D:\vnstudio\Lib\site-packages\vnpy\app\ctastrategy\backtesting\database.db也已经删除了。

Member
avatar
加入于:
帖子: 126
声望: 14

根据字面意思,
文件d:\vnstudio\lib\site-packages\vnpy\app\cta_strategy\backtesting.py种的函数update_daily_close中发生错误,具体错误原因是:
代码理论上认为 self.datetime是一个datetime格式,因此会具有date方法。
但实际上 self.datetime是个字符串,不存在这个date()方法,所以报错了。

检查一下vnpy版本、检查一下自己改了什么东西。要么就是加载数据时候,时间字符串未能转换为datetime格式。只能分析到这一步,具体还需要你自己去溯源

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

kingmo888 wrote:

根据字面意思,
文件d:\vnstudio\lib\site-packages\vnpy\app\cta_strategy\backtesting.py种的函数update_daily_close中发生错误,具体错误原因是:
代码理论上认为 self.datetime是一个datetime格式,因此会具有date方法。
但实际上 self.datetime是个字符串,不存在这个date()方法,所以报错了。

检查一下vnpy版本、检查一下自己改了什么东西。要么就是加载数据时候,时间字符串未能转换为datetime格式。只能分析到这一步,具体还需要你自己去溯源
谢谢,问题已经解决了,我用的数据库是自己编代码写进去的,可能datetime字段加载的时候未能转换为datetime格式,删了数据库,重新在客户端下载数据就好了。

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

沪公网安备 31011502017034号

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