初学者的问题 MQL5 MT5 MetaTrader 5 - 页 755 1...748749750751752753754755756757758759760761762...1503 新评论 lomaxx7 2017.06.26 11:25 #7541 下午好!需要一些帮助/建议。在终端,有一个选项可以混合几个指标。在这种情况下,就有可能固定范围。 例如,CCI最小=300最大=300,RSI最小=0最大=100。是否可以在专家顾问中实现2个指标的交叉。假设CCI从下到上越过RSI => 开启一个Bay订单。这有可能吗? 还是不可能,因为这些指标的取值范围 不同。在rsi中,数值范围被限制在0到100之间,而在cci中,数值既可以是正值,也可以是负值,并且不受最大/最小值的限制。 Alexey Viktorov 2017.06.26 11:41 #7542 lomaxx7:下午好!需要一些帮助/建议。在终端,有一个选项可以混合几个指标。在这种情况下,就有可能固定范围。 例如,CCI最小=300最大=300,RSI最小=0最大=100。是否可以在专家顾问中实现2个指标的交叉。假设CCI从下到上越过RSI => 开启一个Bay订单。这有可能吗? 还是不可能,因为这些指标的取值范围 不同。在rsi中,数值范围被限制在0到100之间,而在cci中,数值既可以是正值,也可以是负值,并且不受最大/最小值的限制。如果你为此目的编写自己的iRSI,你可以从iRSI值中减去50,得到零水平的指标。还有一个问题:以这种方式混合指标有什么用? lomaxx7 2017.06.27 08:50 #7543 Alexey Viktorov:如果你为了这个目的自己写iRSI,你可以从iRSI值中减去50,得到一个零水平指标。还有一个问题:以这种方式混合指标有什么用? 谢谢你。有一些想法是需要解决的。 Vladimir M. 2017.06.27 10:02 #7544 lomaxx7:是否有可能在EA中实现跨越2个指标的功能。假设CCI从下到上穿过RSI => 开启Bay订单...这有可能吗? 还是不可能,因为这些指标的取值范围 不同。对于rsi来说,数值的范围被限制在0到100之间,而对于ci来说,数值既可以是正的,也可以是负的,而且不限于最大/最小值。 并不复杂。你可以 通过 RSI 计算CCI ,反之亦然。看一下文件。对每个指标都有解释,可以使用哪些价格。 https://www.mql5.com/ru/docs/indicators/irsi 应用价格 [in]价格使用 。它可以是任何一个价格常量ENUM_APPLIED_PRICE,也可以是其他指标的句柄。 例如,我们 在 RSI中 替代 CCI 手柄 。int OnInit() h_cci=iCCI(_Symbol, _Period, cci_ma_period, cci_applied_price); h_rsi=iRSI(_Symbol, _Period, rsi _ma_period, h_cci); Далее void OnTick() if(CopyBuffer(h_cci,0,0,to_copy, cci_buf)<=0) return(0); if(CopyBuffer(h_rsi,0,0,to_copy, rsi _buf)<=0) return(0); Далее сравниваете значения: if(cci_buf>rsi_buf) {...ваши действия; ...buy; ...sell;} else if(cci_buf<rsi_buf) {...ваши действия; ...buy; ...sell;} 这种情况下的数值范围并不重要,因为下一个振荡器已经使用了上一个振荡器的数值。 Документация по MQL5: Технические индикаторы / iRSI www.mql5.com Технические индикаторы / iRSI - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 xronx 2017.06.29 21:20 #7545 //+------------------------------------------------------------------+ class A { public: int propA; public: A(void) {propA = 15;}; ~A(void) {}; }; //+------------------------------------------------------------------+ class B: public A { public: B(void){}; ~B(void){}; }; //+------------------------------------------------------------------+ void OnStart() { B newObj; GetA(newObj); //--- //B newObjArray[3]; //GetA_Array(newObjArray); } //+------------------------------------------------------------------+ void GetA(A &obj) { Print(obj.propA); } //+------------------------------------------------------------------+ void GetA_Array(A &obj[]) { for(int i=0;i<ArraySize(obj);i++) Print(obj[i].propA); } //+------------------------------------------------------------------+如果我们取消对OnStart()中的其余几行的注释,我们会得到 "newObjArray - 参数转换不允许"。 两个问题:为什么,以及如何解决这个问题? Aleksey Vyazmikin 2017.06.29 22:47 #7546 你能告诉我如何从终端获得位置报告吗?问题是,在终端我看到的是一个正常的位置,但在Excel报告中,它被分割成几个部分,这对我来说并不方便。 Николай Никитюк 2017.06.30 15:58 #7547 你好 2017.06.30_18:11 GMT+3.论坛的行家们。我在MT5的策略 测试器中测试了我的EA。它打开和关闭交易,但似乎只在第一个条件下打开和关闭交易。所以我决定在一个模拟账户上测试该EA。然而,该EA立即从模拟账户的图表中消失了。原来它在演示账户上有一个错误:2017.06.30 18:08:17.878 Late_raw3 (GOLD,M1) array out of range in 'Cross.mqh' (18,12)。 奇怪的是,在策略测试器中没有发现这种错误。我试图寻找这个错误,但未能理解。这个问题就像它一样愚蠢。这让我非常困惑。在这种情况下,MetaQuotes的程序员会不会搞砸了?标准的Moving Average.mq5专家顾问有相同的代码(我从那里重写了它)。它在模拟账户上没有错误。但它没有被交易。我在М1上进行了交易。不过,我没有等很久。问题是什么?我将等待你的答案。期待着它。附上的是文件,虽然不是彻底的全部。18:26 GMT+3。我试着用不同的方法来改变代码,但结果有两个:要么它超出了数组,要么写出错误 "没有指标数据"。而在策略测试者的日志中,你可以看到 "超标 "是如何获得的。以第一笔交易的开盘价为准。它与第二个交易的开盘价不同。这种 "偏差"(它大于我的130分)被称为 "超调"。你也应该对MetaQuotes的程序员说 "谢谢"?你不会感到厌烦。你所做的一切都很缓慢。我打算早点完成专家顾问的工作。18:45 GMT+3。如果你需要任何澄清,请毫不犹豫地与我联系。这就是全部。18:51 GMT+3。 附加的文件: Open.mqh 4 kb Cross.mqh 2 kb vbng1spl_d1ezpw5_2017.06.30.txt 17 kb 20170630.log 23 kb x5ro0gxv0n_1e0rtpwro3fp.png 146 kb Vladimir Karputov 2017.06.30 16:45 #7548 Николай Никитюк:你好 2017.06.30_18:11 GMT+3.论坛的行家们。我在MT5的策略 测试器中测试了我的EA。它打开和关闭交易,但似乎只在第一个条件下打开和关闭交易。所以我决定在一个模拟账户上测试该EA。然而,该EA立即从模拟账户的图表中消失了。原来它在演示账户上有一个错误:2017.06.30 18:08:17.878 Late_raw3 (GOLD,M1) array out of range in 'Cross.mqh' (18,12)。 奇怪的是,在策略测试器中没有发现这种错误。我试图寻找这个错误,但未能理解。这个问题就像它一样愚蠢。这让我非常困惑。在这种情况下,MetaQuotes的程序员会不会搞砸了?标准的Moving Average.mq5专家顾问有相同的代码(我从那里重写了它)。它在模拟账户上没有错误。但它没有被交易。我在М1上进行了交易。不过,我没有等很久。问题是什么?我将等待你的答案。期待着它。附上的是文件,虽然不是彻底的全部。18:26 GMT+3。我试着用不同的方法来改变代码,但结果有两个:要么它超出了数组,要么写出错误 "没有指标数据"。而在策略测试者的日志中,你可以看到 "超标 "是如何获得的。以第一笔交易的开盘价为准。它与第二个交易的开盘价不同。这种 "偏差"(它大于我的130分)被称为 "超调"。你也应该对MetaQuotes的程序员说 "谢谢"?你不会感到厌烦。你所做的一切都很缓慢。我打算早点完成专家顾问的工作。18:45 GMT+3。如果你需要任何澄清,请毫不犹豫地与我联系。这就是全部。18:51 GMT+3。到目前为止,似乎 "rate"(文件 "Cross.mqh",第18行,光标位置12)是在全局层面的某个地方声明的--所以所有问题都归结为。"这个 "费率 "究竟是如何填写的?"。 igorbel 2017.07.03 18:16 #7549 我想计算两条曲线的交角。任务甚至不是寻找角度本身,而是检查它是锐角还是钝角。我甚至画了这个。我可以找到B的正切和C的正切。我如何知道这些切线,以确定角A是否是锐角。帮助我,我对三角学不是很在行。当然,如果没有找到角度本身--由于比例尺的不同,他们的数值是不充分的。 [删除] 2017.07.04 06:00 #7550 igorbel:我想计算两条曲线的交角。任务甚至不是寻找角度本身,而是检查它是锐角还是钝角。我甚至画了这个。我可以找到B的正切和C的正切。我如何知道这些切线来确定角A是否为锐角。帮助我,我对三角学不是很在行。当然,如果没有找到角度本身--由于比例尺的不同,他们的数值是不充分的。 要找切线,你有一个直角三角形吗? 1...748749750751752753754755756757758759760761762...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
下午好!
需要一些帮助/建议。在终端,有一个选项可以混合几个指标。在这种情况下,就有可能固定范围。
例如,CCI最小=300最大=300,RSI最小=0最大=100。
是否可以在专家顾问中实现2个指标的交叉。假设CCI从下到上越过RSI => 开启一个Bay订单。
这有可能吗?
还是不可能,因为这些指标的取值范围 不同。在rsi中,数值范围被限制在0到100之间,而在cci中,数值既可以是正值,也可以是负值,并且不受最大/最小值的限制。
下午好!
需要一些帮助/建议。在终端,有一个选项可以混合几个指标。在这种情况下,就有可能固定范围。
例如,CCI最小=300最大=300,RSI最小=0最大=100。
是否可以在专家顾问中实现2个指标的交叉。假设CCI从下到上越过RSI => 开启一个Bay订单。
这有可能吗?
还是不可能,因为这些指标的取值范围 不同。在rsi中,数值范围被限制在0到100之间,而在cci中,数值既可以是正值,也可以是负值,并且不受最大/最小值的限制。
如果你为此目的编写自己的iRSI,你可以从iRSI值中减去50,得到零水平的指标。还有一个问题:以这种方式混合指标有什么用?
如果你为了这个目的自己写iRSI,你可以从iRSI值中减去50,得到一个零水平指标。还有一个问题:以这种方式混合指标有什么用?
lomaxx7:
是否有可能在EA中实现跨越2个指标的功能。假设CCI从下到上穿过RSI => 开启Bay订单...
这有可能吗?
还是不可能,因为这些指标的取值范围 不同。对于rsi来说,数值的范围被限制在0到100之间,而对于ci来说,数值既可以是正的,也可以是负的,而且不限于最大/最小值。
并不复杂。你可以 通过 RSI 计算CCI ,反之亦然。看一下文件。对每个指标都有解释,可以使用哪些价格。
https://www.mql5.com/ru/docs/indicators/irsi
应用价格
[in]价格使用 。它可以是任何一个价格常量ENUM_APPLIED_PRICE,也可以是其他指标的句柄。
例如,我们 在 RSI中 替代 CCI 手柄 。
这种情况下的数值范围并不重要,因为下一个振荡器已经使用了上一个振荡器的数值。
如果我们取消对OnStart()中的其余几行的注释,我们会得到 "newObjArray - 参数转换不允许"。
两个问题:为什么,以及如何解决这个问题?你能告诉我如何从终端获得位置报告吗?
问题是,在终端我看到的是一个正常的位置,但在Excel报告中,它被分割成几个部分,这对我来说并不方便。
你好 2017.06.30_18:11 GMT+3.论坛的行家们。我在MT5的策略 测试器中测试了我的EA。它打开和关闭交易,但似乎只在第一个条件下打开和关闭交易。所以我决定在一个模拟账户上测试该EA。然而,该EA立即从模拟账户的图表中消失了。原来它在演示账户上有一个错误:2017.06.30 18:08:17.878 Late_raw3 (GOLD,M1) array out of range in 'Cross.mqh' (18,12)。
奇怪的是,在策略测试器中没有发现这种错误。我试图寻找这个错误,但未能理解。这个问题就像它一样愚蠢。这让我非常困惑。在这种情况下,MetaQuotes的程序员会不会搞砸了?标准的Moving Average.mq5专家顾问有相同的代码(我从那里重写了它)。它在模拟账户上没有错误。但它没有被交易。我在М1上进行了交易。不过,我没有等很久。问题是什么?我将等待你的答案。期待着它。附上的是文件,虽然不是彻底的全部。18:26 GMT+3。我试着用不同的方法来改变代码,但结果有两个:要么它超出了数组,要么写出错误 "没有指标数据"。而在策略测试者的日志中,你可以看到 "超标 "是如何获得的。以第一笔交易的开盘价为准。它与第二个交易的开盘价不同。这种 "偏差"(它大于我的130分)被称为 "超调"。你也应该对MetaQuotes的程序员说 "谢谢"?你不会感到厌烦。你所做的一切都很缓慢。我打算早点完成专家顾问的工作。18:45 GMT+3。如果你需要任何澄清,请毫不犹豫地与我联系。这就是全部。18:51 GMT+3。
你好 2017.06.30_18:11 GMT+3.论坛的行家们。我在MT5的策略 测试器中测试了我的EA。它打开和关闭交易,但似乎只在第一个条件下打开和关闭交易。所以我决定在一个模拟账户上测试该EA。然而,该EA立即从模拟账户的图表中消失了。原来它在演示账户上有一个错误:2017.06.30 18:08:17.878 Late_raw3 (GOLD,M1) array out of range in 'Cross.mqh' (18,12)。
奇怪的是,在策略测试器中没有发现这种错误。我试图寻找这个错误,但未能理解。这个问题就像它一样愚蠢。这让我非常困惑。在这种情况下,MetaQuotes的程序员会不会搞砸了?标准的Moving Average.mq5专家顾问有相同的代码(我从那里重写了它)。它在模拟账户上没有错误。但它没有被交易。我在М1上进行了交易。不过,我没有等很久。问题是什么?我将等待你的答案。期待着它。附上的是文件,虽然不是彻底的全部。18:26 GMT+3。我试着用不同的方法来改变代码,但结果有两个:要么它超出了数组,要么写出错误 "没有指标数据"。而在策略测试者的日志中,你可以看到 "超标 "是如何获得的。以第一笔交易的开盘价为准。它与第二个交易的开盘价不同。这种 "偏差"(它大于我的130分)被称为 "超调"。你也应该对MetaQuotes的程序员说 "谢谢"?你不会感到厌烦。你所做的一切都很缓慢。我打算早点完成专家顾问的工作。18:45 GMT+3。如果你需要任何澄清,请毫不犹豫地与我联系。这就是全部。18:51 GMT+3。
到目前为止,似乎 "rate"(文件 "Cross.mqh",第18行,光标位置12)是在全局层面的某个地方声明的--所以所有问题都归结为。"这个 "费率 "究竟是如何填写的?"。
我想计算两条曲线的交角。任务甚至不是寻找角度本身,而是检查它是锐角还是钝角。我甚至画了这个。我可以找到B的正切和C的正切。我如何知道这些切线,以确定角A是否是锐角。帮助我,我对三角学不是很在行。当然,如果没有找到角度本身--由于比例尺的不同,他们的数值是不充分的。
我想计算两条曲线的交角。任务甚至不是寻找角度本身,而是检查它是锐角还是钝角。我甚至画了这个。我可以找到B的正切和C的正切。我如何知道这些切线来确定角A是否为锐角。帮助我,我对三角学不是很在行。当然,如果没有找到角度本身--由于比例尺的不同,他们的数值是不充分的。