![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хотелось бы уточнить семантику кода возврата метода Parameters. Сейчас при ошибке получения строки с шаблоном, метод возвращает 0. Это предполагает, что 0 означает ошибку.
Во всех остальных случаях возврат дает строка:
Res = (int)EXPERT::StringBetween(Str, EXPERT_FLAGS, STRING_END);
то есть туда попадает значение expertmode из шаблона, которое может быть равно 0 совершенно легально. При этом в других проектах, в частности в Tester, EXPERT используется так:
В результате, если метод возвращает 0, то Tester не работает. А почему? Если флаг реальной торговли сброшен, это не значит, что тестирование должно быть запрещено, имхо. Тем более, Tester в этом случае молча ничего не делает.
Хотелось бы уточнить семантику кода возврата метода Parameters. Сейчас при ошибке получения строки с шаблоном, метод возвращает 0. Это предполагает, что 0 означает ошибку.
Возвращаемое значение менялось после первых публикаций. Поэтому исторически получилось так, что возвращаемое значение ничего не говорит о том, ошибка там или нет.
Во всех остальных случаях возврат дает строка:
то есть туда попадает значение expertmode из шаблона, которое может быть равно 0 совершенно легально. При этом в других проектах, в частности в Tester, EXPERT используется так:
В результате, если метод возвращает 0, то Tester не работает. А почему? Если флаг реальной торговли сброшен, это не значит, что тестирование должно быть запрещено, имхо. Тем более, Tester в этом случае молча ничего не делает.
По коду, что Вы привели, действительно, работать не будет при отключенной автоторговле. При этом не помню уже, это ошибка или сделано специально. Скорее всего, специально, чтобы можно было DLL подключать.
ЗЫ Надо будет обновить библу. Там сильный выкрутас для совместного использования с Sequence. Поскольку такая возможность нужна только мне, то не в приоритете обновление.
Единственный раз, когда конструкция обнаружения бесконечных циклов сработала.
Произошло это в Expert.mqh в этом месте.
Каждый день активно использую Expert.mqh, но первый раз нарвался. Видимо, существует какая-то очень редкая ситуация. Имейте в виду.