Новая версия платформы MetaTrader 4 build 1280 - страница 7

 

Время от времени в MT4 наблюдается следующая ситуация: прекращают поступать новые котировки, "останавливаются" графики, хотя соединение с торговым сервером есть. При выборе другого сервера, повторной авторизации или перезапуске терминала нормальная работа возобновляется (на некоторое время). Было замечено давно, но в последнее время происходит очень часто. Из-за чего это происходит и как с этим бороться?

Прошу разработчиков исправить данную ошибку.

 
Denis Zyatkevich:

Время от времени в MT4 наблюдается следующая ситуация: прекращают поступать новые котировки, "останавливаются" графики, хотя соединение с торговым сервером есть. При выборе другого сервера, повторной авторизации или перезапуске терминала нормальная работа возобновляется (на некоторое время). Было замечено давно, но в последнее время происходит очень часто. Из-за чего это происходит и как с этим бороться?

Прошу разработчиков исправить данную ошибку.

Можно повесить скрипт, делающий рескан серверов по таймеру.

 
Когда использовал MT4, такой способ позволял гораздо быстрее определить проблему и сделать WinAPI-релогин.

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

Новая версия платформы MetaTrader 4 build 1170

fxsaber, 2019.04.03 12:12

#property strict
#property indicator_chart_window
#property indicator_buffers 0

input int AlertTime = 3; // Сообщаем, если TimeCurrent застыл на такое количество секунд

int OnInit() { return(!EventSetTimer(1)); }

int OnCalculate( const int, const int, const datetime &[], const double &[], const double &[],
                 const double &[], const double &[], const long &[], const long &[], const int &[] ) { return(0); }

#define TOSTRING(A) #A + " = " + (string)(A) + " "

void OnTimer()
{
  static int Count = 0;
  static datetime PrevTime = 0;
  
  const datetime NewTime = TimeCurrent();
  
  if (NewTime != PrevTime)
  {
    PrevTime = NewTime;
    Count = 0;
  }
  
  if (++Count >= AlertTime )
    Alert(TOSTRING(TimeCurrent()) + TOSTRING(Count) + "seconds.");  
}
 
Спасибо, Andrey Khatimlianskii, fxsaber за рекомендации. Это все, конечно, хорошо, но, хотелось бы, чтобы разработчики исправили ошибку и все работало нормально без всяких "костылей".
 
Denis Zyatkevich:
Спасибо, Andrey Khatimlianskii, fxsaber за рекомендации. Это все, конечно, хорошо, но, хотелось бы, чтобы разработчики исправили ошибку и все работало нормально без всяких "костылей".

На 99% этого не будет. Ошибка очень старая. Никто не смог научить воспроизводить, чтобы было за что зацепиться. Ну и все же это MT4. Шансы на исправление почти нулевые. Используйте костыль.

ЗЫ Если нужно для Маркета, то можно написать DLL-релогин, который пройдет Маркет-проверку. Но у меня нет уверенности, что после этого Вас не забанят, как продавца.
 
fxsaber:

На 99% этого не будет. Ошибка очень старая. Никто не смог научить воспроизводить, чтобы было за что зацепиться. Ну и все же это MT4. Шансы на исправление почти нулевые. Используйте костыль.

ЗЫ Если нужно для Маркета, то можно написать DLL-релогин, который пройдет Маркет-проверку. Но у меня нет уверенности, что после этого Вас не забанят, как продавца.

Нужно для себя.

Готов предоставить разработчикам удаленный доступ к своему компьютеру с терминалами MT4, на котором почти каждую неделю происходит такая проблема (иногда даже несколько раз в неделю). Только исправьте, пожалуйста.

 
Denis Zyatkevich:

Нужно для себя.

Готов предоставить разработчикам удаленный доступ к своему компьютеру с терминалами MT4, на котором почти каждую неделю происходит такая проблема (иногда даже несколько раз в неделю). Только исправьте, пожалуйста.

В подобных ситуациях на MT5 разработчикам помог соответствующий дамп-памяти Терминалов с проблемой. Попробуйте через ЛС предложить им такой вариант.

 
А что нового в 1294 от 03.11?
 
Andrey Khatimlianskii:
А что нового в 1294 от 03.11?

И где его можно скачать?

 
dr.mr.mom:

И где его можно скачать?

Мне прилетел авто-апдейтом с MQ-Demo

Скачать можете у меня в архиве билдов.