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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → get_orders_id函数似乎存在重大瑕疵,请予以排查

   

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


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

主题:get_orders_id函数似乎存在重大瑕疵,请予以排查

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


加好友 发短信
等级:新手上路 帖子:38 积分:0 威望:0 精华:0 注册:2020/2/15 22:44:32
get_orders_id函数似乎存在重大瑕疵,请予以排查  发帖心情 Post By:2020/4/9 11:27:16 [只看该作者]

我使用get_orders_id函数获取订单成交情况,日志如下:

2020-04-09 10:58:35.133    订单968:buy_open QQ10002389,数量:4,价格:0.4709,submitted已报单
2020-04-09 10:58:35.148    订单968:buy_open QQ10002389,数量:4,价格:0.4709,tradeing已成交
2020-04-09 10:58:35.149    订单968:buy_open QQ10002389,数量:4,价格:0.4709,filled全部成交
2020-04-09 10:58:35.188    订单969:sell_open QQ10002391,数量:4,价格:0.0026,submitted已报单
2020-04-09 10:58:35.203    订单969:sell_open QQ10002391,数量:4,价格:0.0026,tradeing已成交
2020-04-09 10:58:35.204    订单969:sell_open QQ10002391,数量:4,价格:0.0026,filled全部成交
2020-04-09 10:58:35.234    订单970:sell_open QQ10002357,数量:4,价格:0.0009,submitted已报单
2020-04-09 10:58:35.250    订单970:sell_open QQ10002357,数量:4,价格:0.0009,tradeing已成交
2020-04-09 10:58:35.251    订单970:sell_open QQ10002357,数量:4,价格:0.0009,filled全部成交
2020-04-09 10:58:35.283    订单971:buy_open QQ10002366,数量:4,价格:0.5314,submitted已报单
2020-04-09 10:58:35.299    订单971:buy_open QQ10002366,数量:4,价格:0.5314,tradeing已成交
2020-04-09 10:58:35.299    订单971:buy_open QQ10002366,数量:4,价格:0.5314,filled全部成交

上述订单在10:58:35秒已全部成交,然后我在30秒钟后即10:59:06调用get_orders_id函数,分别使用了以下几种方法:
v=get_orders_id(id)
"订单:"+str(v.order_id)+"委托量:%d" %v.quantity +"已成交:%d" %v.filled_quantity +"未成交:%d" %v.unfilled_quantity

2020-04-09 10:59:06.002    订单:968委托量:4已成交:0未成交:4
2020-04-09 10:59:06.002    订单:969委托量:4已成交:0未成交:4
2020-04-09 10:59:06.003    订单:970委托量:4已成交:0未成交:4
2020-04-09 10:59:06.003    订单:971委托量:4已成交:0未成交:4

问题就在30秒钟之前订单明明已全部成交,而.filled_quantity获取成交数量仍然为0!

后来,我又把时间扩大到60秒,如下:
2020-04-09 11:06:41.094    订单1460:buy_open QQ10002411,数量:4,价格:0.5665,submitted已报单
2020-04-09 11:06:41.155    订单1461:sell_open QQ10002412,数量:4,价格:0.0017,submitted已报单
2020-04-09 11:06:41.176    订单1462:sell_open QQ10002357,数量:4,价格:0.0009,submitted已报单
2020-04-09 11:06:41.203    订单1460:buy_open QQ10002411,数量:4,价格:0.5665,tradeing已成交
2020-04-09 11:06:41.204    订单1460:buy_open QQ10002411,数量:4,价格:0.5665,filled全部成交
2020-04-09 11:06:41.254    订单1463:buy_open QQ10002366,数量:4,价格:0.5345,submitted已报单
2020-04-09 11:06:41.274    订单1461:sell_open QQ10002412,数量:4,价格:0.0017,tradeing已成交
2020-04-09 11:06:41.275    订单1461:sell_open QQ10002412,数量:4,价格:0.0017,filled全部成交
2020-04-09 11:06:41.322    订单1463:buy_open QQ10002366,数量:4,价格:0.5345,tradeing已成交
2020-04-09 11:06:41.323    订单1463:buy_open QQ10002366,数量:4,价格:0.5345,filled全部成交
2020-04-09 11:06:41.370    订单1462:sell_open QQ10002357,数量:4,价格:0.0009,tradeing已成交
2020-04-09 11:06:41.371    订单1462:sell_open QQ10002357,数量:4,价格:0.0009,filled全部成交

