Ошибки, баги, вопросы - страница 2185

 
fxsaber:

Это баг Терминала, не ДЦ. Можно открыть второй Терминал и видеть, что так называемый "BuyLimit" - Buy.

Хм, это аргумент. Хотя опять же - не встречал...

А долго вообще ждали, ну там сутки или больше!? Просто интересно, может у меня такой баг есть, а я не замечаю...

 

не загружается продукт из маркета, что делать?


 
У меня одного сайт подвисает?
 
Комбинатор:
У меня одного сайт подвисает?

есть такое.

[Удален]  
Рядом с иконкой "изменения в избранном" в верхнем правом углу сайта горит иконка "Сообщения" с цифрой 1 (есть одно непрочитанное сообщение). Но все сообщения прочитаны...
 

почему при сохранении отчета торговли пишет Бэктест?



 
fxsaber:

По MT4 вопрос.

Когда-то сталкивался с этим и вот снова на тесте HFT споткнулся с этим багом.

Выставляется BuyLimit, цена пробивает его вниз и далеко внизу остается на протяжении многих минут. При этом BuyLimit горит желтым, но "не исполняется".


Попытки его модификации выдают

2018.04.09 19:15:41.242 '89015117': modification of invalid order #108362456

Когда увидел, то вспомнил эту давнюю ситуацию. Рецепт тогда и, как оказалось, сейчас всегда один - переконнект. После коннекта оказывается, что BuyLimit давно (с момента пересечения) является Buy-позицией.

При этом еще до реконнекта можно было торговать другими ордерами и все с ними было отлично, висел только BuyLimit.


Получается, что в MT4-терминал не приходит уведомление о том, что BuyLimit стал Buy-позицией. И, соответственно, облом, пока не сделаешь релогин.

Надо вспомнить, как эту ситуацию решал. Но на 99% уверен, что в случае ошибок или странностей просто делал принудительный Relogin через WinAPI.

Имеет ли смысл писать в СД об этом, все таки MT4? В пятерке, вроде, такого не замечал.


Это из вот этой же оперы, по ходу:

Здравствуйте! В МТ4, при удалении лимитного ордера расположенного внутри спреда часто возникает ситуация ошибки – зависает удаляемый ордер, которая лечится только перезагрузкой терминала. Насколько я смог разобраться механизм ее возникновения такой:

    1)  Выставляем лимитку  внутри спреда, близко к цене Ask (для ордеров Buy Limit) или Bid (для ордеров Sell Limit) и через некоторое время пробуем её удалить.

    2)  Посылаем команду OrderDelete(), пока эта команда идет на сервер - ордер может уже исполниться на сервере (он же внутри спреда очень близко к цене активации). Получается, что когда команда дойдет до сервера, она будет применена уже к рыночному ордеру – получаем ошибку в терминале и зависший ордер. Ордер в терминале, при этом, остается лимитным  (через функцию OrderType() - также определяется как лимитный), рыночным он отобразится только после перезагрузки терминала. Если продолжать удалять его как лимитный  будем видеть ошибку в логе экспертов под кодом: 3, а в логе журнала терминала:  [Invalid parameters]. Вообще никакие действия с подвешенным таким образом ордером невозможны – в терминале он лимитный, а на сервере  рыночный. Вручную ордер так же не удаляется.

Прилагаю упрощенный советник (только для Buy Limit), для воспроизведения ошибки, и профиль с установленными параллельно 8-ю советниками (так ошибка проявится быстрее, чем, если ее ловить одним советником – хотя она возникает и при одном установленном советнике). Ордер Buy Limit в советнике устанавливается на 1 пятизначный пункт ниже цены Ask и удаляется через 1 секунду после установки. Если установить ордер даже в 5 пунктах ниже Ask и удалять через  любое количество секунд/минут/часов ошибка все равно периодически возникает, просто реже, потому что механизм ее возникновения не меняется.

Необходимо запустить терминал и дождаться появления зависшего ордера. Обычно ждать не более часа, в зависимости от активности рынка.


Заявка открыта, Начата: 2017.06.06 12:37, #1766459


В октябре  2017 мне в сервисдеске написали, что им удалось у себя  воспроизвести эту ситуацию и, что они занимаются решением проблемы. И с тех пор тишина...

 
Pavel Kolchin:

не загружается продукт из маркета, что делать?


Попробуйте еще раз.

 
zenz:


Это из вот этой же оперы, по ходу:

Здравствуйте! В МТ4, при удалении лимитного ордера расположенного внутри спреда часто возникает ситуация ошибки – зависает удаляемый ордер, которая лечится только перезагрузкой терминала. Насколько я смог разобраться механизм ее возникновения такой:

    1)  Выставляем лимитку  внутри спреда, близко к цене Ask (для ордеров Buy Limit) или Bid (для ордеров Sell Limit) и через некоторое время пробуем её удалить.

    2)  Посылаем команду OrderDelete(), пока эта команда идет на сервер - ордер может уже исполниться на сервере (он же внутри спреда очень близко к цене активации). Получается, что когда команда дойдет до сервера, она будет применена уже к рыночному ордеру – получаем ошибку в терминале и зависший ордер. Ордер в терминале, при этом, остается лимитным  (через функцию OrderType() - также определяется как лимитный), рыночным он отобразится только после перезагрузки терминала. Если продолжать удалять его как лимитный  будем видеть ошибку в логе экспертов под кодом: 3, а в логе журнала терминала:  [Invalid parameters]. Вообще никакие действия с подвешенным таким образом ордером невозможны – в терминале он лимитный, а на сервере  рыночный. Вручную ордер так же не удаляется.

Прилагаю упрощенный советник (только для Buy Limit), для воспроизведения ошибки, и профиль с установленными параллельно 8-ю советниками (так ошибка проявится быстрее, чем, если ее ловить одним советником – хотя она возникает и при одном установленном советнике). Ордер Buy Limit в советнике устанавливается на 1 пятизначный пункт ниже цены Ask и удаляется через 1 секунду после установки. Если установить ордер даже в 5 пунктах ниже Ask и удалять через  любое количество секунд/минут/часов ошибка все равно периодически возникает, просто реже, потому что механизм ее возникновения не меняется.

Необходимо запустить терминал и дождаться появления зависшего ордера. Обычно ждать не более часа, в зависимости от активности рынка.


Заявка открыта, Начата: 2017.06.06 12:37, #1766459


В октябре  2017 мне в сервисдеске написали, что им удалось у себя  воспроизвести эту ситуацию и, что они занимаются решением проблемы. И с тех пор тишина...

Вы большой молодец, что докопались до сути, включая воспроизведение! Действительно, торговое окружение в Терминале до сих пор не синхронизировано с Торговым сервером.

Однако, после мая 2017 года (build 1090) обновлений не было, а воспроизвели проблему в октябре. По срокам даже по MT5 сложно говорить, а про четверку - тем более.

Видимо, разработчики не сочли данный баг критическим. Считаю его недопустимым. Просто с лимитными ордерами почти никто не работает, да еще и внутри спреда.


ЗЫ В своей заявке в СД передайте привет от меня. Возможно, банально забыли.

 
Fast235:

почему при сохранении отчета торговли пишет Бэктест?



Это отчет с вкладки "Бэктест" в тестере стратегий, так?