欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 请问在逐K模式下怎么获得指标序列数据

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2264人关注过本帖树形打印复制链接

主题:请问在逐K模式下怎么获得指标序列数据

帅哥哟,离线,有人找我吗?
microsoft
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2014/5/24 15:42:20
请问在逐K模式下怎么获得指标序列数据  发帖心情 Post By:2016/11/30 15:05:21 [只看该作者]

例如在逐K模式下获得macd数值数组,谢谢了

 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2016/11/30 15:33:15 [只看该作者]

macd,是根据ema计算的,结果就是一个数据类型


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
microsoft
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2014/5/24 15:42:20
  发帖心情 Post By:2016/11/30 15:36:06 [只看该作者]

序列模式下,是一个数组啊

 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2016/11/30 15:39:49 [只看该作者]

不是说序列模式下。这个是根据函数的类型决定的



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
microsoft
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2014/5/24 15:42:20
  发帖心情 Post By:2016/11/30 15:49:18 [只看该作者]

好的,明白。

就是想在逐K模式下,将指标数组传递到vba进行计算(不是在vba使用marketdata.StkindiByData

序列模式下,传递过去的就是数组,逐k传递的是单个数值


 回到顶部
帅哥哟,离线,有人找我吗?
microsoft
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2014/5/24 15:42:20
  发帖心情 Post By:2016/11/30 18:18:36 [只看该作者]

可以再回答一下吗

marketdata.StkindiByData的效率实在的太低了,卡的用不了

800个K线,切换一下周期,延迟起码3秒以上

就像下边这么简单的代码,在副图加载macdc4_2是秒速切换的

 

   Set HistoryData = Formula.ParentGrid.GetHistoryData()
   str = "macdc4_2(" & cstr(P) & "," & cstr(S) & "," & cstr(M) & ")"
   Set Formula1 = marketdata.StkindiByData( str ,HistoryData)
   openArr = Formula1.VARDATA( "Open1" )
   highArr = Formula1.VARDATA( "high1" )
   lowArr = Formula1.VARDATA( "low1" )
   closeArr = Formula1.VARDATA( "close1" )
   macdArr = Formula1.VARDATA( "MACD1" )
   diffArr = Formula1.VARDATA( "DIFF1" )
   deaArr = Formula1.VARDATA( "DEA1" )
   macdNotDisArr = Formula1.VARDATA( "macd_not_dis1" )
   lastBdDisArr = Formula1.VARDATA( "macdDisLast1" )
   dateArr = Formula1.VARDATA( "date1" )
   timeArr = Formula1.VARDATA( "time1" )
   len1 = Formula.IndexData + 1
   instrument = Formula.ParentGrid.StockLabel
   

   set instrument = nothing
   marketdata.DestroyHistoryData
   set HistoryData = nothing
   set Formula1 = nothing


 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2016/12/1 8:26:35 [只看该作者]

关于vba的问题,你需要高级编程区咨询


编程无捷径,技巧靠积累。
 回到顶部