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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 单个品种周期持仓量汇总

   

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


  共有4409人关注过本帖平板打印复制链接

主题:单个品种周期持仓量汇总

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


加好友 发短信
等级:论坛游民 帖子:274 积分:841 威望:0 精华:10 注册:2010/7/12 15:25:05
单个品种周期持仓量汇总  发帖心情 Post By:2011/1/25 16:12:25 [只看该作者]

各位计算机配置不是太好的兄弟有幅了

 

Sub lianxuchicang()
    ' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象
    Set Grid = Technic.GetGridByName("Main")
    Market = Grid.Market
    StockName = Grid.StockName
    StockLabel = Grid.StockLabel
    CycType = Grid.CycType
    lenname = len(StockName)
    name = left(StockName,2)

 

if CycType=5 then '根据自己需要修改,一般的为0、1、5
    
    '寻找该品种连续合约
    Count = MarketData.GetReportCount(market)
    for w =0 to Count-1
        Set ReportData1 = MarketData.GetReportDataByIndex(market,w)
        if right(reportData1.Label,2) ="00" and  left(reportData1.StockName,2) = name  then
        lxLabel = reportData1.Label
        lxStockName = reportData1.StockName
        'application.MsgOut lxLabel&" "&lxStockName
        end if      
    next
    '计算该市场中该品种所有合约的持仓量
    Set History = marketdata.GetHistoryData(lxLabel,market,CycType)
            for k = 0 to History.Count-1
                date1 =  History.date(k)
               if Right(ReportData1.Label,2) >= "01" And Right(ReportData1.Label,2) <= "12" and  left(reportData1.StockName,2) =

name Then
                  Set History1 = marketdata.GetHistoryData(ReportData1.Label,market,CycType)
                      for i = 0 to History1.Count-1
                         if History1.Date(i) = date1  then
                            Openint = History1.Openint(i)
                           ccl = ccl+Openint
                         end if
                     next
               end if
               History.Openint(k) = ccl
               call History.SaveData(lxLabel,market,CycType)
           next
    application.MsgOut lxLabel&" "&lxStockName&" "&"持仓更新完毕!"
else
    application.MsgOut "该周期没有数据需要更新!"
end if
End Sub

[此贴子已经被作者于2011-1-25 16:13:34编辑过]

 回到顶部