以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  高级功能研发区  (http://www.weistock.com/bbs/list.asp?boardid=5)
----  [求助]HoldingInfoByCode2无返回信息  (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=4701)

--  作者:wangwatercup
--  发布时间:2011/1/4 13:35:18
--  [求助]HoldingInfoByCode2无返回信息
 call order.HoldingInfoByCode2 今天上午没有返回信息,result是0,BuyHoding也是空的,也许是因为我使用的是海通期货的仿真交易帐号?

代码如下:
sub aaa()  
    dmHY="if01"        \'合约
    dmJYS="zj"        \'交易所
    Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,IDaccount)
  
    msgbox dmHY&dmJYS
    msgbox result
    msgbox BuyHoding
    msgbox SellHoding

end sub
[此贴子已经被作者于2011-1-4 13:36:27编辑过]

--  作者:wangwatercup
--  发布时间:2011/1/4 18:44:31
--  
以下是引用wangwatercup在2011-1-4 13:35:18的发言:
 call order.HoldingInfoByCode2 今天上午没有返回信息,result是0,BuyHoding也是空的,也许是因为我使用的是海通期货的仿真交易帐号?

代码如下:
sub aaa()  
    dmHY="if01"        \'合约
    dmJYS="zj"        \'交易所
    Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,IDaccount)
  
    msgbox dmHY&dmJYS
    msgbox result
    msgbox BuyHoding
    msgbox SellHoding

end sub
[此贴子已经被作者于2011-1-4 13:36:27编辑过]


找到原因了,是因为IDaccount的值无法带入表达式,改称下面就好了
  Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,"40009975")

我觉得这是一个bug,因为必须将帐户的具体名称写出来,否则用变量赋值,则不行。比如如下的代码就不行
sub aaa()  
    dmHY="if01"        \'合约
    dmJYS="zj"        \'交易所
    IDaccount="40009975"
    Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,IDaccount)
  
    msgbox dmHY&dmJYS
    msgbox result
    msgbox BuyHoding
    msgbox SellHoding
end sub
而这样的代码就可以
sub aaa()  
    dmHY="if01"        \'合约
    dmJYS="zj"        \'交易所
    Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,"40009975")
  
    msgbox dmHY&dmJYS
    msgbox result
    msgbox BuyHoding
    msgbox SellHoding
end sub

强烈要求修正这个bug,浪费了我半天的时间!!!!!!!!

[此贴子已经被作者于2011-1-4 18:46:46编辑过]

--  作者:admin
--  发布时间:2011/1/4 21:53:53
--  

应该是IDaccount变量值有问题吧,还是好好检查你的代码


--  作者:wangwatercup
--  发布时间:2011/1/5 12:40:50
--  
还是不行,Adim能否运行一下这个程序:

sub aaa()  
    dmHY="if01"        \'合约
    dmJYS="zj"        \'交易所
    IDaccount="40009975"
    Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,IDaccount)
  
    msgbox dmHY&dmJYS
    msgbox result
    msgbox BuyHoding
    msgbox SellHoding
end sub

--  作者:admin
--  发布时间:2011/1/5 21:49:35
--  
问题已经解决,感谢用户提交此问题
--  作者:wangwatercup
--  发布时间:2011/1/6 14:11:09
--  
以下是引用admin在2011-1-5 21:49:35的发言:
问题已经解决,感谢用户提交此问题

但是我今天刚刚试了一下,还是不行阿。而且
Result = Order.HoldingInfoByCode2(dmHY,dmJYS,BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,"40009465")\'取得持仓情况
返回的信息也不对,明明平仓了,还显示有持仓,但是如果重新启动vbs就没有问题了。

郁闷啊啊啊啊啊
[此贴子已经被作者于2011-1-6 14:14:40编辑过]