请教一下: 如下代码:
Public MyXL
private StockCode(30),StockMarket(30)
public shichang
public pinzhong
Sub APPLICATION_VBAStart()
Call Application.SetTimer(10, 500)
End Sub
Sub APPLICATION_Timer(ID)
Set Report1 = marketdata.GetReportData("if11","zj")
Set Formula = marketdata.STKINDI("if11","zj","ma(5,10,20,60)",0,1) '调用中金所IF08合约的1分钟的MA移动平均线指标,参数依次是5,10,20,60
Set Formula2 = marketdata.STKINDI("if11","zj","MACD(26,12,9)",0,1) '调用中金所IF08合约的1分钟的MA移动平均线指标,参数依次是5,10,20,60
application.MsgOut "(ma3,1):" & Formula.GetBufData("ma3",1)
application.MsgOut "(MACD):" & Formula2.GetBufData("MACD",1)
application.MsgOut "最新价:" & report1.newprice
end sub
我想通过marketdata.STKINDI 读出最新的5分钟下的MACD的值,
但是通过调试值不对呀?
想请教:1:Set Formula = marketdata.STKINDI("if11","zj","ma(5,10,20,60)",0,1) '调用中金所IF08合约的1分钟的MA移动平均线指标,参数依次是5,10,20,60 我看帮助文件中 这样写的
Stkindi(Code, Market, IndiName, Co, Cyc) 关于
Co 为坐标轴类型 0交易日坐标 1自然日 2交易交易时间
这是什么意思?比如我取MA的值,或者是MACD的值 与坐标类型有什么关系?
2:
mgbox Formula.GetBufData("ma3",924) '显示第925根k线上的MA3指标线数值
这里的925,是从左数还是右边数,我要取最新的应该是 什么参数?
3:为什么
application.MsgOut "(ma3,1):" & Formula.GetBufData("ma3",1)
application.MsgOut "(MACD):" & Formula2.GetBufData("MACD",1)
取出的值都一样,尽管不正确?
谢谢!

此主题相关图片如下:捕获.jpg
1, 坐标的含义,你可以在技术分析K线图形上,时间坐标上右键鼠标后,选择不同的类型看看你就能明白
2,取最新的,Formula.GetBufData("ma3",Formula.DataSize-1)
3,你应该好好看看
Stkindi 方法
注意: 该方法返回的Formula对象将使用共享的内存缓冲区,如果你有多个品种需要转换并且同时处理,请使用数组类Array.保存转换后的Formula对象数据.
4,你的逻辑紊乱,你应该打开MACD公式,然后打开看看里面的公式的线输出都是什么变量名字