Скачать MetaTrader 5

Коды возврата торгового сервера

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
kond777
346
kond777  

Добрый день!

Московская биржа очень больно штрафует за ошибочные транзакции. Целиком положение можно посмотреть по ссылке http://fs.moex.com/files/4266 

Так например, биржа штрафует:

Тип Транзакции*

Результат выполнения (код ошибки)*

Балл Q

AddOrder

Возникла кросс-сделка (31)

Q1

Недостаточно средств клиента (332)

Q2

Недостаточно средств брокерской фирмы (333)

Q3

Заявка FOK не сведена (4103)

Q4

DelOrder

Заявка не найдена (14)

Q5

MoveOrder

Возникла кросс-сделка (31)

Q6

Заявка не найдена (50)

Q7

Недостаточно средств клиента (332)

Q8

Недостаточно средств брокерской фирмы (333)

Q9

DelUserOrders

Транзакция завершена успешно,

и не удалено ни одной заявки

Q10

 

 В кодах возврата торгового сервера МТ5 не все коды присутствуют. Например, нет кодов возврата по "кросс-сделке"  и "заявка FOK не сведена". Прошу пояснить, почему эти коды отсутствуют?

Andrey Khatimlianskii
57065
Andrey Khatimlianskii  

Мне кажется, такие грубые проверки терминал и сервер брокера должны проводить самостоятельно.

Но лучше, конечно, уточнить у разработчиков. 

kond777
346
kond777  

Не проводят, а отправляют на Биржу. После чего Биржа выкатывает штраф брокеру (если количество таких заявок превышает определенный рубеж), которой он в свою очередь выставляет клиенту. Из указанного списка есть только код возврата "недостаточно средств клиента". За пару минут легко можно настучать критическую массу ошибочных транзакций и попасть на значительную часть депозита. Кстати, КВИК выдает подобные оповещения. Полагаю, что и в данном случае это сделать не сложно.

Очень жаль, что нет никакой реакции на это сообщение со стороны разработчика. (( 

Mikhail Filimonov
5931
Mikhail Filimonov  

Да, маловато кодов возврата торгового сервера.

Например, при кросс-сделке, сервер возвращает "0",

при этом, сам терминал, ВООБЩЕ ничего не сообщает! 

Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера
Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера
  • www.mql5.com
Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Andrey Khatimlianskii
57065
Andrey Khatimlianskii  
kond777:

Не проводят, а отправляют на Биржу. 

Это ваши догадки.

Уточните у разработчиков, так надежнее (кнопка Сервис-деск в профиле). 

Базовые проверки терминал проводит сам. Следующая ступень - сервер брокера (его тоже MQ писали), там тоже проводятся проверки (насколько я помню, проверка средств - именно отсюда). И только потом приказ отправляется на биржу.

Хотя, в случае нестандартного/сложного расчета маржи, например, сервер вполне может "ничего не знать" и в тупую транслировать заявки. Поэтому все-таки уточните.

А результатами (ответом), пожалуйста, поделитесь. 

Mikhail Filimonov
5931
Mikhail Filimonov  

Разработчики.

Будет ли добавлены новые коды возврата( кросс-сделка, например )? 

kond777
346
kond777  
Mikalas:

Разработчики.

Будет ли добавлены новые коды возврата( кросс-сделка, например )? 

Крайне важно не только добавить указанные коды возврата, но и сделать расшифровку всех возвратов по которым в настоящий момент приходит код 0, т.к. гадать каждый раз что в конкретный момент стоит за этим нулем не улыбается ни разу. 
Mikhail Filimonov
5931
Mikhail Filimonov  

Вот так выглядят коды возврата, если лимитированный ордер "не нашел" свою цену:

void OnTradeTransaction( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result )
{
  Print( "Type = ", EnumToString(trans.type), "; State = ", EnumToString( trans.order_state ), "; Retcode = ", result.retcode );
}

 

kond777
346
kond777  
Mikalas:

Вот так выглядят коды возврата, если лимитированный ордер "не нашел" свою цену:

 

Видимо, комментариев не будет... ((
kond777
346
kond777  
komposter:

Это ваши догадки.

Уточните у разработчиков, так надежнее (кнопка Сервис-деск в профиле). 

Базовые проверки терминал проводит сам. Следующая ступень - сервер брокера (его тоже MQ писали), там тоже проводятся проверки (насколько я помню, проверка средств - именно отсюда). И только потом приказ отправляется на биржу.

Хотя, в случае нестандартного/сложного расчета маржи, например, сервер вполне может "ничего не знать" и в тупую транслировать заявки. Поэтому все-таки уточните.

А результатами (ответом), пожалуйста, поделитесь. 

Делюсь ответом. ))

После месяца размышлений и глубоких исследований данной тематики разработчики ответили, что мой запрос слишком тяжел к реализации, и возможно, в следующем году это сделают. ))

Полагаю, что это не реально большой срок. К тому же, это не блаж какая-то и абстрактная хотелка, а требование Московской Биржи, где за нарушение  жестко штрафуют и

терминал должно четко соответствовать требованиям Московской Биржи (в т.ч. и обрабатывать все ошибки).

kond777
346
kond777  

Господа разработчики!

 С того момента, как я обратил Ваше внимание на эту проблему, прошло более 9 месяцев, но НИЧЕГО не было сделано по данной тематике!

 Учитывая, что Московская биржа с незавидной регулярностью дает сбои, мои советники так же дают сбои, что приводит к выставлению штрафов со стороны Биржи за неэффективные и ошибочные транзакции (например, сегодня).  

Убедительно прошу отнестись к этому вопросу с пониманием и реализовать в надлежащем объеме функционал кодов возврата сервера!!!!!  

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий