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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → FILTERX 函数在逐K线模式下不能直接在IF控制语句之内引用

   

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


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

主题:FILTERX 函数在逐K线模式下不能直接在IF控制语句之内引用

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


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
FILTERX 函数在逐K线模式下不能直接在IF控制语句之内引用  发帖心情 Post By:2019/4/26 15:11:51    Post IP:123.168.88.72[只看该作者]

错误提示:FILTERX 函数在逐K线模式下不能直接在IF控制语句之内引用

请问该怎么解决?


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190426151040.png
图片点击可在新窗口打开查看



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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/4/26 16:09:41    Post IP:180.169.30.6[只看该作者]

 定义一个变量在if外部取到它的值,然后放在if里面调用。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
m1978xz
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
  发帖心情 Post By:2019/4/26 16:35:09    Post IP:123.168.88.72[只看该作者]

感谢版主回复,但是我还没弄明白,比如下边这一段“

If fb1=0 and fb3=0 and fb5=0 and fb6 and fb7 then begin         
             pen:=s_direction*10+s_status;
              DRAWTEXT(h>0,s_czsc_low,'p'),colorwhite;
             FILTERX("p",i+1);
             DRAWTEXT(h>0,s_czsc_low,'p');
               end

第四句我理解是把之前第(i+1)根K线上输出的东西删掉,这个应该不是归零的意思吧?
比如我在前边(i+1)根K线顶部输出一个“顶”字。现在我让这个顶字不再出现。而不是归零吧。
而且在外部写一个变量,在if外部取到它的值,然后放在if里面调用。这个我不太理解怎么用。
比如应该在外部写个:pd:= FILTERX("p",i+1);
这样?然后在if中该怎么写呢?不能在其中某一行就写pd这个函数名吧?正确的格式应该是什么呢?





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


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2019/4/28 8:27:03    Post IP:180.169.30.6[只看该作者]

FILTERX(条件,作用周期)。它是改变信号,不是改变字符串的。



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
m1978xz
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
  发帖心情 Post By:2019/4/28 8:33:53    Post IP:123.168.88.72[只看该作者]

谢谢版主回复,啥叫改变信号?让对应的那个值为零?还是变成无效数?

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


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
  发帖心情 Post By:2019/4/28 8:35:46    Post IP:123.168.88.72[只看该作者]

而且这个外部调用应该怎么做?

比如在If外边写  aa:=FILTERX("p",i+1);
然后在if里写aa=1;
这样行么?还是应该用别的写法?

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


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2019/4/28 8:37:48    Post IP:180.169.30.6[只看该作者]

用法不对。第一个是条件。它只会改变条件。不会改变你要的字符串。

不是0就是1

例如:

FILTERX(CLOSE>OPEN,3)

[此贴子已经被作者于2019/4/28 8:38:01编辑过]


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
m1978xz
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
  发帖心情 Post By:2019/4/28 8:39:02    Post IP:123.168.88.72[只看该作者]

原来如此。我明白了。谢谢版主。

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


加好友 发短信
等级:论坛游侠 帖子:193 积分:0 威望:0 精华:0 注册:2018/12/18 15:40:26
  发帖心情 Post By:2019/4/28 9:04:52    Post IP:123.168.88.72[只看该作者]

版主~那这个函数应该怎么在IF外边写,之后在IF内引用?
我不太清楚这个格式怎么写对的。

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


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2019/4/28 9:18:50    Post IP:180.169.30.6[只看该作者]

很对函数必须放在if之外使用,保证其序列变量值的连续性。

然后再在判断语句中使用这个变量。



编程无捷径,技巧靠积累。
 回到顶部