Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 195

 
 

это чтоли .... ?

  const bool TradeTime = (TimeCurrent() % (24 * 60 * 60) < D'1970.01.01 23:50'); // exclude swaps
  
  if (TradeTime && (IntAsk - IntBid < Limit))
а мой?
 
Renat Akhtyamov:

это чтоли ....

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

MT4-Tester VS MT5-Tester

fxsaber, 2017.05.08 11:28

Не буду спорить. Прошу форумчан, знакомых с MQL4, посмотреть этот короткий исходник и объяснить, что имеет в виду Ренат.

Наверное, я ошибаюсь, но в упор не вижу, в каком месте идет работа с историей в MT4. Прошу помощи.
 
fxsaber:
Перекеручиваете ордера до 70-го года, зачем?
 
Renat Akhtyamov:

Подскажите пожалуйста, какая функция проверяет состояние этого чекбокса?

ок. Раз молчим, тогда - делается так, как в документации:

Пример проверки:

if (!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)) 
   Alert("Проверьте в настройках терминала разрешение на автоматическую торговлю!");

 
Проверка разрешения на торговлю для данного запущенного эксперта/скрипта

При запуске программы можно разрешить или запретить автоматическую торговлю конкретно для нее. Для этого есть отдельная специальная настройка в свойствах программы.

MQL_TRADE_ALLOWED

Пример проверки:

   if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
      Alert("Проверьте в настройках терминала разрешение на автоматическую торговлю!");
   else
     {
      if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
         Alert("Автоматическая торговля запрещена в свойствах программы для ",__FILE__);
     }

 
Проверка разрешения на торговлю любым экспертам/скриптам для данного счета

Запрет на автоматическую торговлю может быть установлен на стороне торгового сервера. Пример проверки такой ситуации:

   if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
      Alert("Автоматическая торговля запрещена для счета ",AccountInfoInteger(ACCOUNT_LOGIN),
      " на стороне торгового сервера");

Если для торгового счета запрещена автоматическая торговля, то торговые операции из экспертов/скриптов выполняться не будут.
Проверка разрешения торговли для данного счета

Возможны случаи, когда для конкретного торгового счета запрещены любые торговые операции – нельзя торговать ни вручную, ни с помощью экспертов. Пример проверки ситуации, когда к торговому счету подключились с помощью инвесторского пароля:

   if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
      Comment("Торговля запрещена для счета ",AccountInfoInteger(ACCOUNT_LOGIN),
            ".\n Возможно, подключение к торговому счету произведено по инвест паролю.",
            "\n Проверьте журнал терминала, есть ли там такая запись:",
            "\n\'",AccountInfoInteger(ACCOUNT_LOGIN),"\': trading has been disabled - investor mode.");

Почему то именно этот чекбокс в нужный момент оказался отключенным, хотя парочку минут назад всё было ОК!

Поэтому, настоятельно рекомендую применять полную проверку на каждом тике !!!

 

Прошу Вас помочь с кодом перебора, допустим у нас есть переменные с диапазонами: "А" от 2 до 6 с шагом 2, "Б" от 1 до 3  с шагом 1, "В" от 0 до 1 с шагом 1 и "Г" от 16 до 48 с шагом 4. Необходимо организовать перебор параметров, при этом будет перебираться вариант комбинации (внешняя переменная - дающая доступ к любой из комбинаций). Как такой механизм правильно реализовать?

 
-Aleks-:

Прошу Вас помочь с кодом перебора, допустим у нас есть переменные с диапазонами: "А" от 2 до 6 с шагом 2, "Б" от 1 до 3  с шагом 1, "В" от 0 до 1 с шагом 1 и "Г" от 16 до 48 с шагом 4. Необходимо организовать перебор параметров, при этом будет перебираться вариант комбинации (внешняя переменная - дающая доступ к любой из комбинаций). Как такой механизм правильно реализовать?


Небольшой скрипт

//+------------------------------------------------------------------+
//|                                                       Decode.mq4 |
//|                                            Copyright 2017, Vinin |
//|                                             http://vinin.ucoz.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, Vinin"
#property link      "http://vinin.ucoz.ru"
#property version   "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int N=162;  //0..162
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   for (int n=0;n<N;n++)
   {
      int tmp=n;
      int a=MathMod(tmp,3);
      tmp=(tmp-a)/3;
      int b=MathMod(tmp,3);
      tmp=(tmp-b)/3;
      int c=MathMod(tmp,2);
      tmp=(tmp-c)/2;
      int d=tmp;
   
      Print("N=",n,"; A=", 2+2*a, "; B=", b+1,"; C=",c,"; D=", 16+4*d);
   }
  }
//+------------------------------------------------------------------+

 
Victor Nikolaev:


Небольшой скрипт

 Этот скрипт висает терминал, после чего винда его убивает.

 
-Aleks-:

 Этот скрипт висает терминал, после чего винда его убивает.


Значит кому-то не повезло. Еще раз. Это скрипт, а не советник или индикатор
 
Victor Nikolaev:

Небольшой скрипт

Он бы мог быть в два раза меньше, если убрать совершенно не нужные строки.

Для чего многие публикуют в исходниках для форума шапки, различные конструкции из комментариев, логитипы и т.д.?