Ошибки, баги, вопросы - страница 2728
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А так
тоже работает, нерабочий второй вариант
Сам недавно напоролся на таком. Вроде раньше проблем не было. А тут попросили подправить код и пока не привел к double не хотело работать как положено.
direction у вас объявлена как int. Вот и получаете то что получаете. Последнее время довольно привередливо многие функции стали относиться к значениям. Лучше подстраховаться с приведением.
Сам недавно напоролся на таком. Вроде раньше проблем не было. А тут попросили подправить код и пока не привел к double ни хотело работать как положено.
да, int. но это же умножение - в целых числах тоже 30*1=30. На 100% уверен, что несколько билдов тому назад работало отлично и во втором варианте, т.к. эти 30 подбором определял...
похоже ещё одна "особенность" MT5... Хорошо хоть блок декоративный, а если где-нибудь типа автолота или стоплоса - печалька может случиться - я частенько переворачиваю умножением на -1...
спасибо, возьму ещё один костыль на вооружение...
тоже работает, нерабочий второй вариант
Ааа. Я по невнимательности не тот код скопировал.
А Константин прав, зачем-же туда где ожидается double сувать int... И никакая это не особенность mql5, а просто некоторые попытки приучить к порядку.
Прошу помощи.
Индикатор вылетает по ошибке array out of the range.
в коде определил буферы
Объявил глобальные переменные
В Init() задал свойства
В OnCalculate() в коде определяется условие - переменная up.
Если истина, то выполняется такой код
Уточните, пожалуйста, нормально ли, что во время откладки индикатора на открывшемся графике не видно значений этого индикатора? Т.е., например, открываем в отладчике MACD. Ставим точку останова в цикл записи значений в буферы. После записи значения ChartRedraw(). Ожидаю после записи значения увидеть это значение сразу на графике, но вижу только пустое окно.
Билд 2380 x64.
никакая это не особенность mql5, а просто некоторые попытки приучить к порядку.
приучение к порядку - это когда компилятор выдаст предупреждение (или ошибку). преобразование целых в дробные возвращает 0 - это нонсенс, а не порядок. так 90% старых кодов поломаются.
и, заметьте, рабочий вариант всё равно был с int! т.е. дело не в преобразовании типов на этапе подстановки в функцию, а на этапе вычисления
ДОБАВЛЕНО: перешёл на MQ-demo, обновил рабочий терминал. Нет в нём этой проблемы.
приучение к порядку - это когда компилятор выдаст предупреждение (или ошибку). преобразование целых в дробные возвращает 0 - это нонсенс, а не порядок. так 90% старых кодов поломаются.
и, заметьте, рабочий вариант всё равно был с int! т.е. дело не в преобразовании типов на этапе подстановки в функцию, а на этапе вычисления
ДОБАВЛЕНО: перешёл на MQ-demo, обновил рабочий терминал. Нет в нём этой проблемы.
А отсутствие подсветки возможных вариантов в этом случае не вызывает подозрений?