以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  高级功能研发区  (http://www.weistock.com/bbs/list.asp?boardid=5)
----  [求助]VBA中自定义函数中怎么找到设置参数的位置呢?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=149781)

--  作者:NaturalLaw
--  发布时间:2017/3/28 15:37:19
--  [求助]VBA中自定义函数中怎么找到设置参数的位置呢?

请截图指教如下疑问:

1."添加自定义函数"对话框——这个怎么能找到?
2.在参数位置输入"CYC"后单击确定——怎么能找到输入参数的位置呢?

自定义函数的格式

每个自定义函数都会有一个Formula对象,即使没有参数的自定义函数也至少有这么一个对象参数存在。每次公式系统执行遇到自定义函数的时候,会不断的依次调用它,直至整个公式解释完毕。

示例

创建一个计算CYC日收盘价移动平均线的自定义函数,CUSTOM_MA2(CYC),"添加自定义函数"对话框上名称输"CUSTOM_MA2",在参数位置输入"CYC"后单击确定,然后在随即弹出的VBS编辑器界面上,输入下面代码:

\'计算指定周期长度的收盘价均价

Function CUSTOM_MA2(Formula,cyc)
    \'得到K线数据对象

Set History = Formula.ParentGrid.GetHistoryData()

\'若当前周期尚未到计算周期,不参与计算

if Formula.IndexData < cyc-1 then  //ma(close,10)

 CUSTOM_MA2 = 0

  exit function

end if

DataCount = 0    

 for i = Formula.IndexData-cyc+1 to Formula.IndexData

 \'累加收盘价

     DataCount = DataCount + history.close(i)

    Next

CUSTOM_MA2 = DataCount / cyc

End Function

以上代码输入完毕后按下 Shift+F5启动VBS教本运行,然后就可以在公式编辑中使用我们刚刚创建的自定义函数了.  


--  作者:yukizzc
--  发布时间:2017/3/28 16:08:33
--  

http://www.weistock.com/WeisoftHelp/visualbasiczidingyihanshu.htm

都有


--  作者:NaturalLaw
--  发布时间:2017/3/28 16:09:55
--  
“函数”解释定义区 在什么位置呢?
--  作者:NaturalLaw
--  发布时间:2017/3/28 16:29:36
--  
疑问没有解决,请大师继续帮助啊
--  作者:NaturalLaw
--  发布时间:2017/3/28 16:32:24
--  
1、在公式编辑器界面中,鼠标在“函数”解释定义区单击右键,然后选择“添加自定义函数”。

找不到上面所说的位置啊,在哪里啊?找啊找啊,找不到

--  作者:yukizzc
--  发布时间:2017/3/28 16:34:55
--  

你有用过pel吗?

如果用过应该知道公式编写模型的界面吧,在编辑区打开函数列表


--  作者:NaturalLaw
--  发布时间:2017/3/28 17:06:35
--  
老师,我用过pel,但我还是找不到啊,请截图说明一下吧,谢谢
--  作者:NaturalLaw
--  发布时间:2017/3/28 17:08:30
--  
按照您的指示,找啊找啊,找的好累,但就是找不到啊,请截图指明吧,谢谢
--  作者:NaturalLaw
--  发布时间:2017/3/28 17:16:25
--  
我的天啊,终于找到了,你们金字塔公司就不能把教程写清楚点啊????????!!!!!!!!!
在"公式编辑器"里的"查看"菜单里的"函数列表"菜单_或直接按F6,在函数列表里有"自定义函数"

--  作者:yukizzc
--  发布时间:2017/3/29 8:52:07
--  

这个是属于基本pel查找函数列表的范畴,一般参加金字塔网校培训的新人,我们都是会重点讲解这一部分的

你对pel的函数查找不知道,那可能你先天有经验所以一些基础的使用上没有学习吧