欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → [求助]求助代码

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2551人关注过本帖树形打印复制链接

主题:[求助]求助代码

帅哥哟,离线,有人找我吗?
michaelyjy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
[求助]求助代码  发帖心情 Post By:2016/12/21 13:53:03 [只看该作者]

在论坛上看到一个函数的例子,不知道on error resume next语句起什么作用,前面的变量定义还有可能出错吗?

function GetHoldStr(sAccount)
 dim i
 dim BuyHold
 dim BuyCost
 dim SellHold
 dim SellCost
 dim CurCode
 dim CurMarket
 
  On Error resume Next
  HoldStr=""
 HoldingCount=Order.Holding2(sAccount)
  If HoldingCount>0 then
   For i=0 to HoldingCount-1
    Call Order.HoldingInfo2(i,BuyHolding,BuyCost,BuyTodayHolding,SellHolding,SellCost,SellTodayHolding,PNL,UseMargin,Code,Market,sAccount)
    CurCode=Code
    CurMarket=Market
    BuyHold=BuyHolding
    SellHold=SellHolding
    HoldStr=HoldStr & CurCode
    if BuyHold>0 then
      HoldStr=HoldStr & ":+" & BuyHold
    end if
    if SellHold>0 then 
      HoldStr=HoldStr & ":-" & SellHold 
    end if  
    HoldStr=HoldStr & ","
   Next
   HoldStr=Left(HoldStr,len(HoldStr)-1)
  End If 

  GetHoldStr=HoldStr
End function


 回到顶部
帅哥哟,离线,有人找我吗?
michaelyjy
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2016/12/21 13:59:59 [只看该作者]

另外,前面的变量定义是否可以省略?

 回到顶部
帅哥哟,离线,有人找我吗?
michaelyjy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2016/12/21 15:24:38 [只看该作者]

另外,请问orderstatusex2事件是自带返回time变量么?


Sub ORDER_OrderStatusEx2(OrderID, Status, Filled, Remaining, Price, Code, Market, OrderType, Aspect, Kaiping,Account, AccountType)

 '账户类型 0 IB 1 CTP 2 金仕达 3其他

Dim sStatus       '成交状态 

If AccountType=0 then

sAccType="0.IB"

ElseIf AccountType=1 then

sAccType="1.CTP"

ElseIf AccountType=2 then

sAccType="2.金士达"

End if 

 

If AccountType=0 then

sStatus="FILLED"

ElseIf AccountType=1 then

sStatus="TRADEING"

lseIf AccountType=2 then

sStatus="FILLED"

End if

 

If UCase(Status)="FILLED" then  '只跟踪成交的单 

if Aspect=0 and Kaiping=0 then '买入

Call Document.SetExtString("Order-Buy-time",time)     '成交时间

Call Document.SetExtData("Order-B-Price",Price)   '成交价格

Call Document.SetExtData("Order-B-Vol",Filled)   '成交手数

Call Document.SetExtData("Order-B-OrderID",OrderID)  '成交单号

end if

      End if 
    End Sub  


 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2016/12/21 17:56:52 [只看该作者]

变量不能省略

time是VBA的函数,取自你计算机的本地时间



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
michaelyjy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2016/12/22 8:18:11 [只看该作者]

不知道on error resume next语句起什么作用,前面的变量定义还有可能出错吗?

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/12/22 9:41:04 [只看该作者]

https://zhidao.baidu.com/question/204610833.html

建议先百度下,自己运行看看效果


 回到顶部
帅哥哟,离线,有人找我吗?
michaelyjy
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2016/12/22 10:31:08 [只看该作者]

谢谢

 回到顶部