Ошибки, баги, вопросы - страница 1824

 
Artyom Trishkin:
Запуск от администратора не помогает?
 
Комбинатор:
Запуск от администратора не помогает?
Не пробовал. Раньше, до билда 1045 такого не встречалось. Причём и сейчас не постоянно. Можно проработать пол-дня, и только потом нарваться на эту ошибку.

Что заметил сейчас - хотел уже перезагружать windows, закрыл редактор mql5, закрыл редактор mql4, закрыл терминалы МТ5 и МТ4. Но что-то потребовалось в редакторе mql4 посмотреть. Вновь его открыл и, о чудо!!..., файл скомпилировался. Теперь вот грешу на одновременную работу двух редакторов - mql4 и mql5. Странно, что в них не открыты одинаковые файлы из разных каталогов.

Но, понаблюдаю за их совместной работой.
 
fxsaber:

Выбран. Нулевой результат случается только после первого запуска и не обязательно на SGD-символах.

В исходник SGDJPY случайно попал. Результат представлен уже для исправленной версии, где вместо "SGDJPY" стоит _Symbol.

Получилось воспроизвести?

На четверке то же самое. У меня даже коммент стоит, чтобы это не забыть. Сейчас обновил МТ4 до 1052 - бяку не убрали. Запуск под администратором не помогает (ответ Комбинатору)

Вот код функции для MQL4, использую в индикаторе, вызывается в OnCalculate. Если добавить индикатор на чарт - все ОК. Но если перезапустить терминал - несколько нулевых значений, смотрите вывод в конце поста.  

bool Quote2Price(double diff,double &price4lot,string symbol="EURUSD")
  {
   int dig=(int)MarketInfo(symbol,MODE_DIGITS);
   if(dig == 0)
      return(false); // symbol is none
   double tickSizeMarketInfo = MarketInfo(symbol, MODE_TICKSIZE);   // пункт в валюте котировки (0,00001 для EURUSD на 5-знаке)
   double tickValue, tickSize2;
   if(!SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE, tickValue)) // пункт в валюте депозита ($1 для EURUSD на 5-знаке)
      Print(__FUNCTION__, "  SymbolInfoDouble(...SYMBOL_TRADE_TICK_VALUE) returns false");
   if(!SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_SIZE, tickSize2)) // пункт в валюте депозита ($1 для EURUSD на 5-знаке)
      Print(__FUNCTION__, "  SymbolInfoDouble(...SYMBOL_TRADE_TICK_SIZE) returns false");
      
   Print("tickSizeMarketInfo= ", tickSizeMarketInfo, "  tickSize2= ", tickSize2, "  tickValue= ", tickValue);
   if(tickSizeMarketInfo == 0 || tickSize2 == 0 || tickValue == 0.0)
      return false;
   double price=diff/(tickSize2/tickValue);
   price4lot=NormalizeDouble(price,2);
   return (true);
  }


 Вывод после перезапуска терминала:

 2017.03.01 00:31:43.588 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 1.0

2017.03.01 00:31:43.460 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 1.0

2017.03.01 00:31:43.351 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 1.0

2017.03.01 00:31:42.961 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 0.0

2017.03.01 00:31:42.910 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 0.0

2017.03.01 00:31:42.866 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 0.0

2017.03.01 00:31:42.301 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 0.0

2017.03.01 00:31:41.116 ShowImportantParams EURUSD.e,M5: tickSizeMarketInfo= 1e-05  tickSize2= 1e-05  tickValue= 0.0

2017.03.01 00:31:41.116 ShowImportantParams EURUSD.e,M5: initialized

2017.03.01 00:31:41.080 Custom indicator ShowImportantParams EURUSD.e,M5: loaded successfully


 
Alexey Volchanskiy:

На четверке то же самое. У меня даже коммент стоит, чтобы это не забыть.

Предлагаю вспомнить все проблемы и запостить их здесь. Если не сообщать, так и будут дыры.
 
Artyom Trishkin:
Не пробовал. Раньше, до билда 1045 такого не встречалось. Причём и сейчас не постоянно. Можно проработать пол-дня, и только потом нарваться на эту ошибку.

Что заметил сейчас - хотел уже перезагружать windows, закрыл редактор mql5, закрыл редактор mql4, закрыл терминалы МТ5 и МТ4. Но что-то потребовалось в редакторе mql4 посмотреть. Вновь его открыл и, о чудо!!..., файл скомпилировался. Теперь вот грешу на одновременную работу двух редакторов - mql4 и mql5. Странно, что в них не открыты одинаковые файлы из разных каталогов.

Но, понаблюдаю за их совместной работой.
Без разницы - время от времени вываливается ошибка, не зависимо от того, один или два редактора запущены:

2017.03.01 01:43:30.843 MetaTrader 4 build 1052 started (MetaQuotes Software Corp.)
2017.03.01 01:43:30.844 Windows 10 Home (x64 based PC), IE 11.00, UAC, 4 x Intel Core i3-3217U  @ 1.80GHz, RAM: 1540 / 5005 Mb, HDD: 10397 / 260234 Mb, GMT+07:00
2017.03.01 01:43:30.844 Data Folder: D:\New MT4
Продолжается эпопея с ошибкой:
EX4 write error         0       0
Постоянные перезагрузки Windows для возможности продолжить работу делают работу просто невыносимой.
 
Artyom Trishkin:
Без разницы - время от времени вываливается ошибка, не зависимо от того, один или два редактора запущены:

2017.03.01 01:43:30.843 MetaTrader 4 build 1052 started (MetaQuotes Software Corp.)
2017.03.01 01:43:30.844 Windows 10 Home (x64 based PC), IE 11.00, UAC, 4 x Intel Core i3-3217U  @ 1.80GHz, RAM: 1540 / 5005 Mb, HDD: 10397 / 260234 Mb, GMT+07:00
2017.03.01 01:43:30.844 Data Folder: D:\New MT4
Продолжается эпопея с ошибкой:
EX4 write error         0       0
Постоянные перезагрузки Windows для возможности продолжить работу делают работу просто невыносимой.
в /portable режиме тоже проблема проявляется?
 
Andrey Dik:
в /portable режиме тоже проблема проявляется?
Это и есть /portable режим:
2017.03.01 01:43:30.844 Data Folder: D:\New MT4
 
Artyom Trishkin:
Это и есть /portable режим:
2017.03.01 01:43:30.844 Data Folder: D:\New MT4
посмотреть нужно пользователей соответствующих папок, думаю МТ4 не виноват ни в чем, похоже на проблемы с доступом к папкам. возможно какой то скрытый процесс блокирует доступ.
 
Andrey Dik:
посмотреть нужно пользователей соответствующих папок, думаю МТ4 не виноват ни в чем, похоже на проблемы с доступом к папкам. возможно какой то скрытый процесс блокирует доступ.
И что с ними делать?

 
Artyom Trishkin:
Это и есть /portable режим:
2017.03.01 01:43:30.844 Data Folder: D:\New MT4
Артём, а что ответили из СД? Или даже не обращался?
Причина обращения: