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个外生全局变量
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~
我仔细检查了源码的确没写错~
我觉得理由怀疑是金字塔后台内部下单机制出了问题~
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倒是暂时没出现过下错单的情况~
ac1:=extgbstring('ac1');//实际下单帐户
ac2:=extgbstring('ac2');//实际下单帐户
ac3:=extgbstring('ac3');//实际下单帐户
ac4:=extgbstring('ac4');//实际下单帐户
ac5:=extgbstring('ac5');//实际下单帐户
实际账户是如何赋值的?
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两个品种出现这种情况~其他品种下单正常~但我仔细对了源码没发现有什么差异...
你写的那个是金仕达的~而且是模拟盘~
会不会与实盘有一点差异?