以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 高级功能研发区 (http://www.weistock.com/bbs/list.asp?boardid=5) ---- 每次登陆软件时筛选全部市场的主力合约到指定的板块 (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=2330) |
-- 作者:明心 -- 发布时间:2010/8/1 14:32:24 -- 每次登陆软件时筛选全部市场的主力合约到指定的板块 Sub zhuli()
Dim MaxCode Dim MaxVolume \'得到市场所有品种 Count = MarketData.GetReportCount("ZQ") For i = 0 To Count-1 Set Report1 = MarketData.GetReportDataByIndex("ZQ",i) \'只处理SR合约 if Left(Report1.Label,2) = "SR" Then \'只处理有效合约 if Right(Report1.Label,2) >= "01" And Right(Report1.Label,2) <= "12" Then If Report1.Volume > MaxVolume Then MaxCode = Report1.Label MaxVolume = Report1.Volume End if end if End if Next \'显示成交量最大得合约 MsgBox MaxCode End Sub
大概的想法是:每天登陆软件后,筛选全部市场的主力合约到指定的板块(可以自己定义的板块也可以是系统原来的板块) 我自己的想法是在这个基础上稍微修改一下,但我自己的VBA基础不好,就贴出思路,请高手帮忙。 第一步:建立二维数组市场和对应的品种存入。如:数组1(市场,品种) 第二步:筛选出所有市场所有品种的主力合约存入数组。如:数组2(市场,主力合约) 第三步:把数组2的主力合约输入到指定的板块。 目的:达到自动筛选合约的目的。 |
-- 作者:明心 -- 发布时间:2010/8/1 14:33:57 -- 我自己用数组存的时候,老是提示类型不对,有点郁闷。望高手指教。 |
-- 作者:admin -- 发布时间:2010/8/2 15:05:07 -- 输出到板块中,请参考外部对象中的Block 对象 |