| / | Форум |
|
DR12CED
12.07.2011 22:12
Не хочу захламлять форум, но уж вопрос очень важный! Хотел в советнике определять последний по времени открытия ордер и чисто случайно (сказался трудный рабочий день) по ошибке поставил в поиск минимума тикет ордера. Когда спохватился было уже поздно. Программа чётко и безошибочно модифицировала только самый последний из всех открытых ордеров - что и требовалось. Отсюда вопрос - неужели в MQL4 и правда сравнение тикетов ордеров происходит по времени их открытия. От ответа на этот вопрос зависит уверенность в правильности моей программы. |
|
Бесплатная Groupware для групп разработчиков Установите систему групповой работы TeamWox и объедините усилия всех разработчиков. Это поможет вашей команде работать быстрее и организованнее. Благодаря TeamWox станет намного проще ставить задачи и контролировать их выполнение. |
|
abolk
12.07.2011 22:16
DR12CED:
Отсюда вопрос - неужели в MQL4 и правда сравнение тикетов ордеров происходит по времени их открытия. нет. в вашем случае - это чистое совпадение. ваш вопрос на форуме неоднократно поднимался. |
|
IgorM
12.07.2011 22:28
может я и ошибаюсь, но имхо: тут вопрос не в mql, а в понимании конструкции: сервер <--> терминал <--> mql терминал получает всю информацию от сервера, сам он не хранит ни историю ордеров не текущие открытые ордера, как и свойства ордера (время, цена,тикет....), поэтому оптимальнее перебирать ордера по списку в терминале и сравнивать конкретно каждое свойство ордера с заданным |
|
DR12CED
12.07.2011 23:01
abolk: Совпадение в чём, извините? В том что сравнение номеров ордеров происходит именно по времени их открытия? нет. в вашем случае - это чистое совпадение. ваш вопрос на форуме неоднократно поднимался. Ещё раз: сколько бы ни было открыто ордеров, модифицируется только последний из всех по времени открытия (что и требуется), причём сравнение ордеров происходит по номеру их тикета. Результат стабильный, из раза в раз повторяющийся. Причём такое решение существенно упрощает задачу. |
|
abolk
12.07.2011 23:17
DR12CED:
Совпадение в чём, извините? В том что сравнение номеров ордеров происходит именно по времени их открытия? Ещё раз: сколько бы ни было открыто ордеров, модифицируется только последний из всех по времени открытия (что и требуется), причём сравнение ордеров происходит по номеру их тикета. Результат стабильный, из раза в раз повторяющийся. Причём такое решение существенно упрощает задачу.
обратите внимание на последовательность тикетов и последовательность времён открытия. да и задача сравнения по тикету вместо времени - не упрощается - и тикет и время - суть тип int, размер 4 байта. p.s. если вы так уверены в своей правоте, так зачем спрашивать? слитый дипозит - лучший советчик и доктор. |
|
tara
12.07.2011 23:55
abolk:
Отсюда вопрос - неужели в MQL4 и правда сравнение тикетов ордеров происходит по времени их открытия. От ответа на этот вопрос зависит уверенность в правильности моей программы. |
|
Figar0
12.07.2011 23:58
DR12CED: Сравнение "номеров" происходит именно по номерам, просто часто ордер с самым большим тикетом имеет самое позднее (математически самое большее) время открытия.Совпадение в чём, извините? В том что сравнение номеров ордеров происходит именно по времени их открытия? |
|
abolk
12.07.2011 23:58
tara:
Отсюда вопрос - неужели в MQL4 и правда сравнение тикетов ордеров происходит по времени их открытия. От ответа на этот вопрос зависит уверенность в правильности моей программы. к чему этот римейк? такое впечатление, что "кворум цел" (с) |
|
tara
13.07.2011 00:02
abolk: к чему этот римейк? такое впечатление, что "кворум цел" (с)
|
|
abolk
13.07.2011 00:08
tara:
DR12CED:
Хотел в советнике определять последний по времени открытия ордер
DR12CED:
чисто случайно (сказался трудный рабочий день) по ошибке поставил в поиск минимума тикет ордера. топикстартер, вместо того, чтобы искать по времени стал искать по тикету. далее он утеврждает, что: DR12CED:
Ещё раз: сколько бы ни было открыто ордеров, модифицируется только последний из всех по времени открытия (что и требуется), причём сравнение ордеров происходит по номеру их тикета. Результат стабильный, из раза в раз повторяющийся. Причём такое решение существенно упрощает задачу. мой пример, как раз и показал, что решение топикстартера искать последний открытый ордер по номеру тикета ошибочно. |
|
tara
13.07.2011 00:35
Андрей, истина дороже :) В 22:07 Вы открыли ордер,- сервер присвоил ему номер 59699370. В 22:15 Вашему новому ордеру сервер присвоил номер 59699369. |
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий