IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92

Пост о том, как сделать отзыв ордера в реализации коннектора. Как это делать правильно и где взять нормальный пример.*серия постов «Коннекторы к OsEngine» — для программистов. Если Вы пользуетесь OsEngine как пользователь – можете дальше не читать. 1. Открываем исходники коннектора BitGet. Далее, находим метод CancelOrder: 2. CancelOrder.В общем случае должен состоять из следующих частей:Ограничитель на кол-во запросов к методу. Класс RateGate, настроенный на кол-во возможных запросов к методам работы с ордерами.Формирование тела запроса на отзыв ордера. И его отсылка в торговую систему.В случае успешного ответа об отзыве – ничего не делаем. Миссия закончена.Если ордер не выставился или была какая-то явная ошибка, о которой нам с биржи пришёл ответ, записываем код ошибки и вызываем метод уточнения статуса ордера. Вполне возможно ордер уже отозван или исполнился, нужно запросить у торговой системы его статус. 3. Не следует указывать статус ордера в этом методе как Fail при ошибке отзыва.Иногда покажется логичным сделать статус ордера Fail в случае безуспешного запроса на отзыв ордера. Однако делать этого не следует.В случае ошибки нужно вызывать метод GetOrderStatus, в котором реализовать возможность запроса настоящего статуса ордера на бирже.  Удачных алгоритмов!Комментарии открыты для друзей!OsEngine: https://github.com/AlexWan/OsEngine Поддержка OsEngine: https://t.me/osengine_official_support

Май 8, 2025 - 10:12
 0
IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92

Пост о том, как сделать отзыв ордера в реализации коннектора. Как это делать правильно и где взять нормальный пример.

*серия постов «Коннекторы к OsEngine» — для программистов. Если Вы пользуетесь OsEngine как пользователь – можете дальше не читать.

IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92


1. Открываем исходники коннектора
BitGet.

IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92


Далее, находим метод CancelOrder:

IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92


2. 
CancelOrder.

В общем случае должен состоять из следующих частей:

IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92

  1. Ограничитель на кол-во запросов к методу. Класс RateGate, настроенный на кол-во возможных запросов к методам работы с ордерами.
  2. Формирование тела запроса на отзыв ордера. И его отсылка в торговую систему.
  3. В случае успешного ответа об отзыве – ничего не делаем. Миссия закончена.
  4. Если ордер не выставился или была какая-то явная ошибка, о которой нам с биржи пришёл ответ, записываем код ошибки и вызываем метод уточнения статуса ордера. Вполне возможно ордер уже отозван или исполнился, нужно запросить у торговой системы его статус.


3. Не следует указывать статус ордера в этом методе как
Fail при ошибке отзыва.

Иногда покажется логичным сделать статус ордера Fail в случае безуспешного запроса на отзыв ордера. Однако делать этого не следует.

В случае ошибки нужно вызывать метод GetOrderStatus, в котором реализовать возможность запроса настоящего статуса ордера на бирже. 


Удачных алгоритмов!

Комментарии открыты для друзей!

IServerRealization #6. Метод CancelOrder.Что там и чего там быть не должно. Коннекторы к OsEngine #92

OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support