嗨,对不起
tj的回答:)
哦,你误解了我
我的英语太差了......对不起!
通常我知道如何用icustom()调用一个指标。
但当我试图调用LSMA趋势指标时,它总是给我一个值 "1",不管趋势到底是什么,它总是返回一个值....。"1".
所以我想,它返回的1是某种错误检查,返回的是真或假。
但我需要知道趋势是什么,必须在指标中添加一些代码,给我返回趋势值而不是错误检查值。
我上面的问题是指:当我用icustom()调用指标时,应该在指标中添加什么代码来获得趋势值而不是错误检查值。
问候HOMI
使用iCustom来获取LSMA的值。
tj的回答:)
哦,你误解了我
我的英语太差了......对不起!
通常我知道如何用icustom()调用一个指标。
但当我试图调用LSMA趋势指标时,它总是给我一个 "1 "的值,不管趋势到底是什么,它总是返回一个值....。"1".
所以我认为它返回的1是某种错误检查,会返回真或假。
但我需要知道趋势是什么,必须在指标中添加一些代码,给我返回趋势值而不是错误检查值。
我上面的问题是指:当我用icustom()调用指标时,应该在指标中添加什么代码来获得趋势值而不是错误检查值。
问候HOMI你好,homi。
我没有误解你的意思。我给了你iCustom的工作例子。
总之,这是一行代码,它将使用iCustom获得LSMA 的值。
注意:我用LSMA的颜色()。
parmeter 1: 符号 -NULL 代表当前符号。
parmeter 2: 时间框架 -0 代表当前时间 框架。
参数3:指标名称 - 这里是"LSMA in Color"。
参数4:这是LSMA的设置 -Rperiod=14。
参数5:这是LSMA的设置 -Draw4HowLongg=1500。
参数6:行数(范围从0到7) - 通常使用0。
parmeter 7: 工作栏 -0 为当前栏。
请尝试这行代码并告诉我 。
尊敬的先生,您好
我测试了一下,你的代码运行良好.....
但这并没有解决这个问题^^。
我得到了你说的回报值,但它总是相同的值,不管趋势是什么,它一直是214783647。
我搜索了指标代码中的值,有3个缓冲区,其中存放214783647的缓冲区是趋势,而不是存储在其中的值。
比如说
如果缓冲区1持有214783647意味着趋势上升,其他两个缓冲区持有类似174......
如果缓冲区2持有214783647意味着趋势下降,其他2个缓冲区持有类似174的东西......
这是否会导致问题的出现?
问候HOMI
214783647意味着有一个错误!
嗨,
我测试了一下,你的代码运行良好.....
但这并不能解决这个问题^^。
我得到了你说的回报值,但它总是相同的值,不管趋势是什么,它总是214783647。
我搜索了指标代码中的值,有3个缓冲区,其中存放214783647的缓冲区是趋势,而不是存储在其中的值。
比如说
如果缓冲区1持有214783647意味着趋势上升,其他两个缓冲区持有类似174......
如果缓冲区2持有214783647意味着趋势下降,其他2个缓冲区持有类似174的东西......
这是否会导致问题的出现?
问候HOMI你好,homi。
我认为在你的iCustom调用中存在一个错误。
无论如何,这里的代码将调用 LSMA的iCustom,以返回其3条线的值。
注1:3条线的值是相同的,因为LSMA是颜色指标(如果你想知道更多,可以问我)。
注2:214783647是一个错误。我在演示示例中包括了一些将返回相同错误的代码行,以便让你明白。
//| iCustom_Demo.mq4 |
//| Coders' Guru. |
//| https://www.forex-tsd.com |
//+------------------------------------------------------------------+
#property copyright "Coders Guru"
#property link "https://www.forex-tsd.com"
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----
Alert("Line3 on LSMA is: " + iCustom(NULL,0,"LSMA in Color",14,1500,2,0));
Alert("Line1 on LSMA is: " + iCustom(NULL,0,"LSMA in Color",14,1500,0,0));
Alert("Line2 on LSMA is: " + iCustom(NULL,0,"LSMA in Color",14,1500,1,0));
//Some mis-typed iCustom calls which will return:
//Wrong LSMA parameter
Alert("This is an error " + iCustom(NULL,0,"LSMA in Color",0,1500,0,0));
//Wrong line number
Alert("This is an error " + iCustom(NULL,0,"LSMA in Color",14,1500,3,0));
//Wrong Bar number
Alert("This is an error " + iCustom(NULL,0,"LSMA in Color",14,1500,3,counted_bars));
//----
return(0);
}
//+------------------------------------------------------------------+请帮助我!
好吧,我被这个指标打败了,笑了:)
我不能让它像我想要的那样工作
你说它是一个颜色指示器,这是什么意思?
最重要的是,我怎样才能得到它的当前状态?
我总是只能从它那里得到一些数字,这些数字看起来像是所有三行中收盘价的圆角版本,即使使用你未修改的演示(指标和演示)。
我错过了什么?
我如何将输出转换为简单的 "绿色""红色""黄色 "字符串?
问候
紧张的同胞们你好,强调一下homi
你试过演示,仍然得到错误的数字吗?
你能告诉我你得到的警报吗? 这就是我得到的(2分钟前)。
看起来和我得到的结果完全一样。
但这些数值是什么?
问候HOMI
p.s
有没有人遇到过strategybuilder不更新图表的情况?
哦,我唯一想要的是调用它并获得当前的趋势回来。
比如说 "1 "代表上升,"2 "代表下降,"3 "代表侧面。
这就是我想做的事情。
因为你的代码是正确的。
我知道我的主要问题是缺乏对该指标的了解。
所以我不能以正确的方式解释回报值。
但我找不到相关的信息。
问候HOMI
你好
首先,我必须说,这里有很多有用的信息,非常棒:D
接下来是我的问题
如果我用icustom调用它,我如何获得指标结果(或其他变量)作为回报值?
我试着分析了一些其他指标的代码,但是......没有任何区别(或者我错过了)。
那么它是如何工作的呢?
问候HOMI:)