以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  高级功能研发区  (http://www.weistock.com/bbs/list.asp?boardid=5)
----  请问有什么办法清空HistoryData  (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=53375)

--  作者:wknjt
--  发布时间:2013/6/26 11:27:30
--  请问有什么办法清空HistoryData
 请教一个问题,我想把HistoryData清空后,将数据回写进HistoryData,以实现信号的重放。但是我发现一个问题,就是通过以下代码删除数据的时候,最后当天的数据都会保留下来,而删除不了,应该如何处理?
Application.ReceiveData(0)
Set History = MarketData.GetHistoryData(**,**,5)
for i = 0 to History.Count - 1
      History.RemoveAt(0)
next
Call History.SaveData(**,**,0)
运行这个代码后,去刷新对应的技术分析页面,但发现最近一天的数据仍然保留,没有完全清空。如果是5分钟线,则会保留最近一天所有的K线,重新打印History信息,数据也存在。我还采用过以下方法来测试
Application.ReceiveData(0)
Set History = MarketData.GetHistoryData(**,**,5)
for i = 0 to History.Count - 1
      History.RemoveAt(0)
      flag = History.SaveData(**,**,0)
      Application.MsgOut(flag)
next
这个时候可以看到每次保存都是成功的,但是数据还是清不空,所以想请教一下,到底如何实现能将所有数据都清空?万分感谢。

--  作者:wknjt
--  发布时间:2013/6/26 14:10:42
--  
我经过继续测试发现一个新的问题,那就是如果我在Technic上点击右键查看对应的数据,那看到的数据就是对的,没有当天的数据。但是界面上展示的数据中,就是多当天的数据,直接用MarketData.GetHistoryData获得的也是有当天的数据。这是什么原因呢?

--  作者:王锋
--  发布时间:2013/6/26 16:42:27
--  
当日数据是存放在

MinuteData 对象

中,目前还没有方法来更改这个对象的数据,后面的金字塔版本会考虑这个接口,感谢用户对金字塔的支持


--  作者:wknjt
--  发布时间:2013/6/27 10:46:59
--  
那是不是通过MarketData.GetHistoryData或者Technic.GetGridByName("Main").GetHistoryData中获取的HistoryData时,系统自动添加了MinuteData的信息?所以导致每次我虽然用History.RemoveAt清空了History,但取出来还是有当天的信息?

--  作者:王锋
--  发布时间:2013/6/27 13:41:53
--  
可以这么理解