欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]为什么自定义函数不输出图形?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有7146人关注过本帖树形打印复制链接

主题:[求助]为什么自定义函数不输出图形?

帅哥哟,离线,有人找我吗?
RES00
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:35 积分:225 威望:0 精华:0 注册:2011/12/24 20:01:07
[求助]为什么自定义函数不输出图形?  发帖心情 Post By:2012/1/9 12:58:00    Post IP:58.60.36.122[只看该作者]

看了系统的自定义函数后写了下面这个(公式名称test):

C1:CU_MA1(CLOSE,15);

显示的时候为什么是一条0的直线?

请教版主和各位高手

[此贴子已经被作者于2012-1-9 13:19:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
26327756l
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:676 积分:2548 威望:0 精华:3 注册:2011/4/13 16:18:50
  发帖心情 Post By:2012/1/9 13:33:01    Post IP:58.246.57.26[只看该作者]

你的那条语句是不可以放在自定义函数里的

是公式里的语句

 自定义函数中的语句格式是VBA的语法格式

 

请仔细确认。


 回到顶部
帅哥哟,离线,有人找我吗?
RES00
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:35 积分:225 威望:0 精华:0 注册:2011/12/24 20:01:07
回复:(26327756l)你的那条语句是不可以放在自定义函...  发帖心情 Post By:2012/1/9 15:42:24    Post IP:58.60.36.122[只看该作者]

我是在新建的公式TEST中调用系统的自定义函数CU_MA1,在公式编辑框内调用,这个语句没有错误,编译通过

而且按照金字塔的说明,公式中调用自定义函数与在公式中调用系统函数是一样的,所以"C1:CU_MA1(CLOSE,5);"应该是没有问题的吧?!

为什么不显示图形?

如果上面我的调用有错,那么要显示图形,在公式编辑中应该如何调用自定义函数呢?不吝赐教!谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
26327756l
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:676 积分:2548 威望:0 精华:3 注册:2011/4/13 16:18:50
  发帖心情 Post By:2012/1/9 15:54:01    Post IP:58.246.57.26[只看该作者]

你有没有编辑你自定义的函数呢?

没有编辑的话,就不会数据,默认数据为0;

 


 回到顶部
帅哥哟,离线,有人找我吗?
RES00
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:35 积分:225 威望:0 精华:0 注册:2011/12/24 20:01:07
回复:(26327756l)你有没有编辑你自定义的函数呢?...  发帖心情 Post By:2012/1/9 15:56:36    Post IP:58.60.36.122[只看该作者]

CU_MA1函数是系统自带的自定义函数,我只是直接引用,并没有编辑

 回到顶部
帅哥哟,离线,有人找我吗?
fly
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:5082 积分:17642 威望:0 精华:6 注册:2010/7/15 9:05:58
  发帖心情 Post By:2012/1/9 16:18:15    Post IP:58.246.57.26[只看该作者]

自定义函数都建在模块Function中,该函数为后台VBA编写,先将它右键--运行--执行,

 

就可以在公式编辑里调用了,注意K线图中,X坐标上右键--仅随K线变动



金字塔—专业程序化交易量化投资平台

客户服务部

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

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2012/1/9 17:15:23    Post IP:58.246.57.26[只看该作者]

经过测试,是可以工作的,请确认你的VBA代码是否被修改过,或者你的VBA是否开启


金字塔—专业程序化软件提供商

金字塔-技术部

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

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
RES00
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:35 积分:225 威望:0 精华:0 注册:2011/12/24 20:01:07
回复:(fly)“自定义函数”都建在模块Function中,该...  发帖心情 Post By:2012/1/10 14:17:09    Post IP:58.60.37.15[只看该作者]

我想发个截图给你们看下,这个话题编辑框偏偏不能插入本地图片,你们说的问题我都没有错误,但就是输出不了

发下代码你们看,系统自己带的,不是我写的,看看有没有问题,我的版本是2.75:

'计算逐周期模式下指定周期长度的收盘价均价
Function CU_MA2(Formula,cyc)
    '得到K线数据对象
 Set History = Formula.ParentGrid.GetHistoryData()
 '若当前周期尚未到计算周期,不参与计算
 if Formula.IndexData < cyc-1 then
  CU_MA2 = 0
  exit function
 end if
 
 DataCount = 0
    for i = Formula.IndexData-cyc+1 to Formula.IndexData
     '累加收盘价
     DataCount = DataCount + history.close(i)
    next
 CU_MA2 = DataCount / cyc
End Function

'计算序列模式下指定周期长度的收盘价均价
Function CU_MA1(Formula,CLOSE,CYC)
   CU_MA1=0

    '防止公式逐周期模式时调用
    If Formula.WorkMode = 0 Then
        Exit Function
    End If

    'CLOSE数组数据长度一定会与Formula.DataSize-1相等
    DataCount = UBound(CLOSE)
    If DataCount <> Formula.DataSize-1 Then
        Exit Function
    End If

    '定义一个计算返回的数组
    Dim ResultMa
    Redim ResultMa(DataCount)

    For i = Cyc-1 To Formula.DataSize-1
        Count = 0
        For k = i-(Cyc-1) To i
            Count = Count + CLOSE(k)
        Next
        ResultMa(i) = Count / Cyc
    Next

    '返回一个计算完毕的均线数组
    CU_MA1 = ResultMa
End Function

 


 回到顶部
帅哥哟,离线,有人找我吗?
RES00
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:35 积分:225 威望:0 精华:0 注册:2011/12/24 20:01:07
回复:(fly)“自定义函数”都建在模块Function中,该...  发帖心情 Post By:2012/1/10 14:31:27    Post IP:58.60.37.15[只看该作者]

另外FLY说的X轴应该是说Y轴吧,X轴没有你说的选项


 回到顶部
帅哥哟,离线,有人找我吗?
fly
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:5082 积分:17642 威望:0 精华:6 注册:2010/7/15 9:05:58
  发帖心情 Post By:2012/1/10 14:41:10    Post IP:58.246.57.26[只看该作者]

是的Y轴,手误.

 

本地测过,可以的.

(1)

自定义函数都建在模块Function中,该函数为后台VBA编写,先将它右键--运行--执行,

 

(2)公式编辑里 新建指标

//序列计算

C1:CU_MA1(CLOSE,15);

(3)K线图中,Y坐标上右键--仅随K线变动



金字塔—专业程序化交易量化投资平台

客户服务部

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

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
总数 14 1 2 下一页