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

10:10:08 rb2001.SHFE-1m开始下载历史数据
10:10:08 数据下载失败,无法获取rb2001.SHFE的历史数据

mongodb数据库中是有rb2001表

Administrator
avatar
加入于:
帖子: 4130
声望: 230

下载,是从RQDATA的数据服务下载到本地数据库,你本地已有的情况下就不用重复下载了

Member
avatar
加入于:
帖子: 94
声望: 1

用Python的交易员 wrote:

下载,是从RQDATA的数据服务下载到本地数据库,你本地已有的情况下就不用重复下载了

mongodb的数据是自己从其他数据源获取的数据, 这部分获取和上传数据的代码是自己参照vnpy1中的 rqdata数据服务写的

意思是直接回测是吗?
换了几个策略回测,成交记录均为0,
19:19:45 开始加载历史数据
19:19:45 加载进度: [3%]
19:19:45 加载进度: [5%]
19:19:45 加载进度: [8%]
19:19:45 加载进度:# [11%]
19:19:45 加载进度:# [14%]
19:19:45 加载进度:# [16%]
19:19:45 加载进度:# [19%]
19:19:45 加载进度:## [22%]
19:19:45 加载进度:## [25%]
19:19:45 加载进度:## [27%]
19:19:45 加载进度:### [30%]
19:19:45 加载进度:### [33%]
19:19:45 加载进度:### [36%]
19:19:45 加载进度:### [38%]
19:19:45 加载进度:#### [41%]
19:19:45 加载进度:#### [44%]
19:19:45 加载进度:#### [47%]
19:19:45 加载进度:#### [49%]
19:19:45 加载进度:##### [52%]
19:19:45 加载进度:##### [55%]
19:19:45 加载进度:##### [58%]
19:19:45 加载进度:###### [60%]
19:19:45 加载进度:###### [63%]
19:19:45 加载进度:###### [66%]
19:19:45 加载进度:###### [68%]
19:19:45 加载进度:####### [71%]
19:19:45 加载进度:####### [74%]
19:19:45 加载进度:####### [77%]
19:19:45 加载进度:####### [79%]
19:19:45 加载进度:######## [82%]
19:19:45 加载进度:######## [85%]
19:19:45 加载进度:######## [88%]
19:19:45 加载进度:######### [90%]
19:19:45 加载进度:######### [93%]
19:19:45 加载进度:######### [96%]
19:19:45 加载进度:######### [99%]
19:19:45 加载进度:########## [100%]
19:19:45 历史数据加载完成,数据量:0
19:19:45 策略初始化完成
19:19:45 开始回放历史数据
19:19:45 历史数据回放结束
19:19:45 开始计算逐日盯市盈亏
19:19:45 成交记录为空,无法计算
19:19:45 开始计算策略统计指标

同样的数据和策略,在vnpy1中回测是有成交记录的 vnpy2中就没了

Member
avatar
加入于:
帖子: 94
声望: 1

怎么查看回测的数据有没加载成功?就像vnpy1中那样,显示加载的数据时间范围和时间数目多少
而不是就只能看到加载了百分之多少

Administrator
avatar
加入于:
帖子: 4130
声望: 230

这里显示为0,则说明你的数据库里没有数据,注意检查symbol(代码)和vt_symbol(本地代码),不要搞错了

Member
avatar
加入于:
帖子: 94
声望: 1

用Python的交易员 wrote:

这里显示为0,则说明你的数据库里没有数据,注意检查symbol(代码)和vt_symbol(本地代码),不要搞错了

