以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 持仓量返回为何不准确? (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=7880) |
-- 作者:jimmyiii -- 发布时间:2011/9/5 17:46:32 -- 持仓量返回为何不准确? 目前使用后台程序交易,大致是8-9秒钟的轮询。
程序是根据持仓量的查询结果计算下单手数并完成下单。 但是发生了好几次,下单成功且成交以后, 下一次轮询时返回的持仓数量和实际持仓数量不一致,导致了再一次的下单。
根据程序的逻辑应该是不会发生这种情况。 而且这种情况一天基本会发生一到2次, 不知是什么原因?
以下是查询持仓的语句:acstr是帐号变量。
tb:=tbuyholdingex(acstr,\'\',1);
照理说这个运行后hold应该是当前账户当前品种的实际持仓量。 可是会发生一个下单成交后, 下一次轮询查询持仓返回数不正确。 以下是今天的一个调试输出结果。 请不吝指教。 2011-09-05 10:14:47.771 28238 //帐号id
2011-09-05 10:14:56.768 28238 //帐号id 2011-09-05 10:14:56.806 P1=2 //应有仓位, 2多
不知以上的表达是否够清楚,能否找出问题所在!
|
-- 作者:王锋 -- 发布时间:2011/9/5 17:54:07 -- 你用的多帐户系统? 另外告知所用金字塔版本 |
-- 作者:王锋 -- 发布时间:2011/9/5 17:55:12 -- 此外,你给出的资料估计没人能看懂,可否将交易记录完整发出? |
-- 作者:jimmyiii -- 发布时间:2011/9/5 18:00:35 -- 使用的专业版v2.64. 目前使用多帐号系统对不同帐号进行下单。
请问需要怎样的交易记录?
上面描述的这段日志就是对应这儿的2笔交易, 47秒平了2多, 然后54秒又开了2多。 |
-- 作者:王锋 -- 发布时间:2011/9/5 18:02:09 -- 你自己记录的日志不能排除是你自身的BUG导致。 金字塔的完整下单记录需要手工开启记录。 交易菜单-》下单设置-》程序化交易-》记录下单日志 |
-- 作者:jimmyiii -- 发布时间:2011/9/5 18:07:21 -- 今天没有开启日志记录, 明天可以记录一下然后发出来,希望不要对下单造成影响。
另外这种情况不是每一次都发生, 基本的下单都正常。偶有这种情况发生, 仅根据调试的输出,目前确实无法确定哪里出的问题。
但是有一点确实是可以肯定,在出问题的时候, tb:=tbuyholdingex(acstr,\'\',1); 这句语句返回的数字确实是与我的实际持有多单数量不符合。 |
-- 作者:王锋 -- 发布时间:2011/9/5 18:11:43 -- 从你反馈的情况来看,多帐号情况下下单过程比较繁琐,是不是某个帐户下单后没有成交,下次轮询后发现未成交而又再次下单的。 |
-- 作者:jimmyiii -- 发布时间:2011/9/5 18:14:39 -- 但是tbuyholdingex(acstr,\'\',1) 这句语句不是返回当前账户当前品种的多单持仓量吗?而且在8,9秒轮询后,之前的市价单是一定成交了的。不太理解怎么会会返回一个负数啊。 |
-- 作者:QJ -- 发布时间:2011/11/11 18:57:45 -- 我今天用后台模拟交易和楼主遇到了同样的问题,使用的是一个账户,也是tbuyholdingex的返回值不正确。模拟的交易软件里显示的持仓和实际持仓有时都不一致, 我的保证金金额都是对的,就是持仓显示不正确。比如没有持仓的时候,但软件里显示有持仓,这时就提示没有可平的仓位。 有没有办法可以实时刷新持仓情况。能介绍一下金字塔是如何从账户取到实际持仓的吗? |
-- 作者:QJ -- 发布时间:2011/11/11 19:02:30 -- 我用的是20秒轮询,市价成交。盯着看已经成交了,但是持仓栏的数据就是错的。 不用程序化交易试了试,也会出现持仓显示的不正确。 [此贴子已经被作者于2011-11-11 19:02:51编辑过]
|