1. В истории ордера и сделки.
2. Две. Ордера и позиции.
Я нашел статью за 2011 год, в которой подробно про ордеры, сделки и позиции. Сейчас это уже неактуально. Так что поменялось?
Первый вопрос
OrdersTotal() - подходит для перебора открытых отложенных ордеров
PositionsTotal() - подходит для перебора открытых сделок (или ордеров, какая теперь разница)
OrdersHistoryTotal() - подходит для отложенных (и возможно отмененных) и для сделок (обычных рыночных), ведь PositionsHistoryTotal() нет?
Второй вопрос
Чтобы проверить, например, что за последние 5 минут у меня нет открытого рыночного (или отложенного) ордера, мне нужно последовательно перебрать все три перечисленные выше выборки?
Я не смог разобраться в вопросе пока не стал писать переходник для использования только MQL4-подхода в работе с торговыми функциями. Написав, понял и почувствовал, наконец, на твердую четверку.
Так что рекомендую просто начать пробовать. У меня все вышло даже без демо-счета - оффлайн-тестера хватает, чтобы разобраться. Арбайтен, короче!
Голова кругом от этого "разобраться". Я смотрю в истории, там нет отложенных ордеров до тех пор пока они активны. Тем не менее, в истории ордеров OrdersHistoryTotal() можно посмотреть все ордеры (бай и селл), даже если они еще активны, при этом нужно проверять направление - "ин" или "аут".
Зачем я стал спрашивать? Если вариантов много, я бы хотел выбрать наиболее быстрый.
Я склоняюсь к работе с тремя выборками, по крайней мере так я точно знаю что я проверяю.
Смотрите статью: https://www.mql5.com/ru/articles/1284
Там все написано. Дело в том, что MetaTrader 5 теперь еще и биржевой терминал, поэтому его система ордеров и сделок так отличается от МТ4.
- 2014.12.12
- Vasiliy Sokolov
- www.mql5.com
Я не смог разобраться в вопросе пока не стал писать переходник для использования только MQL4-подхода в работе с торговыми функциями. Написав, понял и почувствовал, наконец, на твердую четверку.
Так что рекомендую просто начать пробовать. У меня все вышло даже без демо-счета - оффлайн-тестера хватает, чтобы разобраться. Арбайтен, короче!
Оно все здорово, но например в четверке в справочнике MQL почти везде присутствовали примеры использования, что очень помогало в понимании, в пятерке этого нет и в помине. Так что арбайтен, это здорово, но шаг навстречу сделать то можно!)
Голова кругом от этого "разобраться". Я смотрю в истории, там нет отложенных ордеров до тех пор пока они активны. Тем не менее, в истории ордеров OrdersHistoryTotal() можно посмотреть все ордеры (бай и селл), даже если они еще активны, при этом нужно проверять направление - "ин" или "аут".
Зачем я стал спрашивать? Если вариантов много, я бы хотел выбрать наиболее быстрый.
Я склоняюсь к работе с тремя выборками, по крайней мере так я точно знаю что я проверяю.
Выдели ошибку в ваших выводах. Ордера бай сел не активны, они свое сделали, был ордер стал позиция. Поэтому ордер ушел в историю. Отложенный отсутствует в истории, когда он сработает и появится позиция, то ордер уйдет в историю.
Смотрите статью: https://www.mql5.com/ru/articles/1284
Там все написано. Дело в том, что MetaTrader 5 теперь еще и биржевой терминал, поэтому его система ордеров и сделок так отличается от МТ4.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Я нашел статью за 2011 год, в которой подробно про ордеры, сделки и позиции. Сейчас это уже неактуально. Так что поменялось?
Первый вопрос
OrdersTotal() - подходит для перебора открытых отложенных ордеров
PositionsTotal() - подходит для перебора открытых сделок (или ордеров, какая теперь разница)
OrdersHistoryTotal() - подходит для отложенных (и возможно отмененных) и для сделок (обычных рыночных), ведь PositionsHistoryTotal() нет?
Второй вопрос
Чтобы проверить, например, что за последние 5 минут у меня нет открытого рыночного (или отложенного) ордера, мне нужно последовательно перебрать все три перечисленные выше выборки?