欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 报告一个数据bug,请尽快修复。2019-04-01

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2886人关注过本帖树形打印复制链接

主题:报告一个数据bug,请尽快修复。2019-04-01

帅哥哟,离线,有人找我吗?
bingying
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:44 积分:0 威望:0 精华:0 注册:2019/3/6 15:46:10
报告一个数据bug,请尽快修复。2019-04-01  发帖心情 Post By:2019/4/1 14:37:05 [显示全部帖子]

环境:阿里云服务器,金字塔python。

 

发现问题:上午python程序提示,本机j00、p00、m00等大连品种,15分钟k线数据量少于1601根。

 

调试过程:

1.通过数据管理器——整理数据——执行清理,清楚所有本地数据。

2.通过数据补充——自定义数据补充,补充所有品种连续合约近365日的5分钟数据。

3.设定基准合约为DQJ00,通过如下代码调试:

#  在这个方法中编写任何的初始化逻辑。context对象将会在你的算法策略的任何方法之间做传递。--(必须实现)
def init(context):
    # 在context中保存全局变量
    context.s1 = context.run_info.base_book_id
    close_15m = history_bars(order_book_id=context.s1,  bar_count=(1600+1),frequency='15m',fields='close')
    date_close_15m = history_bars(order_book_id=context.s1,  bar_count=(1600+1),frequency='15m',fields='datetime')
   
    print(len(close_15m))
    print(close_15m[-1])
   
    print(date_close_15m[-1])
    print(date_close_15m[-1500])

 

4.消息窗口结果:

14:26:18 > 1500
14:26:18 > 2013.5
14:26:18 > 20190401181500.0
14:26:18 > 20181219190000.0

 

只有1500根k线数据。换句话说,2018年12月19日以前的焦炭连续5分钟k线数据没有。

 

5.用同样方式测试其它大连交易所品种,棕榈连续,豆粕连续,也出现同样的问题。

用同样的方法测试螺纹连续,铜连续,白糖连续,TA连续,都没有问题

 

6.结论:可能金字塔历史数据服务器,关于大连交易所的数据出现问题。请尽快修复。


 回到顶部
帅哥哟,离线,有人找我吗?
bingying
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:44 积分:0 威望:0 精华:0 注册:2019/3/6 15:46:10
  发帖心情 Post By:2019/4/1 14:47:51 [显示全部帖子]

另外,通过打开k线图补充焦炭连续5分钟k线数据,可以补充到早于2018年12月19日的数据,但通过刚才的方式print,也只有1500根k线数据。

 回到顶部
帅哥哟,离线,有人找我吗?
bingying
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:44 积分:0 威望:0 精华:0 注册:2019/3/6 15:46:10
  发帖心情 Post By:2019/4/1 18:13:36 [显示全部帖子]

请仔细阅读我上面的叙述,并不是“由于交易所更改了交易时间”的问题。而是,金字塔的历史数据,出了问题。

 

我描述的问题本质是:只能取到截至2018年12月19日的15分钟数据,更久的数据缺失。

 

而非因近期交易所更改交易造成的。

 

请重视并尽快修复。


 回到顶部
帅哥哟,离线,有人找我吗?
bingying
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:44 积分:0 威望:0 精华:0 注册:2019/3/6 15:46:10
  发帖心情 Post By:2019/4/1 22:10:08 [显示全部帖子]

晚上又测试了一下。

 

close_15m = history_bars(order_book_id=context.s1,  bar_count=(1000),frequency='15m',fields='close'),实际上可以取到932根k线。

 

close_15m = history_bars(order_book_id=context.s1,  bar_count=(2000),frequency='15m',fields='close'),实际上可以取到1853根k线。

 

close_15m = history_bars(order_book_id=context.s1,  bar_count=(3000),frequency='15m',fields='close'),实际上可以取到2775根k线。

 

所以问题可能是这样的:python里面的history_bars语句,当期货品种的交易时间更改后,也必须更改history_bars的底层代码,使bar_count=(1000)与实际15分钟k线的数量一致。


 回到顶部