← К каталогу
Исходный код · ID 3530

defines.mqh

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Библиотека defines.mqh представляет собой набор вспомогательных функций для разработки на языке MQL в среде MetaTrader. Она предоставляет утилиты для работы с событиями графиков, определения режима выполнения программы (визуальный, тестер, оптимизация), а также для базовой обработки строк и получения параметров графика.

Библиотека поддерживает как MQL4, так и MQL5, обеспечивая совместимость кода между платформами. Функции SendEvent позволяет рассылать пользовательские события на все открытые графики, что удобно для межпрограммного взаимодействия.

Все функции библиотеки являются вспомогательными обёртками над стандартными средствами MQL, упрощая типовые операции при разработке советников и индикаторов.

Состав библиотеки

Классов: 0 · методов: 0 · конструкторов: 0 · деструкторов: 0 · отдельных функций: 10

Функции
Функция void SendEvent(ushort broadcastEventID,long lparam,double dparam,string sparam)

Отправляет пользовательское событие графика на все открытые графики платформы MetaTrader.

Функция string BoolToString(bool bstate)

Преобразует логическое значение в строковое представление ("true" или "false").

Функция bool IsVisualMode()

Проверяет, активирован ли визуальный режим работы на графике.

Функция bool IsTesting()

Проверяет, запущен ли текущий процесс в тестере стратегий.

Функция bool IsOptimization()

Проверяет, выполняется ли текущий процесс в режиме оптимизации.

Функция string WindowExpertName()

Возвращает имя эксперта-советника, загруженного на график.

Функция int ChartWidth(long chart_id)

Возвращает ширину указанного графика в пикселях.

Функция int ChartHeight(long chart_id)

Возвращает высоту указанного графика в пикселях.

Функция string Trim(string sVar)

Удаляет пробелы и незначащие символы в начале и конце строки.

Функция int string_explode(string sDelimiter,string sText,string &sReturn[])

Разбивает строку по заданному разделителю и возвращает количество элементов в результирующем массиве.

Получить полный код

Поиск по коду файла

#ifndef __DEFINES__
#define __DEFINES__ ea_protect_sovetnikov_net

#ifndef __COPYRIGHT__
#define __COPYRIGHT__ string scopyright="Copyright 2007-2021, Gavrilin Alexander Victorovich (";
#endif

#ifndef __LIB_GUI__

#define EVENT_TIMER(var) if(var.OnChartEvent(id,lparam)) ::OnTimer()
#define TESTER_EVENT_TIMER(var) if((IsTesting() || IsOptimization()) && IsVisualMode()) ::OnTimer()

#define EVENT_USER(broadcastEventID,func) if(id==broadcastEventID && id>CHARTEVENT_CUSTOM) func;

void SendEvent(ushort broadcastEventID,long lparam,double dparam,string sparam)
  {

   ushort eventID=(ushort)(broadcastEventID-CHARTEVENT_CUSTOM); //максимальное число может быть 65534

   long currChart=ChartFirst();
   int i=0;
   while(i<CHARTS_MAX)
     {
      EventChartCustom(currChart,eventID,lparam,dparam,sparam);
      currChart=ChartNext(currChart);
      if(currChart==0)
         break;
      i++;
     }
  }
#endif

#ifndef __MQL4__

string BoolToString(bool bstate)
  {
   return bstate?"true":"false";
  }
#ifndef __MQL4__TO__MQ

Показано первые 50% кода (символов: 1713)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
171,30₽ ≈ $2.09