{
"_id" : "5dfe24a23f5c2aaad41ab101",
"close_price" : "3720.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:01:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3721.0",
"interval" : "1m",
"low_price" : "3719.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3719.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "2520",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab103",
"close_price" : "3724.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:02:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3724.0",
"interval" : "1m",
"low_price" : "3720.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3720.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "1888",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab105",
"close_price" : "3724.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:03:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3725.0",
"interval" : "1m",
"low_price" : "3723.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3724.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "720",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab107",
"close_price" : "3724.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:04:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3725.0",
"interval" : "1m",
"low_price" : "3722.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3724.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "562",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab109",
"close_price" : "3722.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:05:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3724.0",
"interval" : "1m",
"low_price" : "3722.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3724.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "328",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab10b",
"close_price" : "3722.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:06:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3724.0",
"interval" : "1m",
"low_price" : "3721.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3723.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "1340",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab10d",
"close_price" : "3725.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:07:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3725.0",
"interval" : "1m",
"low_price" : "3722.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3722.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "364",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab10f",
"close_price" : "3725.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:08:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3725.0",
"interval" : "1m",
"low_price" : "3723.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3725.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "224",
"date" : null
}
{
"_id" : "5dfe24a23f5c2aaad41ab111",
"close_price" : "3723.0",
"vt_symbol" : "rb2001.SHFE",
"datetime" : "2019-12-20T21:09:00.000Z",
"exchange" : "SHFE",
"gatewayName" : "rb2001.SHFE",
"high_price" : "3725.0",
"interval" : "1m",
"low_price" : "3723.0",
"open_Interest" : "0",
"open_interest" : "0",
"open_price" : "3724.0",
"rawData" : "rb2001.SHFE",
"symbol" : "rb2001",
"time" : "rb2001.SHFE",
"volume" : "54",
"date" : null
}

上面是几条mongodb的数据 哪里有不对???

Administrator
avatar
加入于:
帖子: 4130
声望: 230

rawData、gatewayName、open_Interest

这些字段在2.0里面是不存在的,你这个是自己修改过行情录制模块?还是导入了其他什么地方的数据

Member
avatar
加入于:
帖子: 94
声望: 1

用Python的交易员 wrote:

rawData、gatewayName、open_Interest

这些字段在2.0里面是不存在的,你这个是自己修改过行情录制模块?还是导入了其他什么地方的数据

没修改vnpy2任何东西 是从其他数据源获取的字段
由于是根据vnpy1的自动数据服务来写的 所以看了下字段覆盖vnpy2就行了吧 vnpy2不该只是提取其中的部分字段吗?
vnpy2完整的字段有哪些?后面再改改

Administrator
avatar
加入于:
帖子: 4130
声望: 230

恩。。。估计这是问题来源了,2.0和1.0的数据结构比,字段以及内容有了较大的变化,请用RQData之类的数据服务获取数据吧

Member
avatar
加入于:
帖子: 94
声望: 1

用Python的交易员 wrote:

恩。。。估计这是问题来源了,2.0和1.0的数据结构比,字段以及内容有了较大的变化,请用RQData之类的数据服务获取数据吧

因为有其他免费的数据源 就不想用rqdata这个收费的了
不知道vnpy2的rqdata是怎么下载数据并上传数据库的,想参考下??

Member
avatar
加入于:
帖子: 94
声望: 1

vnpy2 Mongodb数据库的字段:
{
"_id" : ObjectId("5dfdf3bf11e4844a47618a00"),
"datetime" : ISODate("2019-12-21T08:46:00.000+0000"),
"interval" : "1m",
"symbol" : "XBTUSD",
"close_price" : 7146.5,
"exchange" : "BITMEX",
"high_price" : 7147.0,
"low_price" : 7146.5,
"open_interest" : 0.0,
"open_price" : 7147.0,
"volume" : 9.0
}
就这些吗? 没有vt_symbol字段啊

Administrator
avatar
加入于:
帖子: 4130
声望: 230

vt_symbol是在BarData中基于symbol和exchange自动生成的,想用脚本载入数据,请参考vnpy-community公众号的一篇Tick回测文章

Member
avatar
加入于:
帖子: 94
声望: 1

用Python的交易员 wrote:

vt_symbol是在BarData中基于symbol和exchange自动生成的,想用脚本载入数据,请参考vnpy-community公众号的一篇Tick回测文章

嗯嗯 根据这篇文章下载上传数据库数据成功,回测时数据加载也是正确的,数据数目也对得上
但是有个问题,为何上传的数据都在一个database中的collection中,这样虽然回测没问题,但是想通过mongodb客户端查看数据很麻烦,
还需要写一句sql语句,怎么将不同的合约代码数据放在不同的collection中,并以合约代码命名?

Administrator
avatar
加入于:
帖子: 4130
声望: 230

这个是基于ORM的数据储存模式,2.0版本中统一添加了数据库胶水层,来实现多数据库支持,这里暂时没法改了

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