请教版主,我想在VBA程序中,在上根K线(如1分钟周期)走完,跳到下根K线的瞬间,以最快速度读取上根K线的收盘价和开盘价,以便判断上根K线是阴线还是阳线,据此作为开平仓的依据,我采用了以下一种方法,我请教的问题是:1、三种方法的取得数据是否是使用的一套历史数据数组(或数据库),即金字塔随行情不断动态刷新的历史数据是否是一套? 2、采用哪种方法取得上K线的开盘价和收盘价的数据速度最快?谢谢!
方法1:Call Application.ActivateFrameWithCode("Technic",“IF01”,“ZJ”,0)
Set Grid = Technic.GetGridByName("Main")
Set History = Grid.GetHistoryData()
LastOpen=History.Open(History.Count-2)
LastClose=History.Close(History.Count-2)
方法2:Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0)
LastOpen=History.Open(History.Count-2)
LastClose=History.Close(History.Count-2)
方法3:采用后台自动化预警,并设置分笔速率扫描,将监控品种设为“IF01”
EXTGBDATASET('LastOpen',REF(OPEN,1);
EXTGBDATASET('LastClose',REF(Close,1);
然后在VBA中:
LastOpen=Document.GetExtData('LastOpen')
LastClose=Document.GetExtData('LastClose')