初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1033

 
Roman Kutemov:
是的,是的。没有必要让生活复杂化))。
在mt4之后,根本就很难进场。

最主要的是不要关闭你的头脑,不要使用现成的解决方案。而一切都会成功。否则,你将不可避免地进入乐高程序员的行列。

 
Alexey Viktorov:

最主要的是要保持头脑清醒,不要使用现成的解决方案。而且一切都会顺利进行。否则,过渡到lego-programmers的类别是不可避免的。

恐怕连你自己都无法通过最初的贸易检查,由你自己决定。因此,该建议值得商榷。

 
fxsaber:

恐怕连你自己都无法通过最初的贸易检查,由你自己决定。因此,该建议值得商榷。

注意:我没有说过一个关于你的代码的字。而你编造了 "初始贸易检查 "作为回应,那是什么,你用它吃什么?我一直说,也将一直说,不应该使用现成的别人的解决方案,否则就不可避免地过渡到乐高程序员的范畴。

 
Alexey Viktorov:

注意:我没有说过一个关于你的代码的字。

同样地。在MT5的某些地方,你必须要有很强的能力才能自己写。

而你编造了 "初始贸易检查 "作为回应,那是什么,你用它吃什么?

这里是 关于它的。

我总是说,并将永远说,一个人不应该使用现成的其他人的解决方案,否则,过渡到乐高-程序员的类别是不可避免的。

建议从头开始编写同样的AlgLib是不正确的。乐高往往是一件好事。

Обсуждение статьи "Библиотека для простого и быстрого создания программ для MetaTrader (Часть V). Классы и коллекция торговых событий, отправка событий в программу"
Обсуждение статьи "Библиотека для простого и быстрого создания программ для MetaTrader (Часть V). Классы и коллекция торговых событий, отправка событий в программу"
  • 2019.04.11
  • www.mql5.com
Опубликована статья Библиотека для простого и быстрого создания программ для MetaTrader (Часть V...
 
Alexey Viktorov:

我一直说,并将永远说,你不应该使用现成的其他人的解决方案,否则,过渡到乐高-程序员的范畴是不可避免的。

阅读和使用其他人的软件解决方案的能力在程序员的事业中总是一个加分项。

和重新发明自己的自行车是浪费时间和自欺欺人,"我的解决方案是正确的!"。

HH:你总是使用别人现成的解决方案,从MQL内置函数开始,到最后你总是复制那些书籍(文章)作者的编程逻辑,从他们那里开始学习编程语言。

ZS:https://www.mql5.com/ru/code/25166, 你是一个乐高的程序员!

#include <Trade\Trade.mqh>

CTrade trade;
Советник 4UJ
Советник 4UJ
  • www.mql5.com
Рекомендаций по валютной паре нет. Используемые индикаторы: Простая скользящая средняя с периодом 48 — SMA(48). Индикатор ATR с периодом 7 и MA по ценам ATR с периодом 30 Условия для покупок: 1. Цена находится выше скользящей средней. 2. Индикатор ATR пересекает свою скользящую среднюю снизу вверх. 3. Как только сформируется первая медвежья...
 
Vitaly Muzichenko:

然后问题就会消失。

你也可以指定数组的大小,在这里是1个元素

谢谢你的答复。

似乎问题已经消失了,但对我来说主要问题是错误

Failed to copy data from the handle_Regressor indicator, error code 4806

当EA已经正常工作了半天时,调用该指标时出现的问题。

EA中调用指标 的代码

//+------------------------------------------------------------------+
//|значение Regressor Номера буферов: 0 - Up, 1 - Center, 2 - Low    |
//+------------------------------------------------------------------+
double Regressorf(int Bufer,int index)
  {
   double MA[1];
   ResetLastError();
   if(CopyBuffer(handle_Regressor,Bufer,index,1,MA)<0)
     {
      Print("handle_Regressor: Bufer=",Bufer," index=",index);
      PrintFormat("Failed to copy data from the handle_Regressor indicator, error code %d",GetLastError());
      return(0.0);
     }
     Print("handle_Regressor: Bufer=",Bufer," index=",index, " arr=",MA[0]);
   return MA[0];
  }

我甚至不知道该怎么做,指标没有报告任何错误,我也搞不清楚哪里出了问题!

这个错误只有在真实数据中才会出现--我在测试器中没有看到它。

P.S. 在日志中发现了一个指标的错误--我现在要做一些修改,看看是否有其他错误。
 
Igor Makanu:

阅读和使用其他人的软件解决方案的能力总是在程序员的业力中占优势。

不要走极端。我不是在说阅读和理解别人的代码,尤其是标准库的 代码。虽然它是如此拥挤在那里...

如果我没有出生在我之前,我可能会写一个供个人使用的贸易图书馆。

 

fxsaber:

往往是好的。

往往不是绝对的,你甚至在没有必要的地方宣传你的手艺,没有意识到你的代码比中国的字母表更难读。这就是对话的结束。

 

你好,谁能清楚地解释一下什么是MQL5中的 "Plots"? 它们 与缓冲区没有关系,但indicator_plots 属性创建了一个类似缓冲区的绘图对象属性 列表。当使用MQL4工具时,很明显是参考了一个特定的绘图对象,现在有一个新的预处理器属性indicator_plots,定义了不清楚的数量。

 
The_Sheikh:

你好,谁能清楚地解释一下什么是MQL5中的 "Plots"? 它们 与缓冲区没有关系,但indicator_plots 属性创建了一个类似缓冲区的绘图对象属性 列表。当使用MQL4工具时,很明显,对特定绘图对象的引用是在引用之下,但现在有一个新的预处理器属性indicator_plots,定义了不清楚的数量。

也许,如果我们在MT4和MT5中运行这个指标会更容易理解。当转换到MT5时,我不得不使用图谱

关于交易、自动交易系统和策略测试的论坛

指标:股票图表

fxsaber, 2019.04.25 11:25

#property indicator_separate_window
#property indicator_buffers 6
#property indicator_plots 2

因为应该只画两个缓冲区。