Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 643
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хоспидя... Доказательства им подавай...
Видать, вы не совсем помните такие ситуации, будучи давно обсуждаемыми на mql4.com. Вот тогда-то и пришли к выводу, что лучше всё же искать по времени ордер для однозначного определения его времени открытия/закрытия. Уже устал повторять, что была зависимость от сортировки. Потом сделали так, что перестала быть. Народ расслабился, и начал делать так, как предлагаете вы. А потом бац.., и опять появилась зависимость от сортировки. Народ взвыл - роботы с ума сошли. А потом опять зависимость пропала от сортировки.
Если у вас есть желание в угоду мнимой оптимальности попасть снова когда-нибудь под раздачу, то делайте так, как делаете. Но не предлагайте такие решения другим людям. Либо, предлагая, предупреждайте о вероятности когда-либо потерять деньги из-за сбоев поиска нужного ордера, который (поиск) зависит от сортировки символов в списке, который в свою очередь никак не зависит от вас и вашего алгоритма. Наоборот - ваш алгоритм целиком зависит от кого-то...
Только не нужно говорить о том, что дилер может мухлевать со временем открытия/закрытия - это уже вопрос из другой плоскости.
Удачи.
Да, подобных обсуждений не помню, форум четверки читал не часто. Возможно, когда-то, что-то подобное и было. Но, если закладываться на все, что было "когда-то" никаких ресурсов не хватит.
Если у вас есть желание в угоду мнимой оптимальности попасть снова когда-нибудь под раздачу, то делайте так, как делаете. Но не предлагайте такие решения другим людям. Либо, предлагая, предупреждайте о вероятности когда-либо потерять деньги из-за сбоев поиска нужного ордера, который (поиск) зависит от сортировки символов в списке, который в свою очередь никак не зависит от вас и вашего алгоритма. Наоборот - ваш алгоритм целиком зависит от кого-то...
"Попасть под раздачу", как Вы говорите, можно и кучей других способов. Повсюду, где потребуется быстро определить последний ордер перебирать их все по времени, имхо, крайне не рационально, почему - уже сказал.
А принимать мой способ или нет - пусть каждый для себя решает сам. Самый лучший вариант, открыть много ордеров и посмотреть, как же СЕЙЧАС происходит сортировка.
И Вам удачи.
Вы уверены, что показали надёжный способ пропуска последней позиции в списке?
Если торговать реально, то не беспокоит, что от сортировки может вдруг появиться зависимость?
Всё же, ИМХО, тут нужны два цикла - в первом ищем по времени открытия самую свежую позицию, во втором модифицируем все, кроме той, тикет которой нашли в первом цикле.
Нет, не уверен, но логически правильный.
Ниже прочел о коварстве MQ - появилась тревожность. Спасибо за предостережение.
Повсюду, где потребуется быстро определить последний ордер перебирать их все по времени, имхо, крайне не рационально, почему - уже сказал.
Зачем каждый раз перебирать? Вот это и есть не рационально.
Можно же перебрать единожды за тик для рыночных позиций и для закрытых ордеров, и заполнить все поля структуры всеми нужными данными двух последних ордеров - открытого и закрытого.
И пользуйтесь данными, полученными на этом тике. После их изменения на этом тике, на следующем вы получите новые данные и новые поля двух структур. Мне кажется - это нормальный баланс между надёжностью и скоростью. Вот это и есть оптимальность. А то, что вы называете оптимальностью, ИМХО - это шапкозакидательство ;)
Зачем каждый раз перебирать? Вот это и есть не рационально.
Можно же перебрать единожды за тик для рыночных позиций и для закрытых ордеров, и заполнить все поля структуры всеми нужными данными двух последних ордеров - открытого и закрытого.
И пользуйтесь данными, полученными на этом тике. После их изменения на этом тике, на следующем вы получите новые данные и новые поля двух структур. Мне кажется - это нормальный баланс между надёжностью и скоростью. Вот это и есть оптимальность. А то, что вы называете оптимальностью, ИМХО - это шапкозакидательство ;)
Вы углубляетесь в нюансы, про каждый раз, вообще, никто не говорил. Я, как и Вы, выступаю за рациональность, просто у нас с Вами взгляд на это разный.
Вы углубляетесь в нюансы, про каждый раз, вообще, никто не говорил. Я, как и Вы, выступаю за рациональность, просто у нас с Вами взгляд на это разный.
Ваши же слова:
Повсюду, где потребуется быстро определить последний ордер перебирать их все по времени, имхо, крайне не рационально...
"Повсюду" - разве в данном контексте обсуждения не синоним "каждый раз"?
Потому и ответил - перебирать один раз за тик, заполнять поля структуры нужными данными и использовать их повсюду, где нужно получить данные о последнем ордере, а не каждый раз повсюду перебирать.
Может я не так вас понял? Но ваше, мною процитированное выражение, ИМХО, исключает неоднозначность понимания.
Ваши же слова:
"Повсюду" - разве в данном контексте обсуждения не синоним "каждый раз"?
Потому и ответил - перебирать один раз за тик, заполнять поля структуры нужными данными и использовать их повсюду, где нужно получить данные о последнем ордере, а не каждый раз повсюду перебирать.
Может я не так вас понял? Но ваше, мною процитированное выражение, ИМХО, исключает неоднозначность понимания.
Вы не учитываете что в программе могут быть паузы/просто долгие расчеты, после которых нужно обновлять торговое окружение. Таскать за собой массив ордеров не всегда удобно, и глобальный массив - не всегда хорошее решение.
В любом случае, как я уже сказал, никто Вас не отговаривает, но бывают случаи, когда Ваш вариант будет менее предпочтительным (мультивалютные/мультиордерные системы). А перестраховываться на то, что MQ опять поменяют порядок сортировки (учитывая, что он такой и в mql4, и в mql5), я считаю, не нужно.
Вы не учитываете что в программе могут быть паузы/просто долгие расчеты, после которых нужно обновлять торговое окружение. Таскать за собой массив ордеров не всегда удобно, и глобальный массив - не всегда хорошее решение.
В любом случае, как я уже сказал, никто Вас не отговаривает, но бывают случаи, когда Ваш вариант будет менее предпочтительным (мультивалютные/мультиордерные системы). А перестраховываться на то, что MQ опять поменяют порядок сортировки (учитывая, что он такой и в mql4, и в mql5), я считаю, не нужно.
Уже давно сделан класс, который позволяет легко и не напрягаясь иметь данные по любым символам и любым магикам. И ничего таскать не нужно, тем более целый массив, а лишь ДВА ордера - последний открытый и последний закрытый. Каждый раз, после долгих расчётов или ожидания, нужно перезаполнять поля структур, что впрочем, и вам приходится делать, или вы не обновляете окружение?
Ладно. Разговор "ниочём"... Делайте как вам удобнее. Не заморачивайтесь о надёжности - ну её...
Уже давно сделан класс, который позволяет легко и не напрягаясь иметь данные по любым символам и любым магикам. И ничего таскать не нужно, тем более целый массив, а лишь ДВА ордера - последний открытый и последний закрытый. Каждый раз, после долгих расчётов или ожидания, нужно перезаполнять поля структур, что впрочем, и вам приходится делать, или вы не обновляете окружение?
Ладно. Разговор "ниочём"... Делайте как вам удобнее. Не заморачивайтесь о надёжности - ну её...
А я и обновляю окружение, просто Ваш метод поиска будет занимать гораздо больше времени, вот и все, а на счет надежности - это спорно.
"Гораздо больше" это сколько дней? Можно уточнить не переходит-ли в несколько недель?