以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 读取历史数据的速度问题 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=49541) |
-- 作者:wsanle -- 发布时间:2013/3/11 17:34:42 -- 读取历史数据的速度问题 请教版主,我想在VBA程序中,在上根K线(如1分钟周期)走完,跳到下根K线的瞬间,以最快速度读取上根K线的收盘价和开盘价,以便判断上根K线是阴线还是阳线,据此作为开平仓的依据,我采用了以下一种方法,我请教的问题是:1、三种方法的取得数据是否是使用的一套历史数据数组(或数据库),即金字塔随行情不断动态刷新的历史数据是否是一套? 2、采用哪种方法取得上K线的开盘价和收盘价的数据速度最快?谢谢! 方法1:Call Application.ActivateFrameWithCode("Technic",“IF01”,“ZJ”,0) Set Grid = Technic.GetGridByName("Main") LastOpen=History.Open(History.Count-2)
方法2:Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0) LastOpen=History.Open(History.Count-2)
方法3:采用后台自动化预警,并设置分笔速率扫描,将监控品种设为“IF01” EXTGBDATASET(\'LastOpen\',REF(OPEN,1); EXTGBDATASET(\'LastClose\',REF(Close,1); 然后在VBA中: LastOpen=Document.GetExtData(\'LastOpen\') LastClose=Document.GetExtData(\'LastClose\')
|
-- 作者:admin -- 发布时间:2013/3/11 18:08:45 -- 如果你在VBA执行监控计算时,需要同步打开图表监控,那么第一种是最好的方案.因为直接可以利用到图表的数据 如果你在后台执行的VBA, 应该尽可能少的调用历史数据.这样可以提高读取数据加载的速度
http://www.weistock.com/bbs/dispbbs.asp?boardid=5&Id=49537 参考这里. 比如Count参数设为5 |
-- 作者:wsanle -- 发布时间:2013/3/11 19:46:59 -- 谢谢管理员。只不过还是没有完全明白,我个人觉得在VBA中使用Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0)取得历史数据,可能比从图表监控取得的历史数据会快一些,我认为图表监控必须等到一根K线刷新后,才会成为历史数据,是不是这样? 另外请教管理员,如果在后台采用Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0,5)调用历史数据,其中的5是不是表示动态缓存区中只保留最新5周期的历史数据,还是从硬盘读取最新5周期数据到缓存区? |
-- 作者:wsanle -- 发布时间:2013/3/11 19:51:05 -- 另外请问,后台采用Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0,5)设置调用历史数据的多少,是不是和工具-选项-内存保留X周期数据设置的数量是一个概念? |
-- 作者:admin -- 发布时间:2013/3/11 21:37:14 -- 是一个概念,数字是5则代表只取5个数据,这样可以减少从硬盘中加载数据的时间,提高效率 |
-- 作者:wsanle -- 发布时间:2013/3/12 10:37:11 -- 管理员,我试验了一下,Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0,5),取到的历史数据是静态数据,只有不断的执行Set History = marketdata.GetHistoryData(“IF01”,"ZJ",0,5)语句,即不断从硬盘装载历史数据,才能取到最新的历史数据。而通过Set History = Grid.GetHistoryData()取到的历史数据是因为图表K线不断刷新,所以取到的历史数据永远是最新的,是这样的吗?如是这样,那么应该用Set History = Grid.GetHistoryData()从图表取历史数据应该要快,且不耗费系统资源,是吗? |
-- 作者:马良 -- 发布时间:2013/3/12 11:06:18 -- 可以这么理解的 |