Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 979

 
Kolya32:
Здравствуйте. Подскажите пожалуйста есть ли где-нить набор готовых функций, что называется на все случаи для MQL5 ??? Как к примеру для MQL4 здесь от Ким Игорь В. aka KimIV https://www.mql5.com/ru/forum/131859

Все эти функции могут быть кроссплатформенными (без изменения кода работать одинаково в MT4 и MT5), если использовать MT4Orders-библиотеку.

 
fxsaber:

Все эти функции могут быть кроссплатформенными (без изменения кода работать одинаково в MT4 и MT5), если использовать MT4Orders-библиотеку.

Спасибо. Создал советник на mql5 копирнул в него все из советника mql4, подключил эту библиотеку. Изначально без библиотеки было 104 ошибки, с библиотекой 74 ошибки. Это и понятно ведь в описании к библиотеке сказано, что Данная библиотека затрагивает только ордерную систему!!!А у меня в советнике много и много еще чего..
 
Kolya32:
Спасибо. Создал советник на mql5 копирнул в него все из советника mql4, подключил эту библиотеку. Изначально без библиотеки было 104 ошибки, с библиотекой 74 ошибки. Это и понятно ведь в описании к библиотеке сказано, что Данная библиотека затрагивает только ордерную систему!!!А у меня в советнике много и много еще чего..

Полно примеров конвертации советников данным методом. Изначально же речь шла не о Вашем советнике, а о кимовских функциях.

 
fxsaber:

Полно примеров конвертации советников данным методом. Изначально же речь шла не о Вашем советнике, а о кимовских функциях.

Понял спасибо. Буду иметь ввиду что есть такая библиотека, но все-таки придется разбираться в языке MQL5. На просторах интернета мало примеров готовых функций на MQL5, которые можно было бы переделать под себя..
 
Kolya32:
Понял спасибо. Буду иметь ввиду что есть такая библиотека, но все-таки придется разбираться в языке MQL5. На просторах интернета мало примеров готовых функций на MQL5, которые можно было бы переделать под себя..
Писать нужно для себя. Подход: одна функция на все случаи жизни - неправильный. 
Какую функцию Вы хотите смастерить на MQL5?
 
Vladimir Karputov:
Писать нужно для себя. Подход: одна функция на все случаи жизни - неправильный. 
Какую функцию Вы хотите смастерить на MQL5?

Такую универсальную, чтобы с выключенным компьютером баксики косила. И желательно крупными купюрами. Можно в евриках.))))

 
Vladimir Karputov:
Писать нужно для себя. Подход: одна функция на все случаи жизни - неправильный. 
Какую функцию Вы хотите смастерить на MQL5?

Очень нужна ФУНКЦИЯ НА MQL5 КОТОРАЯ БЫ ПРОВЕРЯЛА БЫЛА ЛИ СЕГОДНЯ СДЕЛКА ПО СОВЕТНИКУ. ЕСЛИ ДА ТО true ЕСЛИ НЕТ ТО false (С заданным Magic конечно же). На МТ4 я пользуюсь этой функцией.

bool isTradeToDay(string sy="", int op=-1) {
  int i, k=OrdersHistoryTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (Magic<0 || OrderMagicNumber()==Magic) {
              if (TimeDay  (OrderOpenTime())==Day()
              &&  TimeMonth(OrderOpenTime())==Month()
              &&  TimeYear (OrderOpenTime())==Year()) return(True);
            }
          }
        }
      }
    }
  }
  k=OrdersTotal();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (Magic<0 || OrderMagicNumber()==Magic) {
              if (TimeDay  (OrderOpenTime())==Day()
              &&  TimeMonth(OrderOpenTime())==Month()
              &&  TimeYear (OrderOpenTime())==Year()) return(True);
            }
          }
        }
      }
    }
  }
  return(False);
}
 
Kolya32:

Очень нужна ФУНКЦИЯ НА MQL5 КОТОРАЯ БЫ ПРОВЕРЯЛА БЫЛА ЛИ СЕГОДНЯ СДЕЛКА ПО СОВЕТНИКУ. ЕСЛИ ДА ТО true ЕСЛИ НЕТ ТО false (С заданным Magic конечно же). На МТ4 я пользуюсь этой функцией.

Постарайтесь, пожалуйста, сначала вставить код правильно. Нет желания смотреть на Вашу простыню из обычного текста.
 
Vladimir Karputov:
Постарайтесь, пожалуйста, сначала вставить код правильно. Нет желания смотреть на Вашу простыню из обычного текста.
Исправил)
 
Kolya32:

Очень нужна ФУНКЦИЯ НА MQL5 КОТОРАЯ БЫ ПРОВЕРЯЛА БЫЛА ЛИ СЕГОДНЯ СДЕЛКА ПО СОВЕТНИКУ. ЕСЛИ ДА ТО true ЕСЛИ НЕТ ТО false (С заданным Magic конечно же). На МТ4 я пользуюсь этой функцией.

Это есть в самом MQL5

bool  HistorySelect(
   datetime  from_date,     // с даты
   datetime  to_date        // по дату
   );

Возвращаемое значение

Возвращает true в случае успеха, иначе false.

Документация по MQL5: Торговые функции / HistorySelect
Документация по MQL5: Торговые функции / HistorySelect
  • www.mql5.com
Функция HistorySelect() создает в mql5-программе список ордеров и список сделок для дальнейшего обращения к элементам списка посредством соответствующих функций. Размер списка сделок можно узнать с помощью функции HistoryDealsTotal(), размер списка ордеров в истории можно получить с HistoryOrdersTotal(). Перебор элементов списка ордеров лучше...
Причина обращения: