Помогите разобраться с параметром expirity

 

Здравствуйте.

Проблема с отложенными ордерами, конкретно с датой истечения.

   ticket=OrderSend(symb, OP_SELLLIMIT, Lots, price, Slippage, 0, 0, lsComm, mn, TimeCurrent() + 60*60, op_color);

Вот таким образом открывается новый ордер, т.е если он не сработал за час, сервер должен его закрыть.

Далее делаю проверку какая все таки получилась дата экспирации:

   if (ticket>0)
   {
    OrderSelect(ticket, SELECT_BY_TICKET);
    Alert("OrderExpiration = ", TimeToStr(OrderExpiration(), TIME_DATE),":",TimeToStr(OrderExpiration(), TIME_MINUTES)); 
.......
   } 

Что получаю при работе советника в тестере:

2013.03.01 12:45:58    2012.01.11 11:00  #советник# EURUSD,H1: open #1 sell limit 2.00 EURUSD at 1.27972 ok
2013.03.01 12:45:58    2012.01.11 11:00  #советник# EURUSD,H1: Alert: OrderExpiration = 2012.01.11:12:00
2013.03.01 12:45:58    2012.01.12 16:29  Tester: order #1, sell 2.00 EURUSD is opened at 1.27972

То есть дата и время истечения выставлены правильно, как я хочу, но закрытия по времени истечения не происходит - происходит открытие позиции более, чем через сутки.

Я перерыл уже несколько форумов, проблема встречается. Обычный ответ - "у меня работает" или "отслеживай отложенники сам". Оба ответа не подходят, сам отслеживать не хочу и У МЕНЯ то не работает.

 

У меня не работает, но делать ничего не хочу - в анналы!

Как вариант - пробуем на терминале другого ДЦ, сравниваем...

Но все же рекомендую по старому правилу программиста перед сном на тумбочку ставить два стакана - один с водой (если захочешь пить) и один пустой (если не захочешь). ;)

Не предусмотренное действие приводит к ошибке, тем более прецедент есть...

 

Может быть я неправильно выразился. Я хочу разобраться, почему не работает Expiration, при этом я не хочу городить костыли и отслеживать отложенники самостоятельно; при правильно установленной Expirity date отложенник должен удаляться при ее достижении сам.

Другой ДЦ естественно попробовал, эффект тот же - поэтому грешу на свои косяки, которые не могу найти.

Какое "Не предусмотренное действие приводит к ошибке" ? Все действия предусмотрены и описаны в документации.

 

В данном случае не предусмотренное действие - не закрытие отложки по установленному времени. 

Должен закрывать, да, но если он тем не менее не желает этого делать - нужно закрывать имеющийся (судя по всему не ваш) баг своим кодом.

В противном случае - переписка с метаквотами - потеря времени и нервов.
Во сколько оцениваете свои шансы получить закрытие этого бага хотя-бы в пределах месяца?

Я бы и одного рубля на это не поставил... 

Но багрепорт я  бы им отправил... 

 
Вот здесь ответ разработчиков на эту проблему. Единственный нюанс - ответ без решения. Ищу решение.
 
Garynych:
Вот здесь ответ разработчиков на эту проблему. Единственный нюанс - ответ без решения. Ищу решение.


Прикольно - проблема аж 2005 года...

Решение будет только одно - закрытие бага своим кодом (отдельное отслеживание истечения и удаление ордера по достижении времени).

Ну или тупо забить на это...  ;)

 
Прошу внимания! Бага НЕТ! Есть отдельные проблемы у отдельных пользователей и некоторые их решают. Если есть люди, которые смогли решить эту проблему у себя, или знают как ее решить в принципе - ответ все еще актуален.
 

Да? И что это тогда если не баг?

Баг проявляющийся у "отдельных пользователей" от этого им быть не перестает.

Рекомендую не беситься, а закрыть эту проблему своим кодом. 

 

2ktest0, Спасибо за ап темы и за рекомендации не имеющие отношения к проблеме. Я совершенно не бешусь, я ищу людей, которые знают решение. Кодом я ее уже частично закрыл, закрыть ее полностью невозможно из-за того, что код выполняется у меня, а отложенник стоит на сервере. 

 
Garynych:

2ktest0, Спасибо за ап темы и за рекомендации не имеющие отношения к проблеме. Я совершенно не бешусь, я ищу людей, которые знают решение. Кодом я ее уже частично закрыл, закрыть ее полностью невозможно из-за того, что код выполняется у меня, а отложенник стоит на сервере. 

есть только один путь - обращение в службу поддержки ДЦ, в котором это не работает.
 
PapaYozh:
есть только один путь - обращение в службу поддержки ДЦ, в котором это не работает.

А, стоп.

Не обратил внимание на то, что это в тестере. В таком случае обращайтесь в "Сервисдеск" на MQL5

Причина обращения: