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的主力合约输入到指定的板块。
目的:达到自动筛选合约的目的。
我自己用数组存的时候,老是提示类型不对,有点郁闷。望高手指教。