以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 高级功能研发区 (http://222.73.7.161/bbs/list.asp?boardid=5) ---- 金字塔公式系统里使用自定义函数 (http://222.73.7.161/bbs/dispbbs.asp?boardid=5&id=158) |
-- 作者:admin -- 发布时间:2009/11/9 19:44:59 -- 金字塔公式系统里使用自定义函数 可以利用Visual Basic的优势,用来完成那些复杂逻辑以及迭代要求功能的函数,使用户不必借助DLL也可以进一步来扩充公式系统的功能。并且自定义函数的使用方法与其他函数是相同的。 示例创建一个计算CYC日收盘价移动平均线的自定义函数,CUSTOM_MA2(CYC),在"添加自定义函数"对话框上名称输"CUSTOM_MA2",在参数位置输入"CYC"后单击确定,然后在随即弹出的VBS编辑器界面上,输入下面代码: \'计算指定周期长度的收盘价均价 DataCount = 0 以上代码输入完毕后按下 Shift+F5启动VBS教本运行,然后就可以在公式编辑中使用我们刚刚创建的自定义函数了.
有关自定义函数的两种工作模式 金字塔公式系统工作两种模式,即序列和逐周期两种模式。序列模式公式系统每次刷新只会调用一次自定义函数,传递的参数数据类型有数组和常数两种,自定义函数根据自身的计算类型,返回一个数值或者一个数组。逐周期模式为从第1周期逐个周期解析公式系统,每个周期都会调用自定义函数一次,传递的参数只有数值类型,返回值也只有数值类型这一种,此时我们可以通过Formula.IndexData属性来得到当前执行到现在的周期。 序列模式由于解析时只会调用自定义函数一次,故效率是非常高的;逐周期模式,主要是为了实现具有头寸管理的交易系统而设计,可以实现我们通常的逐次加仓,多次平仓等算法,公式的编写灵活性很高,可以在公式里实现各种控制语句。 下面两个自定义公式示例,很好的说明了两种工作原理的不同:
\'逐周期模式
\'序列运行模式 大家注意到了序列模式多了一个CLOSE数组参数,在公式系统,他是这样被调用的 注意:通常自定义函数只能执行一种模式的运算,不要在序列和逐周期这两种模式下混用。 [此贴子已经被作者于2010-9-6 14:47:21编辑过]
|
-- 作者:solarhe2006 -- 发布时间:2011/5/20 1:05:16 -- [公告]上海中期北京营业部与金字塔合作 1、在公式编辑器界面中,鼠标在“自定义函数”解释定义区单击右键,然后选择“添加自定义函数”。 --- 没有找到公式编辑器,能上图吗?
建议论坛多些图。 论坛也该升级,太简陋了。
|
-- 作者:王锋 -- 发布时间:2011/5/22 16:47:46 -- 最小化公式编辑器就看到了 |
-- 作者:王锋 -- 发布时间:2016/12/19 12:43:34 -- 部分视频教程
金字塔VBA编程基础使用介绍教程 在线观看:http://v.youku.com/v_show/id_XMTY3MjE1NjY0.html 本地下载:http://www.weistock.com/video/金字塔VBA编程教程_标清.flv |