Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共35 条记录, 每页显示 10 条, 页签: [1] [2][3][4]
[浏览完整版]

标题:VBA取图表的参数

1楼
黄金精算师 发表于:2016/7/11 20:37:43
你好,VBA 取图表上写的一个参数时,因为我的是套利,取不出来
sCode是合约,但是我的是套利,没有合约,这个写什么可以取到图表上的这个数据呢
    我能不能,什么都不限制,只取图表中KKK的值
程序如下



Sub RunReportData()  

sPolicyName="示范策略"
iPeriod=0
Set Formula = marketdata.STKINDI(sCode,sMarket,sPolicyName,0,iPeriod)   '取策略
iFlag=Formula.GetBufData("Flag",Formula.DataSize-1)
nFlagPrice=Formula.GetBufData("FlagPrice",Formula.DataSize-1)
iBars=Formula.GetBufData("Bars",Formula.DataSize-1)
 iKKK=Formula.GetBufData("KKK",Formula.DataSize-1)  ' 这是 读取图表策略
 Application.MsgOut "iKK:"&iKKK
End Sub
2楼
admin 发表于:2016/7/12 11:46:42
不明白你的问题描述,你是想从图表中读取公式的数值?
3楼
黄金精算师 发表于:2016/7/12 17:25:43
我是一个套利的图表,我在图表里写的一个数据,VBA想读取这个数据,但是上面的那句是没有办法读到,
他读到的,是他指定的品种,
我要的是,我写的数据,如KKK:HOLDING;这样持仓就写到KKK里面,但是,VBA并不会了到策略里的KKK

实例,运行时,KKK:HOLDING     //KKK 等于,-1
但VBA,所调用的是KKK是1,因为VBA指定了品种,他不会去取当前图表的数据
4楼
admin 发表于:2016/7/12 17:43:47

读取图表的公式数据不是你这么的用法,请参考下面的范例

 

示例:

Sub Test()
'该示例将把技术分析主图上的MA指标前两条线输出到EXCEL中,使用前请注意将K线主图打开,并显示MA指标
' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象

Set Grid = Technic.GetGridByName("Main")
Set Formula = Grid.GetFormulaByIndex(1)

'创建EXCEL对象
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add

'循环遍历得到公式线
for i = 0 to Formula.DataSize-1
'将两条数据线插入到EXCEL第一、二列
objExcel.Cells(i+1,1).Value =Formula.GetBufData("MA1",i)
objExcel.Cells(i+1,2).Value =Formula.GetBufData("MA2",i)
objExcel.Cells(i+1,3).Value =Formula.GetBufDateData(i)
next

End Sub

5楼
黄金精算师 发表于:2016/7/12 18:12:51
不明白你的问题描述,你是想从图表中读取公式的数值?
------------------------------------------------------------------------------------------
我是想取到图表策略中的数值,
     Set Formula = marketdata.STKINDI(sCode,sMarket,sPolicyName,0,iPeriod)      这一句,什么都控制了,就变成了,根据不是我真实的图表策略中的数值了
但是VBA中的取值确指定了品种, iKKK=Formula.GetBufData("KKK",Formula.DataSize-1)  ' 这是 读取图表策略    

换个说法就是,我只想取到一个图表中的一个数值,其他周期,品种,市场都不要限制我,只是图表中的数据是什么就读取出什么
 
6楼
黄金精算师 发表于:2016/7/12 18:37:15

读取图表的公式数据不是你这么的用法,请参考下面的范例

 

示例:


-----------------------------------------------------

这个例子这么复杂呀,我不会编程,有没有完整的例子给一个,

还有不明的想问一下,为什么要建EXL呀,不能直接读取吗?  像这个,Set Formula = marketdata.STKINDI(sCode,sMarket,sPolicyName,0,iPeriod)   '取策略   这里只要把合约,时间什么指定去掉去掉就行


7楼
黄金精算师 发表于:2016/7/12 18:48:18
图表策略中有一个叫全局变量的,EXTGBDATASET( , )这个VBA可以读取吗?

图表写到EXL不知道会不会影响速度什么的,能不能读取TXT文件呢,图表写出TXT文还是很容易的,只是VBA读取不会,

8楼
jinn 发表于:2016/7/13 9:46:08
excel读写都比较慢
9楼
黄金精算师 发表于:2016/7/13 17:19:04
要不,指导一下这个,EXCEL怎么创建可以吗
'创建EXCEL对象
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add
10楼
yukizzc 发表于:2016/7/17 12:39:54
excel只是范例,你不需要去关注。
只需要看这一部分就可以了,取得图表对应的公式对象,然后对这个对象取得输出值
Set Grid = Technic.GetGridByName("Main")
Set Formula = Grid.GetFormulaByIndex(1)
application.msgout  Formula.GetBufData("MA1", Formula.DataSize-1)


共35 条记录, 每页显示 10 条, 页签: [1] [2][3][4]


Powered By Dvbbs Version 8.3.0
Processed in 0.04883 s, 2 queries.