Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Опубликовал программу в Маркете? Опубликуй ее и в блоге - виджет поможет!
Ihor Herasko
9019
Ihor Herasko 2014.10.31 15:08 

В личной практике пока не сталкивался с тем, чтобы терминал при запросах:

double volumeStep = SymbolInfoDouble(symbol, SYMBOL_VOLUME_STEP);
double point = SymbolInfoDouble(symbol, SYMBOL_POINT);

 возвращал нули. Но некоторые пользователи, говорят, что сталкивались с подобными проблемами.

Предвидя некоторые вопросы, сразу оговорюсь: 

1. Значение переменной symbol перед запросом проверено - символ существует. 

2. GetLastError() после того, как фукнции вернули 0, содержит 4000 (ERR_NO_MQLERROR). 

 

Вопрос: что означает подобный казус в работе терминала (ошибка функционирования или временные трудности)? То есть должна ли программа (советник/индикатор/скрипт) в таком случае также прекращать выполнение (это фатальная ошибка терминала) или необходимо подождать, когда терминал сможет вернуть корректные значения? Ведь во многих случаях на point и volumeStep приходится делить.

Anatoli Kazharski
56775
Anatoli Kazharski 2014.10.31 15:13  
Scriptong:
А посмотрите в терминале, в спецификации символа тоже нули? 
Ihor Herasko
9019
Ihor Herasko 2014.10.31 15:17  
tol64:
А посмотрите в терминале, в спецификации символа тоже нули? 

К сожалению, посмотреть не могу, т. к.: 

В личной практике пока не сталкивался

Поэтому и задаю вопрос о таких вот крайних случаях. То есть пока нет четкого понимания, как максимально правильно обработать такие ошибки.

Те люди, которые фиксировали подобные проблемы, максимум чем смогли помочь, это выслали логи экспертов, по которым и удалось определить, что указанные переменные равны нулю. В итоге программа обходила те участки, где происходило деление. Ну и результат работы программы становился "странным".

Anatoli Kazharski
56775
Anatoli Kazharski 2014.10.31 15:25  
Scriptong:

К сожалению, посмотреть не могу, т. к.: 

Поэтому и задаю вопрос о таких вот крайних случаях. То есть пока нет четкого понимания, как максимально правильно обработать такие ошибки.

Останавливать работу программы по этому конкретному символу с выводом сообщения.

Встречал такое на символах CFD:

 

//---

Наверное к брокеру нужно обращаться по этому вопросу. 

Ihor Herasko
9019
Ihor Herasko 2014.10.31 15:41  
tol64:

Останавливать работу программы по этому конкретному символу с выводом сообщения.

Наверное к брокеру нужно обращаться по этому вопросу. 

Пока речь конкретно о работе программы. Поэтому вряд ли саппорт брокера сможет сказать об этом что-либо дельное. Чаще всего, они сразу говорят о "неполадках в Вашей программе".

 

tol64:

Встречал такое на символах CFD: 

В случае, когда минимальный лот равен нулю, ничего криминального нет. По смыслу такое может быть. А вот нулевой шаг (как показано насчет размера тика) - это логический нонсенс.

Anatoli Kazharski
56775
Anatoli Kazharski 2014.10.31 15:47  
Scriptong:

Пока речь конкретно о работе программы. Поэтому вряд ли саппорт брокера сможет сказать об этом что-либо дельное. Чаще всего, они сразу говорят о "неполадках в Вашей программе".

В случае, когда минимальный лот равен нулю, ничего криминального нет. По смыслу такое может быть. А вот нулевой шаг (как показано насчет размера тика) - это логический нонсенс.

В Сервисдеске такая заявка (#1082572) уже висит. Каких либо комментариев по этому вопросу к сожалению пока не получал. 

Вообще, если это подтверждается нулевыми значениями в спецификации символа прямо в терминале, то брокер не может сказать, что проблема на Вашей стороне (в Вашей программе). 

Ihor Herasko
9019
Ihor Herasko 2014.10.31 16:01  
tol64:

В Сервисдеске такая заявка (#1082572) уже висит. Каких либо комментариев по этому вопросу к сожалению пока не получал. 

А, ну тогда, как говорится, ждем-с. Пока буду исходить из того, что это фатальная ошибка терминала.
Stanislav Korotky
17858
Stanislav Korotky 2014.10.31 19:52  
Scriptong:
А, ну тогда, как говорится, ждем-с. Пока буду исходить из того, что это фатальная ошибка терминала.
Это зависит от состояния залогиненности на сервер или нет?
Andrey Khatimlianskii
56117
Andrey Khatimlianskii 2014.10.31 23:15  

Это брокер не заполнил спецификацию инструмента.

Нужно долбить его поддержку или уходить к другому. 

Alexander Laur
7688
Alexander Laur 2014.11.01 08:21  
Scriptong:
 

У меня была дискуссия со stringo по поводу возвращаемых нулей при запросах.

Посмотрите, может что то для себя полезное найдете: https://www.mql5.com/ru/forum/16001/page20#comment_775468

/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий