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


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


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

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

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



Спасибо:




11 Ответов
LevNNN

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


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

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

Support

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


Добрый день

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

Support

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


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

LevNNN

Фотография
Дата: 29.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 (3) FixServer.txt 2 KB (2)
Автор топика
Спасибо:

Support

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


Добрый день

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

Support

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


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

LevNNN

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


Добрый вечер! Стало определенно лучше. Если раньше после заявки выставлялось четыре одинаковых ордера, то теперь выставляется два. Но все равно коннектор работает не так как его программируем. Логи прикрепил.
MqlServer.txt 183 KB (3)
Автор топика
Спасибо:


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

loading
clippy