Новая версия платформы MetaTrader 5 build 3180: Векторы и матрицы в MQL5 и повышение удобства работы - страница 10
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Бета-версия платформы MetaTrader 5 build 3160: Векторы и матрицы в MQL5 и повышение удобства работы
fxsaber, 2022.01.25 23:25
Логика не нарушена, тернарное условие по прежней логике выполняется.
Отличие только в выносе в переменную, это не логика.
Совершенно разная логика у этих двух записей.
Это азы. Возможно, кто-то сможет объяснить.
Возможно, кто-то сможет объяснить.
экономный && и порядок.
этим двоим надо вообще запретить комментировать чужие репорты в баг-репорт ветках.
Совершенно разная логика у этих двух записей.
Это азы. Возможно, кто-то сможет объяснить.
В этом случае тернарное условие обрабатывает исторические, а не текущие данные.
Автоторговлю разрешили? Потому как без нее результат будет всегда одинаковый.
У меня так без автоторговли:
И вот так с автоторговлей:
экономный && и порядок.
этим двоим надо вообще запретить комментировать чужие репорты в баг-репорт ветках.
Пришел под конец, когда уже код разобрали,
показали возможные недочёты, а он тут язвит.
экономный && и порядок.
этим двоим надо вообще запретить комментировать чужие репорты в баг-репорт ветках.
Тогда объясните нам почему индекс получился 10
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Бета-версия платформы MetaTrader 5 build 3160: Векторы и матрицы в MQL5 и повышение удобства работы
Alexey Viktorov, 2022.01.26 12:14
Я так понимаю, что на новом счёте, где нет других ордеров, вы устанавливаете 10 ордеров, удаляете их, потом запрашиваете HistorySelect(0, INT_MAX); и получаете 10 ордеров в истории
Но… если ордеров 10, то максимальный индекс может быть только 9, а вы запрашиваете 10-ый. Откуда он у вас взялся?
И почему эта строка кода
возвращает 10???
В этом случае тернарное условие обрабатывает исторические, а не текущие данные.
.
.
Пока работает функция Step()
Может изменится: History Select(0, INT_MAX); и HistoryOrdersTotal()-1;
Пока работает функция Step()
Может изменится: History Select(0, INT_MAX); и HistoryOrdersTotal()-1;
Теперь понял.
Тогда возможно тернарное условие не подходит для такой задачи,
и есть смысл изменить на if/else конструкцию.
p.s.
Хотя это не решает проблему.