金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 7936|回复: 10

调用自己值的函数

[复制链接]

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
发表于 2022-10-10 11:03 | 显示全部楼层 |阅读模式
请问哪些函数 能调用自己值

我需要 一个写法

hh = if (条件1,max( ref(hh,1),close) , ref(hh,1) );

非常感谢


回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-10-10 11:08 | 显示全部楼层
ref要移到if判断之外,参考如下:
A:ref(hh,1);
hh:=if(条件1,max(A,close),A);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
 楼主| 发表于 2022-10-10 11:14 | 显示全部楼层
技术010 发表于 2022-10-10 11:08
ref要移到if判断之外,参考如下:
A:ref(hh,1);
hh:=if(条件1,max(A,close),A);

好的 谢谢 我试试
回复

使用道具 举报

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
 楼主| 发表于 2022-10-10 11:17 | 显示全部楼层
技术010 发表于 2022-10-10 11:08
ref要移到if判断之外,参考如下:
A:ref(hh,1);
hh:=if(条件1,max(A,close),A);

HH:LOOP2(BARPOS=1,HIGH,LOOP2(BH && REF(HH,1)>REF(HH,2),MAX(REF(HH,1),HIGH),LOOP2(BH && REF(HH,1)<REF(HH,2),MIN(REF(HH,1),HIGH),HIGH))),COLORCYAN;

麻烦看一下,这个怎么写 loop2  应该没有这个函数
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-10-10 11:32 | 显示全部楼层
参考如下:
A:REF(HH,1);
B:REF(HH,2);
HH:=IF(BARPOS=1,IF(BH AND A>B,MAX(A,HIGH),IF(BH AND A<B,MIN(A,HIGH),HIGH);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
 楼主| 发表于 2022-10-10 17:31 | 显示全部楼层
技术010 发表于 2022-10-10 11:32
参考如下:
A:REF(HH,1);
B:REF(HH,2);

非常感谢老师的回复

参考如下:
A:REF(HH,1);
B:REF(HH,2);
HH:=IF(BARPOS=1,IF(BH AND A>B,MAX(A,HIGH),IF(BH AND A<B,MIN(A,HIGH),HIGH);

这个写法  A中 引用了 HH ,此时 HH 还没有定义。会报错。
我想问的 是 有没有 函数 允许 自己 调用自己 ,或者 应该 怎样写,不报错。谢谢
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-10-10 22:22 | 显示全部楼层
variable:HH=0;

需要自己事先定义一个初始值
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
 楼主| 发表于 2022-10-11 16:44 | 显示全部楼层
技术008 发表于 2022-10-10 22:22
variable:HH=0;

需要自己事先定义一个初始值

HH:=0;
A17:=REF(HH,1);
B17:=REF(HH,2);
HH:=IF(BARPOS=1,HIGH,IF(BH AND A17>B17,MAX(A17,HIGH),IF(BH AND A17<B17,MIN(A17,HIGH),HIGH)));

我试了一下,这样写 不行,麻烦老师给看看
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-10-11 16:52 | 显示全部楼层
需要用variable全局变量来定义一个初始值,这样才能取到循环判断的效果啊。不能直接定义为一个普通变量啊。你可以最后输出HH,看到HH的值啊。
VARIABLE:HH=0;
A17:=REF(HH,1);
B17:=REF(HH,2);
HH:=IF(BARPOS=1,HIGH,IF(BH AND A17>B17,MAX(A17,HIGH),IF(BH AND A17<B17,MIN(A17,HIGH),HIGH)));
X:HH;
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

90

帖子

90

积分

等级: 免费版

注册:
2021-6-4
曾用名:
 楼主| 发表于 2022-10-11 17:41 | 显示全部楼层
技术010 发表于 2022-10-11 16:52
需要用variable全局变量来定义一个初始值,这样才能取到循环判断的效果啊。不能直接定义为一个普通变量啊。 ...


BH:(HIGH>=REF(HIGH,1)&&LOW<=REF(LOW,1)) OR (HIGH<=REF(HIGH,1)&&LOW>=REF(LOW,1)),NODRAW;

variable:HH=0;

A17:REF(HH,1),NODRAW;
B17:REF(HH,2),NODRAW;

HH:=IF(BARPOS=1,HIGH,IF(BH AND A17>=B17,MAX(A17,HIGH),IF(BH AND A17<B17,MIN(A17,HIGH),HIGH)));
x3:HH;

DRAwtext(bh  ,ref(LOW,1)-5*MINDIFF(),'bh',COLORred),LINETHICK3;

谢谢老师的回复,我第一次用全局变量 , a17 b17 调用 前值  数据不对,麻烦老师给看看,谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-9-4 07:00 , Processed in 0.103454 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表