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

Пост о том, как сделать отзыв ордера в реализации коннектора. Как это делать правильно и где взять нормальный пример.
*серия постов «Коннекторы к 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