使用1分钟的数据频率,现在需要实时地接受最新的15个数据点,但是不知道如何获取。
已经有的实践如下:
(1)marketdata.GetHistoryData
首先担心无法获得当日最新的数据,其次发现根本无法得到数据;
(2)marketdata.GetMinuteData
担心得到的是分笔数据(需要1分钟数据),其次发现根本得不到数据;
(3)marketdata.
GetReportData()
实时获取最新的数据,再自己合成1分钟数据,这条路也许行得通,但是太麻烦了!!!
上面3条路哪一个行得通啊????????????????????????????????
marketdata.GetHistoryData
第一个,类型设成1分钟的,取最后的15个数据,就是最新的15根1分钟k线数据
以下是引用一亩三分地在2010-12-24 15:46:15的发言:
第一个,类型设成1分钟的,取最后的15个数据,就是最新的15根1分钟k线数据
但是根本得不到数据阿 除了最后一个数据之外都是空的
你是怎么知道只有一个数据的,请把VBA代码贴过来看看
sub mtest2()
set History = marketdata.GetHistoryData("cu00","sq",0)
'set MinuteData = marketdata.GetMinuteData("IF01","zj")
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add
msgbox history.count
for i = 1 to History.count-1
'将两条数据线插入到EXCEL第一、二列
objExcel.Cells(i+1,1).Value = History.date(History.count-i-1)
objExcel.Cells(i+1,2).Value = History.open(History.count-i-1)
objExcel.Cells(i+1,3).Value = History.high(History.count-i-1)
objExcel.Cells(i+1,4).Value = History.low(History.count-i-1)
objExcel.Cells(i+1,5).Value = History.close(History.count-i-1)
objExcel.Cells(i+1,6).Value = History.volume(History.count-i-1)
objExcel.Cells(i+1,7).Value = History.amount(History.count-i-1)
objExcel.Cells(i+1,8).Value = History.qt(History.count-i-1)
objExcel.Cells(i+1,9).Value = History.openint(History.count-i-1)
next
end sub