Ошибка 10013 при отправке request

 

Добрый день.

Открытая позиция со следующими параметрами:

(TradePosition(ticket=227392690, time=1712221729,

time_msc=1712221729087,

time_uposition=227392063,

position_by=0))

pdate=1712221729,

time_update_msc=1712221729087,

type=0,

magic=0,

identifier=227392690,

reason=0,

volume=0.004,

price_open=65665.2,

sl=0.0,

tp=0.0,

price_curren<module>t=65679.0,

swap=0.0, profit=0.06,

symbol='BTCUSDT.cfd',

comment='',

external_id=''),)


Отправляется request следующего содержания:

mt5.order_check(request

{'action': 6, 'sl': 65572.4, 'tp': 65829.4, 'position': 227392690}


Ответ:

OrderCheckResult(retcode=10013, balance=0.0, equity=0.0, profit=0.0, margin=0.0, margin_free=0.0, margin_level=0.0, comment='Invalid request',

request=TradeRequest(action=6, magic=0, order=0, symbol='', volume=0.0, price=0.0, stoplimit=0.0, sl=65577.1, tp=65860.7, deviation=0, type=0, type_filling=0, type_time=0, expiration=0, comment='', position=227392690, position_by=0))

Не могу разобраться где ошибся.

 
Объем 0.004 точно валидный? Проверьте величину минимально допустимого объема.
 
Ihor Herasko #:
Объем 0.004 точно валидный? Проверьте величину минимально допустимого объема.

По этому объему открывается сделка. Это минимальный допустимый объем по данному символу

 

Когда-то давно сталкивался с тем, что OrderCheck() иногда браковал запрос, который на самом деле успешно исполнялся, критерий неизвестен.

Может, MQ это с тех пор и починили, но с их политикой обновлений всегда приходится ждать подвоха, а такой плавающий баг отследить очень сложно.

Поэтому отказался от использования OrderCheck(), не хочу экспериментировать на боевых роботах.

 
Dmitriy Lebedev:

Добрый день.

Открытая позиция со следующими параметрами:

(TradePosition(ticket=227392690, time=1712221729,

time_msc=1712221729087,

time_uposition=227392063,

position_by=0))

pdate=1712221729,

time_update_msc=1712221729087,

type=0,

magic=0,

identifier=227392690,

reason=0,

volume=0.004,

price_open=65665.2,

sl=0.0,

tp=0.0,

price_curren<module>t=65679.0,

swap=0.0, profit=0.06,

symbol='BTCUSDT.cfd',

comment='',

external_id=''),)


Отправляется request следующего содержания:

mt5.order_check(request

{'action': 6, 'sl': 65572.4, 'tp': 65829.4, 'position': 227392690}


Ответ:

OrderCheckResult(retcode=10013, balance=0.0, equity=0.0, profit=0.0, margin=0.0, margin_free=0.0, margin_level=0.0, comment='Invalid request',

request=TradeRequest(action=6, magic=0, order=0, symbol='', volume=0.0, price=0.0, stoplimit=0.0, sl=65577.1, tp=65860.7, deviation=0, type=0, type_filling=0, type_time=0, expiration=0, comment='', position=227392690, position_by=0))

Не могу разобраться где ошибся.

у Вас нет денег на счете?

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

...

Sergey Golubev, 2020.03.23 16:08

Вставляйте правильно код -

----------------‌

MQL5.community - Памятка пользователя 

Кнопка  Исходный кодпредназначена для вставки исходного кода в текст сообщения. При нажатии появляется пустое окно, в которое необходимо вставить код и далее нажать кнопку Вставить. Для отмены вставки кода необходимо нажать кнопку Отмена.


 
Renat Akhtyamov #:

у Вас нет денег на счете?

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

 
Sergey Golubev #:

Программа реализована на Python. Не понимаю, какой код в данном случае необходимо выделять?

 
Dmitriy Lebedev #:

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

balance=0.0, equity=0.0, profit=0.0, margin=0.0, margin_free=0.0

демо-денег нет!

 
Renat Akhtyamov #:

balance=0.0, equity=0.0, profit=0.0, margin=0.0, margin_free=0.0

демо-денег нет!

Это как то влияет на исполнение запроса?

Деньги фактически в терминале есть. Если это влияет на исполнение запроса. Тогда почему терминал выдает такой ответ?
 
Dmitriy Lebedev #:

Это как то влияет на исполнение запроса?

Деньги фактически в терминале есть. Если это влияет на исполнение запроса. Тогда почему терминал выдает такой ответ?

потому что на счете ноль

нет денег, пусть даже и демо, но их нет и на демо

попробуйте открыть новый демо-счет на некую сумму, ничего не потеряете