以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  VBA编程中,引用指标数据,当行情界面改变时,引用的数据不变。  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=52841)

--  作者:leechoe
--  发布时间:2013/6/6 0:38:46
--  VBA编程中,引用指标数据,当行情界面改变时,引用的数据不变。

VBA编程中,引用指标数据,当行情界面改变时,引用的数据不变。

情况如下:

我在引用股指06合约1分钟,abc这个指标里的cde数值,代码如下

Set Formula = marketdata.STKINDI("if06","zj","abc",0,0)

msgbox Formula.GetBufData("cde",100)   \'显示第101根k线上的cde指标线数值

 

结果:第一次弹出来是对的,当加载更多K线数据的时候,弹出来数据还是一样,没有变。

我希望的结果是:永远都是加载第101根K线上面的数据,加载更多数据的时候,这个值应该是变化的。希望版主耐心回答,谢谢

[此贴子已经被作者于2013-6-6 0:39:59编辑过]

--  作者:rushtaotao
--  发布时间:2013/6/6 12:10:59
--  
问题已经了解,请贴出完整代码 ,另外1点开盘会帮你测试下问题。
--  作者:王锋
--  发布时间:2013/6/6 13:34:01
--  
= marketdata.STKINDI 为后台引用方式,与图表是异步工作的,只有在调用一次marketdata.STKINDI时才进行指标计算,你可以考虑在定时器中定期来刷新这个函数就行了
--  作者:rushtaotao
--  发布时间:2013/6/6 13:47:24
--  
应该没错,此函数式从前向后计算,如果要向后计算,你可以考虑用总数-去一个固定值来取得。你这么取得话永远是数据表里序列的第101根数据