// 这是今天的情况,查询实际持仓错误
***168这个账户 交易过程如下:
1,2011-07-15 09:28:03.668 下空单3手
2,2011-07-15 09:41:02.411 下空单6手
3,2011-07-15 10:12:03.149 平空单3手(这次平空单的之前,检测实际持仓,还是9手) 到这里,实际持仓6手
问题出现在这里:
2011-07-15 10:19:02.909 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:6 类型:1 账户:***168 品种:IF08
2011-07-15 10:19:02.909 【后台】指定了委托账户或者组: ***168
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 1 - 1
2011-07-15 10:19:02.909 【后台】指定账户 ***168 下单
2011-07-15 10:19:02.909 【后台】实际账户 ***168 持仓 2 问题出现在这里,有6手空单,只检测到了2手而已,导致4手没平仓
以下是平仓部分本地日志
2011-07-15 10:12:03.149 【后台】IF08 TSellShort 出现信号
2011-07-15 10:12:03.149 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:3 类型:1 账户:***168 品种:IF08
2011-07-15 10:12:03.149 【后台】指定了委托账户或者组: ***168
2011-07-15 10:12:03.149 【后台】IF08 TSellShort 出现信号
2011-07-15 10:12:03.149 【后台】 金仕达 ***168 下单类型 1 - 1
2011-07-15 10:12:03.149 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:4 类型:1 账户:***809 品种:IF08
2011-07-15 10:12:03.149 【后台】指定账户 ***168 下单
2011-07-15 10:12:03.149 【后台】实际账户 ***168 持仓 9
2011-07-15 10:12:03.149 【后台】下单已发送
2011-07-15 10:12:03.149 【下单】IF08 价0.000000 量3 买卖0 类型1 开平2 账户***168 Formula 1
2011-07-15 10:12:03.149 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:12:03.149 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:12:03.149 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:12:03.149 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:12:03.181 【后台】指定了委托账户或者组: ***809
2011-07-15 10:12:03.181 【后台】 金仕达 ***809 下单类型 0 - 0
2011-07-15 10:12:03.181 【后台】 金仕达 ***809 下单类型 1 - 1
2011-07-15 10:12:03.181 【后台】指定账户 ***809 下单
2011-07-15 10:12:03.181 【后台】实际账户 ***809 持仓 13
2011-07-15 10:12:03.181 【后台】下单已发送
2011-07-15 10:12:03.181 【下单】IF08 价0.000000 量4 买卖0 类型1 开平2 账户***809 Formula 1
2011-07-15 10:12:03.181 【后台】 金仕达 ***809 下单类型 0 - 0
2011-07-15 10:12:03.196 【后台】 金仕达 ***809 下单类型 0 - 0
2011-07-15 10:12:03.196 【后台】 金仕达 ***809 下单类型 0 - 0
2011-07-15 10:12:03.372 【回报】***168 : IF08 - 正在申报 3 价格:3126.60 平仓 买入
2011-07-15 10:12:03.442 【回报】***809 : IF08 - 正在申报 4 价格:3126.60 平仓 买入
2011-07-15 10:12:03.582 【回报】***168 : IF08 已成交 1 价格:3125.6 平 买
2011-07-15 10:12:03.632 【回报】***168 : IF08 全部成交 2 价格:3125.8 平 买
2011-07-15 10:12:03.732 【回报】***809 : IF08 已成交 1 价格:3125.8 平 买
2011-07-15 10:12:03.742 【回报】***809 : IF08 已成交 1 价格:3125.8 平 买
2011-07-15 10:12:03.782 【回报】***809 : IF08 已成交 1 价格:3125.8 平 买
2011-07-15 10:12:03.812 【回报】***809 : IF08 全部成交 1 价格:3125.8 平 买
2011-07-15 10:12:08.157 【后台】IF08 TSellShort 出现信号
2011-07-15 10:12:08.157 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:1 类型:1 账户:***550 品种:IF08
2011-07-15 10:12:08.157 【后台】指定了委托账户或者组: ***550
2011-07-15 10:12:08.157 【后台】IF08 TSellShort 出现信号
2011-07-15 10:12:08.157 【后台】 金仕达 ***550 下单类型 0 - 0
2011-07-15 10:12:08.157 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:2 类型:1 账户:***190 品种:IF08
2011-07-15 10:12:08.157 【后台】 金仕达 ***550 下单类型 0 - 0
2011-07-15 10:12:08.157 【后台】 金仕达 ***550 下单类型 1 - 1
2011-07-15 10:12:08.157 【后台】IF08 运行结束
2011-07-15 10:12:08.157 【后台】指定账户 ***550 下单
2011-07-15 10:12:08.157 【后台】实际账户 ***550 持仓 5
2011-07-15 10:12:08.157 【后台】下单已发送
2011-07-15 10:12:08.157 【下单】IF08 价0.000000 量1 买卖0 类型1 开平2 账户***550 Formula 1
2011-07-15 10:12:08.157 【后台】 金仕达 ***550 下单类型 0 - 0
2011-07-15 10:12:08.157 【后台】 金仕达 ***550 下单类型 0 - 0
2011-07-15 10:12:08.188 【后台】指定了委托账户或者组: ***190
2011-07-15 10:12:08.188 【后台】 金仕达 ***190 下单类型 0 - 0
2011-07-15 10:12:08.188 【后台】 金仕达 ***190 下单类型 0 - 0
2011-07-15 10:12:08.188 【后台】 金仕达 ***190 下单类型 0 - 0
2011-07-15 10:12:08.188 【后台】 金仕达 ***190 下单类型 0 - 0
2011-07-15 10:12:08.188 【后台】 金仕达 ***190 下单类型 1 - 1
2011-07-15 10:12:08.188 【后台】指定账户 ***190 下单
2011-07-15 10:12:08.188 【后台】实际账户 ***190 持仓 7
2011-07-15 10:12:08.188 【后台】下单已发送
2011-07-15 10:12:08.188 【下单】IF08 价0.000000 量2 买卖0 类型1 开平2 账户***190 Formula 1
2011-07-15 10:12:08.381 【回报】***550 : IF08 - 正在申报 1 价格:3126.80 平仓 买入
2011-07-15 10:12:08.441 【回报】***190 : IF08 - 正在申报 2 价格:3126.80 平仓 买入
2011-07-15 10:12:08.591 【回报】***550 : IF08 全部成交 1 价格:3125.8 平 买
2011-07-15 10:12:08.661 【回报】***190 : IF08 已成交 1 价格:3125.8 平 买
2011-07-15 10:12:08.731 【回报】***190 : IF08 全部成交 1 价格:3125.8 平 买
........
........
........
........
2011-07-15 10:19:02.909 【后台】IF08 TSellShort 出现信号
2011-07-15 10:19:02.909 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:6 类型:1 账户:***168 品种:IF08
2011-07-15 10:19:02.909 【后台】指定了委托账户或者组: ***168
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 1 - 1
2011-07-15 10:19:02.909 【后台】指定账户 ***168 下单
2011-07-15 10:19:02.909 【后台】实际账户 ***168 持仓 2
2011-07-15 10:19:02.909 【后台】下单已发送
2011-07-15 10:19:02.909 【下单】IF08 价0.000000 量2 买卖0 类型1 开平2 账户***168 Formula 1
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:19:02.924 【后台】 金仕达 ***168 下单类型 0 - 0
2011-07-15 10:19:03.143 【回报】***168 : IF08 - 正在申报 2 价格:3125.80 平仓 买入
2011-07-15 10:19:03.413 【回报】***168 : IF08 全部成交 2 价格:3124.6 平 买
以下是用debugfile输出的记录,贴出供工作人员参考
2011-07-15 09:28:03.637 ***168-buyholding=0 //检查多单数量 正确
2011-07-15 09:28:13.797 ***168-buyholding=0
2011-07-15 09:28:23.953 ***168-buyholding=0
2011-07-15 09:28:34.062 ***168-buyholding=0
2011-07-15 09:28:44.233 ***168-buyholding=0
2011-07-15 09:28:54.357 ***168-buyholding=0
2011-07-15 09:41:02.411 ***168-buyholding=0
2011-07-15 09:41:17.627 ***168-buyholding=0
2011-07-15 09:41:32.852 ***168-buyholding=0
2011-07-15 09:41:48.062 ***168-buyholding=0
2011-07-15 10:12:03.149 ***168-sellholding=9 //检查空单数量 正确
2011-07-15 10:12:09.191 ***168-sellholding=2 //检查空单数量 错误 平空3手成交,这里应该是6
2011-07-15 10:12:14.281 ***168-sellholding=2
2011-07-15 10:12:20.365 ***168-sellholding=2
2011-07-15 10:12:26.449 ***168-sellholding=2
2011-07-15 10:12:32.518 ***168-sellholding=2
2011-07-15 10:12:37.588 ***168-sellholding=2
2011-07-15 10:12:42.658 ***168-sellholding=2
2011-07-15 10:12:47.743 ***168-sellholding=2
2011-07-15 10:12:53.827 ***168-sellholding=2
2011-07-15 10:12:59.911 ***168-sellholding=2
2011-07-15 10:19:07.924 ***168-sellholding=4 //6手平仓单,应该全平的。但只检查到2手,所以只平了2手,还剩4手 正确
2011-07-15 10:19:23.137 ***168-sellholding=4
2011-07-15 10:19:38.363 ***168-sellholding=4
2011-07-15 10:19:53.557 ***168-sellholding=4
2011-07-15 10:20:03.759 ***168-sellholding=4
2011-07-15 10:20:09.841 ***168-sellholding=4
2011-07-15 10:20:19.991 ***168-sellholding=4
2011-07-15 10:20:30.131 ***168-sellholding=4
2011-07-15 10:20:40.255 ***168-sellholding=4
2011-07-15 10:20:50.411 ***168-sellholding=0
2011-07-15 10:52:03.283 ***168-buyholding=9
2011-07-15 10:52:13.417 ***168-buyholding=6
2011-07-15 10:52:23.557 ***168-buyholding=6
2011-07-15 10:52:33.712 ***168-buyholding=6
2011-07-15 10:52:43.852 ***168-buyholding=6
2011-07-15 10:52:53.977 ***168-buyholding=6
还有2个情况:
1,没有获取正确持仓,不仅存在于金士达平台,可能也存在于CTP平台。
2,tsellholdingex('帐号','',1)的取值都是采用正数(或者0)吧。有时用debugfile的输出结果为"负数"
你都会用后台了还用tsellholdingex函数做持仓数值?
干嘛不用虚拟持仓?
难道你后台就一个系统?
建议后台用户不要用多帐户下单的功能~
最后直接在程序里面写死下单的帐户与数量~用虚拟持仓~
我的后台多帐户操作没出现过问题
我的图表多帐户下单经常出问题~(因为没办法写死)
平均每周至少出现一次...
不是污蔑金字塔...
有些问题用户不要为自己找麻烦得自己想办法解决...
bbking,弄个您用虚拟持仓的例子上来,让俺学习学习,先谢谢!
bbking兄,你没理解。不是写死不写死的问题
比如目前持仓6手空单,现在程序发出平空6手,在下平仓单之前,金字塔会检测一下目前账户的实际持仓,可是由于检测错误,实际上只平了2手
明白了吗?
2011-07-15 10:19:02.909 【后台】IF08 TSellShort 已成功触发下单操作 价格:0.000000 数量:6 类型:1 账户:***168 品种:IF08
2011-07-15 10:19:02.909 【后台】指定了委托账户或者组: ***168
2011-07-15 10:19:02.909 【后台】 金仕达 ***168 下单类型 1 - 1
2011-07-15 10:19:02.909 【后台】指定账户 ***168 下单
2011-07-15 10:19:02.909 【后台】实际账户 ***168 持仓 2 // 这里实际是6手
2011-07-15 10:19:02.909 【后台】下单已发送
2011-07-15 10:19:02.909 【下单】IF08 价0.000000 量2 买卖0 类型1 开平2 账户***168 Formula 1
bbking,弄个您用虚拟持仓的例子上来,让俺学习学习,先谢谢!
比如目前持仓6手空单,现在程序发出平空6手,在下平仓单之前,金字塔会检测一下目前账户的实际持仓,可是由于检测错误,实际上只平了2手
比如这类问题可能是金字塔调用CTP持仓的函数有了问题~这个可能是金字塔本身的问题也可能是CTP的问题~也可能是行情变动中一瞬间什么什么的问题...
反正不要给自己找这类麻烦~直接用个外生全局变量做虚拟持仓~另外设置个下单参数~控制每次下单的量~这些除了不需要用到tsellholdingex这类函数之外
还有个好处~可以多系统操作同一个品种而不冲突...
虚拟持仓的例子很多~你随便在论坛上找一下就知道了...
信息返回有遗漏或者顺序颠倒等情况 你可以仔细去检查日志,认真看看是否有遗漏?看看是否有顺序颠倒。每一个成交回报都是存在的。
或者你说人家有遗漏或者顺序颠倒,可以拿出证据
用户之前是否有任何的平仓挂单。 这个你不用检查了。我亲眼所见。其实从日志本身你也可以看出来。有任何下单,日志里都会有体现。
那就是用户在用老的金字塔版本没用最新的2.58,否则那就见鬼了.
此外,金仕达的详细成交回报的细节内容金字塔的日志不会记录,如果用户已经是最新的2.58版,那就一定是与成交回报的返回信息数量和顺序上有误有关