Sub usgetdominantcontracts()
On Error resume Next
Dim block
Dim market
Set block = CreateObject("stock.block")
For i = 0 To block.Count - 1
block.removeat (0)
Next
'market = Array("CB","CM","NM","NB","HZ","SG")'外盘石油、黄金、股指期货
market = Array("SQ","dq","zq","zj","IN")'添加原油
c"> c"> contractopenint = 0
For i = 0 To UBound(market)
n = marketdata.GetReportCount(market(i))
For j = 0 To n - 1
Set report1 = marketdata.GetReportDataByIndex(market(i), j)
suffixlabel = Right(report1.Label, 2)
If suffixlabel = "00" Then
block.addstock contractmarket, contractlabel
c"> c"> contractopenint00 = report1.OpenInt
End If
If (suffixlabel >= "01" And suffixlabel <= "12")and (report1.OPENINT<contractopenint00) Then
If report1.OPENINT > contractopenint00/5 Then
contractlabel = report1.Label
contractmarket = market(i)
contractopenint = report1.OPENINT
End If
End If
Next
Next
block.addstock contractmarket, contractlabel
block.tosave "自选","次主力合约"
'打开市场指定分类名称的板块
call block.open("次主力合约",0)
application.msgout Now&" 次主力合约筛选完毕"
End Sub