以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  [讨论]机构版后台多帐户下单出错~  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=52869)

--  作者:bbking
--  发布时间:2013/6/6 16:49:42
--  [讨论]机构版后台多帐户下单出错~

 

 

ac1:=extgbstring(\'ac1\');//实际下单帐户
ac2:=extgbstring(\'ac2\');//实际下单帐户
ac3:=extgbstring(\'ac3\');//实际下单帐户
ac4:=extgbstring(\'ac4\');//实际下单帐户
ac5:=extgbstring(\'ac5\');//实际下单帐户

 


if cond then begin//
tbuy(1,p1,lmt,zt,0,ac1,\'\');
tbuy(1,p2,lmt,zt,0,ac2,\'\');
tbuy(1,p3,lmt,zt,0,ac3,\'\');
tbuy(1,p4,lmt,zt,0,ac4,\'\');
tbuy(1,p5,lmt,zt,0,ac5,\'\');
end

 

我这个开仓条件是这样的~中间5个帐户~

那几个字符外生全局变量没出错~

为啥金字塔下单下错帐户了?

ac2为随意一个没有登录的帐户~

ac1为1029那个帐户~

为啥ac2的委托发到ac1来了~

我其他品种如p09下单正常~而Y09下单就出错了~

ac2的委托到了ac1上面来了~?

 

真心怀疑金字塔外生全局变量一多就出错了~

我大概有110个外生全局变量

 


--  作者:bbking
--  发布时间:2013/6/6 17:00:06
--  


2013-06-06 09:02:45.999    【后台】L09 运行结束
2013-06-06 09:02:45.999    【后台】CU09 运行结束
2013-06-06 09:02:45.999    【后台】RB10 运行结束
2013-06-06 09:02:46.015    【后台】FG09 运行结束
2013-06-06 09:02:46.015    【后台】M09 运行结束
2013-06-06 09:02:46.015    【后台】AG12 运行结束
2013-06-06 09:02:46.015    【后台】Y09 TBuy 已成功触发下单操作 价格:7708.000000 数量:4 类型:0 账户:10290*** 品种:Y09
2013-06-06 09:02:46.015    【后台】指定了委托账户或者组: 10290***
2013-06-06 09:02:46.030    【后台】CTP组 10290*** 下单类型 1 - 1
2013-06-06 09:02:46.030    【后台】指定账户 10290*** 下单
2013-06-06 09:02:46.030    【后台】下单已发送
2013-06-06 09:02:46.030    【后台】Y09 TBuy 已成功触发下单操作 价格:7708.000000 数量:4 类型:0 账户:333 品种:Y09
2013-06-06 09:02:46.030    【后台】指定了委托账户或者组: 333
2013-06-06 09:02:46.030    【后台】下单已发送
2013-06-06 09:02:46.030    【后台】Y09 TBuy 已成功触发下单操作 价格:7708.000000 数量:8 类型:0 账户:563000** 品种:Y09
2013-06-06 09:02:46.030    【后台】指定了委托账户或者组: 56300006
2013-06-06 09:02:46.030    【后台】CTP组 563000**下单类型 1 - 1
2013-06-06 09:02:46.046    【后台】指定账户 563000**下单
2013-06-06 09:02:46.046    【后台】下单已发送
2013-06-06 09:02:46.046    【后台】Y09 TBuy 已成功触发下单操作 价格:7708.000000 数量:8 类型:0 账户:5630001** 品种:Y09
2013-06-06 09:02:46.046    【后台】指定了委托账户或者组: 5630001**
2013-06-06 09:02:46.046    【后台】CTP组 5630001** 下单类型 1 - 1
2013-06-06 09:02:46.046    【后台】指定账户 5630001** 下单
2013-06-06 09:02:46.046    【后台】下单已发送
2013-06-06 09:02:46.046    【后台】Y09 TBuy 已成功触发下单操作 价格:7708.000000 数量:4 类型:0 账户:111 品种:Y09
2013-06-06 09:02:46.046    【后台】指定了委托账户或者组: 111
2013-06-06 09:02:46.046    【后台】下单已发送
2013-06-06 09:02:46.062    【后台】Y09 运行结束
2013-06-06 09:02:46.062    【后台】RU09 运行结束
2013-06-06 09:02:46.062    【下单】Y09 价7708.000000 量4 买卖0 类型0 开平0 账户10290*** Formula 1
2013-06-06 09:02:46.062    【下单】确认报单已发送 ID=-594598492 RefID = 8089
2013-06-06 09:02:46.062    【后台】P09 运行结束
2013-06-06 09:02:46.062    【后台】L09 运行结束
2013-06-06 09:02:46.062    【后台】CU09 运行结束
2013-06-06 09:02:46.062    【后台】RB10 运行结束
2013-06-06 09:02:46.062    【后台】SRX01 运行结束
2013-06-06 09:02:46.062    【后台】CU09 运行结束
2013-06-06 09:02:46.062    【后台】M09 运行结束
2013-06-06 09:02:46.062    【后台】AG12 运行结束
2013-06-06 09:02:46.077    【后台】RU09 运行结束
2013-06-06 09:02:46.077    【后台】FG09 运行结束
2013-06-06 09:02:46.077    【后台】Y09 运行结束
2013-06-06 09:02:46.077    【下单】Y09 价7708.000000 量4 买卖0 类型0 开平0 账户10290*** Formula 1
2013-06-06 09:02:46.077    【下单】确认报单已发送 ID=-594598491 RefID = 8090

2013-06-06 09:02:46.077    【下单】Y09 价7708.000000 量8 买卖0 类型0 开平0 账户563000**Formula 1
2013-06-06 09:02:46.077    【下单】确认报单已发送 ID=-594531421 RefID = 8091
2013-06-06 09:02:46.077    【后台】P09 运行结束
2013-06-06 09:02:46.077    【后台】SRX01 运行结束
2013-06-06 09:02:46.077    【后台】M09 运行结束
2013-06-06 09:02:46.077    【后台】CU09 运行结束
2013-06-06 09:02:46.077    【后台】L09 运行结束
2013-06-06 09:02:46.093    【后台】CU09 运行结束
2013-06-06 09:02:46.093    【后台】RB10 运行结束
2013-06-06 09:02:46.093    【后台】FG09 运行结束
2013-06-06 09:02:46.093    【后台】AG12 运行结束
2013-06-06 09:02:46.093    【后台】RU09 运行结束
2013-06-06 09:02:46.093    【后台】Y09 运行结束
2013-06-06 09:02:46.093    【后台】P09 运行结束
2013-06-06 09:02:46.093    【后台】SRX01 运行结束
2013-06-06 09:02:46.093    【后台】L09 运行结束
2013-06-06 09:02:46.093    【后台】AG12 运行结束
2013-06-06 09:02:46.093    【后台】CU09 运行结束
2013-06-06 09:02:46.093    【后台】RB10 运行结束
2013-06-06 09:02:46.108    【后台】CU09 运行结束
2013-06-06 09:02:46.108    【后台】M09 运行结束
2013-06-06 09:02:46.108    【后台】Y09 运行结束
2013-06-06 09:02:46.108    【后台】RU09 运行结束
2013-06-06 09:02:46.108    【下单】Y09 价7708.000000 量8 买卖0 类型0 开平0 账户5630001** Formula 1
2013-06-06 09:02:46.108    【后台】FG09 运行结束
2013-06-06 09:02:46.108    【下单】确认报单已发送 ID=-594596882 RefID = 8092
2013-06-06 09:02:46.108    【指令】收到回报指令 ID = -594598492 RefID = 8089
2013-06-06 09:02:46.108    【指令】收到回报指令 ID = -594598491 RefID = 8090
2013-06-06 09:02:46.124    【指令】收到回报指令 ID = -594596882 RefID = 8092
2013-06-06 09:02:46.124    【指令】收到回报指令 ID = -594531421 RefID = 8091
2013-06-06 09:02:46.124    【指令】收到回报指令 ID = -594598491 RefID = 8090
2013-06-06 09:02:46.124    【指令】收到回报指令 ID = -594598491 RefID = 8090
2013-06-06 09:02:46.124    【回报】10290*** : y1309 - 已报单 4 价格:7708 开 买
2013-06-06 09:02:46.124    【回报】10290*** : y1309 - 已报单 4 价格:7708 开 买

2013-06-06 09:02:46.124    【回报】5630001** : y1309 - 已报单 8 价格:7708 开 买
2013-06-06 09:02:46.124    【回报】563000**: y1309 - 已报单 8 价格:7708 开 买
2013-06-06 09:02:46.140    【指令】收到回报指令 ID = -594596882 RefID = 8092
2013-06-06 09:02:46.140    【指令】收到回报指令 ID = -594596882 RefID = 8092
2013-06-06 09:02:46.140    【指令】收到成交回报指令 REFID = 8090
2013-06-06 09:02:46.140    【指令】收到回报指令 ID = -594598491 RefID = 8090
2013-06-06 09:02:46.140    【指令】收到成交回报指令 REFID = 8090
2013-06-06 09:02:46.140    【指令】收到回报指令 ID = -594598492 RefID = 8089
2013-06-06 09:02:46.140    【指令】收到回报指令 ID = -594598492 RefID = 8089
2013-06-06 09:02:46.140    【指令】收到成交回报指令 REFID = 8089
2013-06-06 09:02:46.155    【回报】10290*** : y1309 - 已成交 3 价格:7390 开 买
2013-06-06 09:02:46.155    【回报】10290*** : y1309 - 已成交 1 价格:7390 开 买
2013-06-06 09:02:46.155    【回报】10290*** : y1309 - 已成交 4 价格:7390 开 买
2013-06-06 09:02:46.155    【指令】收到回报指令 ID = -594531421 RefID = 8091
2013-06-06 09:02:46.155    【指令】收到回报指令 ID = -594531421 RefID = 8091
2013-06-06 09:02:46.155    【指令】收到成交回报指令 REFID = 8092
2013-06-06 09:02:46.155    【回报】5630001** : y1309 - 已成交 8 价格:7390 开 买
2013-06-06 09:02:46.155    【后台】P09 运行结束
2013-06-06 09:02:46.155    【后台】CU09 运行结束
2013-06-06 09:02:46.171    【后台】M09 运行结束
2013-06-06 09:02:46.171    【后台】L09 运行结束
2013-06-06 09:02:46.171    【后台】AG12 运行结束
2013-06-06 09:02:46.171    【后台】RB10 运行结束
2013-06-06 09:02:46.171    【后台】FG09 运行结束
2013-06-06 09:02:46.171    【后台】SRX01 运行结束
2013-06-06 09:02:46.171    【后台】CU09 运行结束
2013-06-06 09:02:46.171    【后台】RU09 运行结束
2013-06-06 09:02:46.171    【后台】Y09 运行结束
2013-06-06 09:02:46.171    【指令】收到成交回报指令 REFID = 8091
2013-06-06 09:02:46.171    【回报】563000**: y1309 - 已成交 8 价格:7390 开 买
2013-06-06 09:02:46.218    【后台】M09 运行结束
2013-06-06 09:02:46.218    【后台】SRX01 运行结束
2013-06-06 09:02:46.218    【后台】P09 运行结束
2013-06-06 09:02:46.233    【后台】CU09 运行结束
2013-06-06 09:02:46.233    【后台】CU09 运行结束
2013-06-06 09:02:46.233    【后台】RB10 运行结束

 

注意这个orderlog

我只写了一个ac1的tbuy~

而且上面也只触发了一个ac1的tbuy

实际情况是我1029这个帐户发出了两笔tbuy Y09 4手~

 

注意下单的客户端信息是weisoft~

我发现后直接用Q7把多余的4手平了~下单客户端信息是Q7~

我仔细检查了源码的确没写错~

我觉得理由怀疑是金字塔后台内部下单机制出了问题~


--  作者:jinzhe
--  发布时间:2013/6/6 17:13:35
--  
为空?为空不就是默认是当前账户了
--  作者:bbking
--  发布时间:2013/6/7 9:53:47
--  
以下是引用jinzhe在2013-6-6 17:13:35的发言:
为空?为空不就是默认是当前账户了

 

tbuy(1,p1,lmt,zt,0,ac1,\'\');

 

这个tbuy倒数第二个参数ac1才是帐户啊~最后一个为空是默认当前品种~

这个帐户下单错误的问题怎么解决?

我昨天仔细检查了~tbuy这些帐户的确没写错

但就是帐户下错单了

今天早上又出现了~

 

ac1-ac5一共5个帐户

ac1 ac3 ac4为实际登录的实盘下单帐户~

ac2 ac5是随便写个帐户如222 000之类的~

但是ac2下单的偶尔下到ac1帐户去...

ac5的单子也下到了ac4上去~

我搞不清为什么~ac3倒是暂时没出现过下错单的情况~


--  作者:jinzhe
--  发布时间:2013/6/7 10:03:11
--  
我开几个账号试试
--  作者:jinzhe
--  发布时间:2013/6/7 10:12:52
--  

ac1:=extgbstring(\'ac1\');//实际下单帐户
ac2:=extgbstring(\'ac2\');//实际下单帐户
ac3:=extgbstring(\'ac3\');//实际下单帐户
ac4:=extgbstring(\'ac4\');//实际下单帐户
ac5:=extgbstring(\'ac5\');//实际下单帐户

 

实际账户是如何赋值的?


--  作者:jinzhe
--  发布时间:2013/6/7 10:18:48
--  
还有,下单日志是如何记录的,我用了一个随便写的账号:123456,结果是不下单
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

--  作者:bbking
--  发布时间:2013/6/7 10:46:38
--  

globalvariable:aa=0;
if dynainfo(207)<92500 and aa<1 then begin//只在9点25之前存在启动初始化~之后点重新点启动不会初始化

extgbstringset(\'ac1\',\'10290****\');//帐户设置
extgbstringset(\'ac2\',\'222\');//帐户设置
extgbstringset(\'ac3\',\'5630000**\');//帐户设置
extgbstringset(\'ac4\',\'5630001**\');//帐户设置
extgbstringset(\'ac5\',\'111\');//帐户设置

aa:=aa+1;
end

ac2与ac5是随意填写的帐户~其他是实盘登录的帐户可以实际交易~

需要说明的是

1)ac3暂时没出现过下单错误的问题~所以我怀疑是ac2的单子发到ac1上~ac5的单子发到ac4上~因为5个帐户下单报单量是不一样的~

2)出现下单错误只是偶尔发生~我监控了11个品种~目前看只有Y与P两个品种出现这种情况~其他品种下单正常~但我仔细对了源码没发现有什么差异...


--  作者:bbking
--  发布时间:2013/6/7 10:47:13
--  

你写的那个是金仕达的~而且是模拟盘~

会不会与实盘有一点差异?


--  作者:jinzhe
--  发布时间:2013/6/7 11:05:41
--  
那么日志里是如何记录的?