以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  多品种获取3分钟数据性能最优的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=60855)

--  作者:chenjun25825
--  发布时间:2014/1/10 15:59:18
--  多品种获取3分钟数据性能最优的问题
 之前在这个MARKETDATA_ReportNotify(ReportData)函数里面通过   
Set report1=marketdata.GetReportData(heyuetemp,markettemp)
price=report1.newprice;
来获取最新的价格,CPU的占用还不是很高,最近想通过3分钟的收盘价来平仓,过滤掉突然拉升的情形,调用了 
\'Set History=marketdata.GetHistoryData(heyuetemp,markettemp,17,[2,])
price=History.Close(History.Count-2)来获取上跟三分钟的K线的收盘价,注册了几个品种,发现CPU利用率从4%提高到50%,怎么解决这个问题,我想实时获取三分种的收盘价,怎么写性能最优。

--  作者:王锋
--  发布时间:2014/1/10 16:29:03
--  
GetHistoryData后面有参数你可以控制读取硬盘的历史数据量这样效率就高多了,默认是读取你硬盘的全部数据,当然CPU占用很大了
--  作者:chenjun25825
--  发布时间:2014/1/13 14:50:08
--  
\'Set History=marketdata.GetHistoryData(heyuetemp,markettemp,17,[2,]),我是设置获取2个数据,怎么得到的还是1000个数据呢
--  作者:chenjun25825
--  发布时间:2014/1/13 14:50:32
--  
这样写的格式有什么不对嘛?


--  作者:王锋
--  发布时间:2014/1/13 14:53:40
--  
是不对,[]帮助中表示的是可以省略的部分,你代码加上这个是不会被识别的
--  作者:chenjun25825
--  发布时间:2014/1/13 15:18:15
--  
那怎么写,我如果要获取三分钟的两个数据,怎么写 \'Set History=marketdata.GetHistoryData(heyuetemp,markettemp,17,2),调用这个输出   Application.MsgOut History.Count ,怎么不是2个数据
--  作者:王锋
--  发布时间:2014/1/13 18:05:01
--  

把你的测试代码发过来看看


--  作者:王锋
--  发布时间:2014/1/13 18:55:27
--  
发现确实有些问题,目前已经修正,请等待预期下周的升级版
--  作者:chenjun25825
--  发布时间:2014/1/16 10:44:14
--  
这个问题已经升级解决么?
--  作者:王锋
--  发布时间:2014/1/16 22:42:35
--  

下个升级版就解决了