Стандартная библиотека для MetaTrader 5

 

В состав стандартной поставки терминала MetaTrader 5 входит Стандартная библиотека, которая содержит большое количество классов для языка MQL5. В этой ветке предлагаю вести обсуждение, касающееся использования этой библиотеки. Кроме того, так как библиотека иногда обновляется, то здесь в первом сообщении будет прикреплена текущая актуальная версия библиотеки в виде архива Include.zip.

Чтобы установить библиотеку, достаточно распаковать ее содержимое в папку каталог_терминала/MQL5

Файлы:
include.zip  124 kb
 
Rosh писал(а) # :

В состав стандартной поставки терминала MetaTrader 5 входит Стандартная библиотека, которая содержит большое количество классов для языка MQL5. В этой ветке предлагаю вести обсуждение, касающееся использования этой библиотеки. Кроме того, так как библиотека иногда обновляется, то здесь в первом сообщении будет прикреплена текущая актуальная версия библиотеки в виде архива Include.zip.

Чтобы установить библиотеку, достаточно распаковать ее содержимое в папку каталог_терминала/MQL5

 

В прикрепленном файле ВАРНИНГИ исправлены ?

 
vdv2001 писал(а) # :

 

В прикрепленном файле ВАРНИНГИ исправлены ?

Да. Исправлены.

Если будут замечания и/или предложения, пишите пожалуйста здесь.

 

 
Внесены исправления в Стандартную библиотеку по сообщениям на форуме и обращениям в Сервисдеск. Исправленную версию можно скачать в первом сообщении.
 

Здравствуйте

           Не работал ранее в МТ4, сразу начал осваивать МТ5. Очень порадовала возможность иметь инструмент разметки волн Эллиотта.  Т.е. сразу в терминале размечать пятиволновку и трёхволновку. У Вас эти объекты называются OBJ_ELLIOTWAVE5 и OBJ_ELLIOTWAVE3. Но радость была не долгой - оказывается пятиволновку можно обозначить только как 1-2-3-4-5, а трёхволновку как А-В-С.

           На самом деле, в принятой и устоявшейся уже нумерации пятерки могут размечаться как 1-2-3-4-5 или А-В-С-D-E или W-X-Y-X-Z, а тройки соответственно А-В-С или W-X-Y.

           Ведь основная работа - модули по разметке пятёрок и троек уже сделана, и из-за такой мелочи как изменение одних символов на другие вы будете отпугивать от себя клиентов. Можно сделать в объекте галочку для выбора правильных символов, или на худой конец сделайте пять одинаковых объектов с разными символами. Надеюсь, у такой большой компании, разработавшей МТ5, хватит ресурсов сделать маленький шажок навстречу клиентам, и дать им возможность выбирать символы в разметке волн Эллиотта.

С уважением, Владимир. 

Документация по MQL5: Получение рыночной информации / SymbolSelect
Документация по MQL5: Получение рыночной информации / SymbolSelect
  • www.mql5.com
Получение рыночной информации / SymbolSelect - Документация по MQL5
 
Исходные коды Стандартной библиотеки обновлены, исправлены ошибки. Вы можете скачать новую версию в виде архива из первого сообщения это ветки и распаковать как есть в папку MQL5.

 
Исходные коды Стандартной библиотеки обновлены, добавлены классы для торговых операций. Вы можете скачать новую версию в виде архива из первого сообщения это ветки и распаковать как есть в папку MQL5.


 
Теперь Стандартная библиотека обновляется автоматически при обновлении терминала.
 
Добрый день! Где можно найти пример использования классов для работы с индикаторами?
 

У меня просьба к разработчикам: включить таки в инклудник DealInfo.mqh определение метода-функции Comment(), а то объявление есть, а определение отсутствует. И приходится после каждого обновления стандартной библиотеки вручную вбивать определение метода, так как мои скрипты и эксперты его используют. И это для всех установленных терминалов. Собственно, вот это:

//+------------------------------------------------------------------+
//| Get the property value "DEAL_COMMENT".                           |
//| INPUT:  no.                                                      |
//| OUTPUT: the property value "DEAL_COMMENT".                       |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
string CDealInfo::Comment() const
  {
   return(HistoryDealGetString(m_ticket,DEAL_COMMENT));
  }
Документация по MQL5: Общие функции / Comment
Документация по MQL5: Общие функции / Comment
  • www.mql5.com
Общие функции / Comment - Документация по MQL5
 

У меня вопрос по методу BuffSize базового класса Cindicator (устанавливает размер буфера индикатора). Ситуация сложилась следующая:

Я попытался получить данные буферов (Jaw, Teeth и Lips) CiAlligator разных индексов, вот код:

#include<Indicators\BillWilliams.mqh>
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
   CiAlligator Alligator;
   if(Alligator.Create(_Symbol,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN))
     {
      Alligator.BuffSize(13);
      Alligator.Refresh(-1);
      if(Alligator.Jaw(1)!=EMPTY_VALUE)
        {
         Print("Jaw[1]= ",NormalizeDouble(Alligator.Jaw(1),_Digits));
        }
      else
        {
         Print("Не получены данные Jaw...");
        }
      if(Alligator.Teeth(1)!=EMPTY_VALUE)
        {
         Print("Teeth[1]= ",NormalizeDouble(Alligator.Teeth(1),_Digits));
        }
      else
        {
         Print("Не получены данные Teeth...");
        }
      if(Alligator.Lips(1)!=EMPTY_VALUE)
        {
         Print("Lips[1]= ",NormalizeDouble(Alligator.Lips(1),_Digits));
        }
      else
        {
         Print("Не получены данные Lips...");
        }
     }
   return;
  }

 Вопрос состоит в следующем:

при значении параметра BuffSize(1), BuffSize(2), BuffSize(3) и так до (4) значения буферов содержали EMPTY_VALUE..., когда увеличил BuffSize(5) появилось значение буфера Lips.

При BuffSize(7) - появилось значение Teeth..., а Jaw появился при BuffSize(10).

Объясните, пожалуйста, эту ситуацию, как правильно выбрать параметр метода BuffSize и почему так происходит?