Skip to content

Tinvest.new_order: для стоп заявок сохранять stop_order_id - #4

Open
oleg-dixon wants to merge 1 commit into
cia76:masterfrom
oleg-dixon:fix-tinvest-stop-order-id
Open

oleg-dixon wants to merge 1 commit into
cia76:masterfrom
oleg-dixon:fix-tinvest-stop-order-id

Conversation

@oleg-dixon

Copy link
Copy Markdown

Здравствуйте, Игорь! Нашёл ещё одно расхождение в Tinvest.new_order, на этот раз для стоп заявок.

Проблема. В ветках Stop и StopLimit в order.id попадает response.order_request_id. В ответе PostStopOrder это поле пустое, настоящий идентификатор стоп заявки — stop_order_id. В результате у стоп заявки нет идентификатора: cancel_order (CancelStopOrder по stop_order_id) падает с ошибкой 30027 (заявка не найдена), а в get_orders та же заявка идёт под stop_order_id, то есть сопоставить её с отправленной нельзя.

Как наблюдал. 23.10.2026 на боевом счёте T-Инвестиции: рыночная покупка 1 акции SBER, затем стоп заявка на продажу (Stop) и стоп-лимитная (StopLimit) ниже рынка. После new_order order.id пустой; cancel_order(order) падает с ошибкой 30027; в get_orders заявка есть под stop_order_id, и CancelStopOrder по нему проходит.

Правка. Две строки: order.id = response.stop_order_id в обеих ветках. С правкой проверил повторным запуском: id совпадает с идентификатором из get_orders, cancel_order снимает стоп заявку, активных заявок не остаётся. Остальной код не затронут.

Если считаете, что идентификаторы нужно обрабатывать иначе, подскажите — переделаю.

…er_request_id

PostStopOrder возвращает stop_order_id и order_request_id. В order.id попадал order_request_id,
который пустой, поэтому у стоп заявки не было идентификатора: cancel_order (CancelStopOrder
по stop_order_id) падал с ошибкой 30027, а в списке активных заявок (get_orders, GetStopOrders)
та же заявка шла под stop_order_id. Теперь в обеих ветках (Stop и StopLimit) используется stop_order_id.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant