Проблема с выставлением ордеров для коннектора MT4 в версии 4.4.17


Проблема с выставлением ордеров для коннектора MT4 в версии 4.4.17
Atom
22.01.2020


Есть торговый робот, который успешно работает для коннектора к Quik. Сейчас пытаюсь адаптировать его под коннектор для MT4 c версией 4.4.17.
Столкнулся со следующей проблемой. Ордера выставляются, передаются в MT4 и исполняются там.

Но почему то после второго или третьего ордера (закономерность не понятна) ордера перестают передаваться в торговую систему и остаются в коннекторе со статусом Pending. По всей видимости обрывается связь с торговой системой.
Логи от коннектора прикрепил. В чем может быть проблема?!

Спасибо!
FixServer.txt 21 KB (219) MqlServer.txt 8 KB (294)



Спасибо:


1 2  >
LevNNN

Фотография
Дата: 29.01.2020
Ответить


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

Вчерашние логи от новой версии коннектора прикрепил.
Хотелось бы получить работающую версию!
MqlServer.txt 63 KB (226) FixServer.txt 31 KB (329)
Спасибо:

Support

Фотография
Дата: 29.01.2020
Ответить


Добрый день

Ошибку определили, мы пока не выложили обновление. Как только закончим работу, мы напишем в этом топике. Нотификация была, вероятно, от автоматического обновления файлов нашей системы выкладывания релизов.
Спасибо:

Support

Фотография
Дата: 29.01.2020
Ответить


Ошибка связана с терминалом МТ4. Ваши заявки не принимаются терминалом по причине Неправильные стопы at commandNewOrder Where="commandNewOrder"" для ORD Ошибка коннектора в том, что он не транслирует статус заявки. Могли бы вы или на нашем примере SampleConnection указать какие именно параметры передаются в заявке? Или указать их ввиде кода. Так же просьба включить уровень логирования Verbose в LUA части и FIX сервера.
Спасибо:

LevNNN

Фотография
Дата: 30.01.2020
Ответить


Код в моей программе очень простой :
Order order = new Order
{
Portfolio = ordPortfolio,
Security = sec,
Volume = volume,
Direction = sides,
ClientCode = _clientCode,
Price = price
};
Trader.RegisterOrder(order);

Точно такой же код я применяю для коннектора Quik, там все работает. Причем price обычно равна 0, т.е. покупаю или продаю по рынку.

Спасибо:

Support

Фотография
Дата: 30.01.2020
Ответить


У вас разнонаправленные заявки? Просьба прислать логи под Verbose.
Спасибо:

LevNNN

Фотография
Дата: 30.01.2020
Ответить


В общем случае заявки могут быть и однонаправленные и разнонаправленные - все зависит от состояния рынка. К сожалению класс StockSharp.Logging я не использую, поэтому логи под Verbose прислать не могу.
Что конкретно Вас интересует?!
Спасибо:

Support

Фотография
Дата: 31.01.2020
Ответить


Логи выставляются из эксперта. Для этого при запуске эксперта в терминале нужно выставить в выпадающем списке уровень логирования.

Заявки отвергаются системой МТ4. Это не ошибка коннектора. В вашем случае ошибка в коннекторе в том, что не транслируется ошибочный статус. Мы это поправим, поэтому просим прислать логи под уровнем Verbose.
Спасибо:

LevNNN

Фотография
Дата: 31.01.2020
Ответить


Прикрепил логи.
MqlServer.txt 4 MB (288) FixServer.txt 2 KB (194)
Спасибо:

Support

Фотография
Дата: 20.02.2020
Ответить


Добрый день

Пожалуйста, возьмите последнюю версию. Подробнее, информация указана в соседнем топике https://stocksharp.ru/posts/m/49569/
Спасибо:

Support

Фотография
Дата: 20.02.2020
Ответить


Для информации. Изменился файл mq4, поэтому закешированную версию ex4 необходимо удалить.
Спасибо:
1 2  >

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy