Ошибки, баги, вопросы - страница 3430
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А какая принципиальная разница между (1) и (2) ?
Похвально, лишние скобки умеете расставлять - только какое отношение это имеет к моему сообщению ?
Для сведения - ниже тоже нет ошибок:В одном случае есть ошибка при компиляции, а в другом - нет:
А какая принципиальная разница между (1) и (2) ?
Явное приведение к типу 1. 2 не явное.
А в чем заключается неявность, если string справа явно указана, а главное: почему (4) нормально, а во (2) ошибка?
А в чем заключается неявность, если string справа явно указана, а главное: почему (4) нормально, а во (2) ошибка?
Не знаю, явно это в доках не указано. Для себя сделал такой вывод из практики. Тип в скобках явное приведение уже объявленной переменной, без скобок это объявление переменной или не явное приведение по правилам очередности. Явное приведение компилируется без ошибки, не явное не всегда. Вообще в стринг должно все перейти и явно и не явно, видимо просто нулл не имеет текстового штатного аналога в МКЛ или нарушаются правила очерёдности пр мнению компилятора)
Второе - тоже явное приведение. В справке указано:
Приведение числовых типов
В выражениях языка MQL5 можно использовать как явное, так и неявное приведение типов. Явное преобразование типов записывается следующим образом:
var_1 = (тип)var_2;
В качестве переменной var_2 может быть выражение или результат выполнения функции. Допускается также функциональная запись явного приведения типов:
var_1 = тип(var_2);
Нашёл возможную логическую ошибку в ключевом коде стандартной библиотеки, а конкретно в методе Direction класса СExpertSignal
Фильтры посылающие в этот модуль значение 0.0 посредством своих собственных методов Direction
в результате отсутствия раннего выхода из текущей итерации лупа при direction 0.0 добираются до
и считаются проголосовавшими, не привнося никаких добавочных значений к результирующей переменной direction.
А так как итоговая переменная result определяющая направление и силу сигнала с учётом всех фильтров высчитывается как
что в связке например любого сигнального индикатора и модуля СSignalITF - intraday time filter - приводит к уменьшению результирующего сигнала в два раза.
Если условная СSignalMA говорит direction = 100, а стандартный СSignalITF в обычный разрешенный день/час/минуту в соответствии со своим кодом выдаёт всегда direction = 0.0, то сейчас получается result = (100 + 0.0) / 2 проголосовавших = 50 результирующая сила сигнала.
А в реальности все фильтры с 0.0 не должны считаться голосовавшими.
в результате отсутствия раннего выхода из текущей итерации лупа при direction 0.0 добираются до
Не добираются.
Не добираются.