2020-04-09 11:07:42.134    订单:1460委托量:4已成交:0未成交:4下单量:4
2020-04-09 11:07:42.134    订单:1461委托量:4已成交:0未成交:4下单量:4
2020-04-09 11:07:42.135    订单:1462委托量:4已成交:0未成交:4下单量:4
2020-04-09 11:07:42.136    订单:1463委托量:4已成交:0未成交:4下单量:4

上述结果仍然.filled_quantity获取成交数量为0!

请管理员检查,是我引用函数的问题还是函数本身有瑕疵?
编程过程中,等结果!

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


加好友 发短信
等级:新手上路 帖子:38 积分:0 威望:0 精华:0 注册:2020/2/15 22:44:32
  发帖心情 Post By:2020/4/9 11:29:51 [只看该作者]

第2个例子中的“下单量:4”是我设定的一个输出,无关问题,请忽略

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/4/9 13:49:22 [只看该作者]

# 本Python代码主要用于策略交易
# 可以自己import我们平台支持的第三方python模块,比如pandas、numpy等。
from PythonApi import *



#  在这个方法中编写任何的初始化逻辑。context对象将会在你的算法策略的任何方法之间做传递。--(必须实现)
def init(context):
    # 在context中保存全局变量
    context.s1 = "RB00"   #平安银行股票
    context.n = 0


def handle_bar(context):
    if context.n ==0:
        context.idd = buy_open(context.s1, "Market",volume=10,serial_id = 1)
        context.n = 1

        
    

def exit(context):
    orr = get_orders_id (context.idd,"")
    print(orr.filled_quantity)

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/4/9 13:49:51 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:6rysk(su2fkhb$4@(~l%p2h.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/4/9 13:50:14 [只看该作者]

本地用上面的代码测试,停止策略时候去输出成交数量都是正常的

另外你的软件版本多少,是最新的5.21吗

[此贴子已经被作者于2020/4/9 13:50:35编辑过]

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


加好友 发短信
等级:新手上路 帖子:38 积分:0 威望:0 精华:0 注册:2020/2/15 22:44:32
  发帖心情 Post By:2020/4/9 14:10:54 [只看该作者]

我完全复制了楼上的代码在我本地测试,开仓正常,但退出策略时显示错误。

执行Python脚本时遇到错误。
 策略: <test1>
 运行: <策略test1>
 类型: AttributeError 
   行: 24 
 描述: 'NoneType' object has no attribute 'filled_quantity'

也就是orr = get_orders_id (context.idd,"")没有返回值,导致上述出错。

这难道是我本地金字塔设置有问题吗?

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


加好友 发短信
等级:新手上路 帖子:38 积分:0 威望:0 精华:0 注册:2020/2/15 22:44:32
  发帖心情 Post By:2020/4/9 14:25:51 [只看该作者]

我的版本是金字塔V5.21,用的是信达证券 

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/4/9 14:41:57 [只看该作者]

你测试下期货模拟看看

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


加好友 发短信
等级:新手上路 帖子:38 积分:0 威望:0 精华:0 注册:2020/2/15 22:44:32
  发帖心情 Post By:2020/4/9 15:33:24 [只看该作者]

我刚才测试的RB00,就是期货吧,显示错误。
我开通的是期权模拟,可能在期权模拟下测试期货不行吧。

我使用程序化交易只是想做期权的,麻烦程序员排查一下期权的get_orders_id函数有没有问题?我一直在测试,始终有问题。昨天还好,有几个订单的get_orders_id反馈是正常的,那几个订单从下单到查询get_orders_id相差20秒左右,我以为需要这个时间差才能让get_orders_id读出数据,所以今天测试设置的都是30秒钟后查询,不想今天使用.filled_quantity方法都不对,查的数据总是0,但账户早已全部成交。

麻烦再排查下什么情况。

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/4/9 16:21:13 [只看该作者]

信达目前版本是5.02的,你是用这个然后覆盖金字塔的5.21后去更新的?

不要这么去做,就使用信达目前的最新版本5.02,不要去用金字塔的版本和信达的混用。

然后在信达版本基础上你再运行测试下看看呢,就先测试期货,然后看下账户栏那边持仓是否有了,以及未成交委托那边是否没了。

然后停止策略时候,会去输出这个filled_quantity然后看下值呢


 回到顶部
总数 17 1 2 下一页