以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp)
-- 金字塔软件问题提交 (http://222.73.7.161/bbs/list.asp?boardid=2)
---- 模块化编程 函数 CALLMYMATH 未定义 (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=172004)
|
-- 作者:maomao8643
-- 发布时间:2019/9/11 0:14:01
-- 模块化编程 函数 CALLMYMATH 未定义
运用模块化编程时报错如下:
此主题相关图片如下:callmymath.png

主程序中的调用语句如下: ATRD:#MyATR2.MyATR(6)#;
把模块MyATR2放到相同的目录、指标目录等地方都报这个错。请问要如何解决?
|
-- 作者:banzhuan
-- 发布时间:2019/9/11 9:14:27
--
是用下图的方式无法引用吗? callmymath 是怎么定义的呢 ?
此主题相关图片如下:temp.png

|
-- 作者:maomao8643
-- 发布时间:2019/9/11 9:41:08
--
ATRD:#MyATR2.MyATR(6)#;
就这句引用。
|
-- 作者:maomao8643
-- 发布时间:2019/9/11 9:51:08
--
callmymath是啥东东?我在模块中没有定义过这个啊,引用也没有用到这个啊。
|
-- 作者:banzhuan
-- 发布时间:2019/9/11 10:08:07
--
就是您一楼截图的策略编译时的报错信息啊。或者你直接贴下 MyATR2.MyATR(6) 是如何定义的,工作人员本地引用试试
|
-- 作者:maomao8643
-- 发布时间:2019/9/11 10:36:26
--
此主题相关图片如下:myatr2.png

|
-- 作者:banzhuan
-- 发布时间:2019/9/11 10:52:16
--
麻烦把代码直接复制上传一下吧
|
-- 作者:maomao8643
-- 发布时间:2019/9/11 10:58:48
--
INPUT:ZQ(6,0,19,1); MyATRt:0; if ZQ=6 then begin if strremove(STKLABEL,strlen(stklabel)-2,2)=\'AG\' then MyATRt:=41; if strremove(STKLABEL,strlen(stklabel)-2,2)=\'AL\' then MyATRt:=105; if strremove(STKLABEL,strlen(stklabel)-2,2)=\'AP\' then MyATRt:=195; if strremove(STKLABEL,strlen(stklabel)-2,2)=\'I\' then MyATRt:=16; if strremove(STKLABEL,strlen(stklabel)-2,2)=\'J\' then MyATRt:=52; end MyATR:MyATRt;
|
-- 作者:banzhuan
-- 发布时间:2019/9/11 11:09:53
--
本地核实了下,可以正常输出啊,比如AG就输出了41,AP就输出195; 您重新建个新公式名试试呢
此主题相关图片如下:temp.png

|
-- 作者:maomao8643
-- 发布时间:2019/9/11 11:54:27
--
抱歉,找到错了。是上一句漏了分号,因为中间有好多注释并且报错没在那行就有点晕了一时没看出来。谢谢了
|