Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 519
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Можно узнать зачем так делать?
int total=OrdersTotal();
Потому что во время выполнения цикла, значение OrdersTotal(); может измениться и можно пропустить ордер или тело цикла глюканет
Alexey Kozitsyn:
Дополню, если ордеров много, на каждой итерации цикла будет вызываться функция, а это не экономично.
Вы оба шутите или реально?
Alexey Kozitsyn:
Дополню, если ордеров много, на каждой итерации цикла будет вызываться функция, а это не экономично.
Вы оба шутите или реально?
Alexey Kozitsyn:
У Вас другая точка зрения?
int i=OrdersTotal()-1
Это действие выполняется один раз перед первой итерацией. Смысла лепить ещё что нету. Просто увеличиваешь код.
в такой конструкции возможно, а вот в такой есть вероятность получить глюк
в такой конструкции возможно, а вот в такой есть вероятность получить глюк
:)))))))
На каком основании?
А.
Так всегда перебирайте с конца.
В данном случае - да. А в этом случае:
разница есть. Вы не указали ранее, что имели ввиду.
:)))))))
На каком основании?
А.
Так всегда перебирайте с конца.
Ага, значит вопрос просто в логике. Меня больше беспокоило, что кроме порядка действий, еще нужно учесть время обновления данных на сервере.
Наконец я поняла в чем было дело))))))))
Как обычно, до смешного просто))
Всего лишь не верное применение отложенных ордеров) цена ушла ниже, а ордер лимитный с ценой покупки выше))) Он просто не мог поставиться по таким условиям)
Добавила постановку "ордера стоп" и вуаля, всё как надо))))
Такой метод не всегда подходит. Например, если Вам нужен перебор, начиная с самого раннего ордера.