以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  GetHistoryData()问题  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=141716)

--  作者:c100010222
--  发布时间:2016/10/24 21:46:26
--  GetHistoryData()问题

例如取周线数据,set his=GetHistoryData (Code, Market,7)

然后读取数据 his.close(pos)

当第一周时,周一到周四(假设有周一)pos为0,到周五pos=1,如此类推,这样当日K线下调用该函数,上周五的收盘价就成为这周的收盘价,这样编程不好处理。

能否改为周一才将pos+1

月线和多周期的也是这样。

 


--  作者:yukizzc
--  发布时间:2016/10/25 10:47:03
--  

Set History = marketdata.GetHistoryData("if00","zj",6)
application.MsgOut History.close(1)

这边测试都是周五作为周线收盘价的啊

 


图片点击可在新窗口打开查看此主题相关图片如下:(n6f}6xj90npjav_w4_oh.png
图片点击可在新窗口打开查看


--  作者:c100010222
--  发布时间:2016/10/25 11:03:24
--  

但是下一周的周一至周四读取的还是上周五的收盘价,

我的想法是应该像跨周期调用stkindi一样,周一至周五都是周五的收盘价。


--  作者:yukizzc
--  发布时间:2016/10/25 11:13:28
--  

没明白,不是周线吗?

周线返回的就是本周周五的收盘价呀,怎么又和周一至周四有关系了,在周线下根本没法用到日线周一周四


--  作者:c100010222
--  发布时间:2016/10/25 22:16:08
--  
在日K线下调用函数
--  作者:yukizzc
--  发布时间:2016/10/26 10:10:01
--  

在日线下调用该函数,你是自定义函数放到pel中使用??

可否function的代码贴下,这边直接使用验证下呢


--  作者:c100010222
--  发布时间:2016/10/27 11:48:52
--  

Function CS03(Formula,N1)    ’N1为GetHistoryData()读取周期类型
    CS03=0
     Set grid=Formula.ParentGrid
     Label=grid.StockLabel
     Mkt=grid.Market          \'获取调用公式的市场及代码


      Set Historydt = MarketData.GetHistoryData(Label,Mkt,N1)   \'读取历史数据,N1为6时读取周线数据
     fpos=formula.indexdata  \'读取调用公式时的位置
     str=grid.Datebypos(fpos) \'获取调用公式时的日期时间
  hpos = Historydt.GetPosFromDate(str)   \'读取该日期的历史数据位置
 
  hc=historydt.close(hpos)   \'读取历史数据收盘价
 
  CS03=hc   \'或者CS03=hpos,这样可以明显看出历史数据的序数变化。

End Function

 

 

 

pel代码

 

dd:CS03(6);

 

 

 


--  作者:c100010222
--  发布时间:2016/10/27 11:51:12
--  

不知怎么发图片,

可以看到周五收盘价就发生改变,周一反而不变

历史数据序数也是这样。


--  作者:c100010222
--  发布时间:2016/10/28 8:34:50
--  

怎么没回复?

[此贴子已经被作者于2016-10-28 8:35:25编辑过]

--  作者:yukizzc
--  发布时间:2016/10/31 11:17:18
--  

情况已看到,周线以上的序号在周五时候+1了

会向上提交该问题,谢谢