Available translations
loading results
Checking Exchange Events
Summary: The trading bot monitors exchange orders to check their status analyzing multiple possible scenarios.
Summary: Торговый бот отслеживает биржевые ордера для проверки их статуса, анализируя множество возможных сценариев.
Summary: Der Trading-Bot überwacht Börsenaufträge, um ihren Status zu überprüfen und mehrere mögliche Szenarien zu analysieren.
For forward testing and live trading sessions, the state of orders at the exchange is checked on every execution of the trading bot.
Для форвардного тестирования и реальных торговых сессий состояние ордеров на бирже проверяется при каждом запуске торгового бота.
Für Forward-Tests und Live-Handelssitzungen wird der Status der Aufträge an der Börse bei jeder Ausführung des Trading Bots überprüft.
It’s important to note that, when an order is placed, no relevant information is obtained from the exchange other than a confirmation that the order was received. The trading bot must ask the exchange for the status of the order some time after placing it.
Важно отметить, что при размещении ордера от биржи не поступает никакой соответствующей информации, кроме подтверждения того, что ордер был получен. Торговый бот должен запросить у биржи статус ордера через некоторое время после его размещения.
Es ist wichtig zu wissen, dass bei der Auftragserteilung außer der Bestätigung, dass der Auftrag eingegangen ist, keine relevanten Informationen von der Börse eingeholt werden. Der Trading-Bot muss die Börse einige Zeit nach der Auftragserteilung nach dem Status des Auftrags fragen.
Note: The trading bot places the order during the second execution cycle and asks the exchange about the order in the next run of the bot, during the first execution cycle. This means that the order is checked one unit of the trading session’s time frame after the order is placed. For example, if the session is running on the 01-min time frame, the order is checked roughly one minute after it is placed.
Note: Торговый бот размещает ордер во время второго цикла исполнения и спрашивает биржу об ордере во время следующего запуска бота, во время первого цикла исполнения. Это означает, что ордер проверяется через одну единицу таймфрейма торговой сессии после размещения ордера. Например, если сессия работает на 01-мин таймфрейме, ордер проверяется примерно через минуту после его размещения.
Note: Der Trading-Bot platziert den Auftrag während des zweiten Ausführungszyklus und fragt die Börse im nächsten Lauf des Bots, während des ersten Ausführungszyklus, nach dem Auftrag. Das bedeutet, dass der Auftrag eine Einheit des Zeitrahmens der Handelssitzung geprüft wird, nachdem der Auftrag erteilt wurde. Wenn die Sitzung beispielsweise im Zeitrahmen von 01 Minuten läuft, wird der Auftrag etwa eine Minute nach seiner Erteilung geprüft.
When the trading bot fetches an order from the exchange, it gets the order information in a text message. What does the trading bot obtain from the exchange?
Когда торговый бот получает ордер с биржи, он получает информацию об ордере в текстовом сообщении. Что же получает торговый бот от биржи?
Wenn der Trading-Bot einen Auftrag von der Börse abruft, erhält er die Auftragsinformationen in einer Textnachricht. Was erhält der Handelsroboter von der Börse?
This is an important question, as the answer conditions what the trading bot may or may not do with each order, and how it may keep a reliable internal accounting system.
Это важный вопрос, поскольку ответ на него определяет, что торговый бот может или не может делать с каждым ордером, и как он может вести надежную систему внутреннего учета.
Dies ist eine wichtige Frage, da die Antwort davon abhängt, was der Trading-Bot mit den einzelnen Aufträgen machen darf und wie er ein zuverlässiges internes Buchhaltungssystem führen kann.
Orders According to the Exchange
Ордера согласно данным биржи
Aufträge nach der Börse
What follows are several examples including a market sell order, a market buy order, a limit sell order, and a limit buy order, all of them in the BTC/USDT market in Binance.
Ниже приведено несколько примеров, включая рыночный ордер на продажу, рыночный ордер на покупку, лимитный ордер на продажу и лимитный ордер на покупку, все на рынке BTC/USDT на Binance.
Im Folgenden finden Sie mehrere Beispiele, darunter einen Markt-Verkaufsauftrag, einen Markt-Kaufauftrag, einen Limit-Verkaufsauftrag und einen Limit-Kaufauftrag, alle auf dem BTC/USDT-Markt von Binance.
Note: Notice that the body section is provided by the CCXT library, and is the same for all exchanges; the info section is provided by the exchange itself, and may vary across exchanges.
Note: Обратите внимание, что раздел body предоставляется библиотекой CCXT и одинаков для всех бирж; раздел info предоставляется самой биржей и может отличаться для разных бирж.
Note: Beachten Sie, dass der Abschnitt body von der CCXT -Bibliothek bereitgestellt wird und für alle Börsen gleich ist; der Abschnitt info wird von der Börse selbst bereitgestellt und kann von Börse zu Börse variieren.
Market sell order for 0.1 BTC
Рыночный ордер на продажу в размере 0,1 BTC
market-Verkaufs-Order für 0,1 BTC
Body:
average:12930.92
clientOrderId:"eLAkNrEoMw3erEp8AeaiTT"
cost:1293.24717104
datetime:"2020-10-24T08:47:43.104Z"
fee:undefined
filled:0.100012
id:"3420506109"
lastTradeTimestamp:undefined
price:12930.92
remaining:0
side:"sell"
status:"closed"
symbol:"BTC/USDT"
timestamp:1603529263104
trades:undefined
type:"market"
Info:
orderId:3420506109
orderListId:-1
origQty:"0.10001200"
origQuoteOrderQty:"1293.25000000"
price:"0.00000000"
side:"SELL"
status:"FILLED"
stopPrice:"0.00000000"
symbol:"BTCUSDT"
time:1603529263104
timeInForce:"GTC"
type:"MARKET"
updateTime:1603529263104
Limit sell order for 0.1 BTC
Лимитный ордер на продажу в размере 0,1 BTC
Limit-Verkaufs-Order für 0.1 BTC
Body:
amount:0.1
average:12976.74
clientOrderId:"iZbiUF9W1WiKmtMfhA8hIr"
cost:1297.674
datetime:"2020-10-24T10:43:47.944Z"
fee:undefined
filled:0.1
id:"3420762036"
lastTradeTimestamp:undefined
price:12969.83
remaining:0
side:"sell"
status:"closed"
symbol:"BTC/USDT"
timestamp:1603536227944
trades:undefined
type:"limit"
Info:
executedQty:"0.10000000"
icebergQty:"0.00000000"
isWorking:true
orderId:3420762036
orderListId:-1
origQty:"0.10000000"
origQuoteOrderQty:"0.00000000"
price:"12969.83000000"
side:"SELL"
status:"FILLED"
stopPrice:"0.00000000"
symbol:"BTCUSDT"
time:1603536227944
timeInForce:"GTC"
type:"LIMIT"
updateTime:1603536227944
Status checks
Проверки статуса
Statusprüfungen
Once the status of the order is received as in one of the above examples, the trading bot performs multiple checks, each leading to particular actions. The following are the particular cases analyzed and the actions taken.
После получения статуса ордера, как в одном из приведенных выше примеров, торговый бот выполняет множество проверок, каждая из которых приводит к определенным действиям. Ниже описаны конкретные случаи, которые были проанализированы, и предпринятые действия.
Sobald der Status des Auftrags wie in einem der obigen Beispiele eingegangen ist, führt der Trading Bot mehrere Prüfungen durch, die jeweils zu bestimmten Aktionen führen. Im Folgenden werden die analysierten Fälle und die ergriffenen Maßnahmen beschrieben.
Filled and closed
Заполнено и закрыто (Filled and closed)
Gefüllt und geschlossen
If the order is filled and closed, the corresponding data structures in the trading engine are updated to indicate so.
Если ордер заполнен и закрыт, соответствующие структуры данных в торговом движке обновляются, чтобы обозначить это.
Wenn der Auftrag ausgeführt und geschlossen wird, werden die entsprechenden Datenstrukturen in der Trading Engine aktualisiert, um dies anzuzeigen.
tradingEngineOrder.status.value = 'Closed'
tradingEngineOrder.exitType.value = 'Filled'
But, most importantly, the details in the order are processed to synchronize the information in the trading engine—at this point consisting mostly of information derived from the definitions in the trading system—with the information obtained from the exchange.
Но, самое главное, детали в ордере обрабатываются для синхронизации информации в торговом движке - на данный момент состоящем в основном из информации, полученной из определений в торговой системе - с информацией, полученной от биржи.
Vor allem aber werden die Einzelheiten des Auftrags verarbeitet, um die Informationen im Handelssystem - das zu diesem Zeitpunkt größtenteils aus Informationen besteht, die aus den Definitionen des Handelssystems abgeleitet werden - mit den von der Börse erhaltenen Informationen zu synchronisieren.
The data structures to be updated are mostly those related to the actual rate at which the order was filled, the actual size that was filled, the actual fees that were charged, and how those variables affect balances and the overall accounts in various contexts (order, stage, position, episode, etc.).
Структуры данных, которые необходимо обновить, в основном связаны с фактической скоростью исполнения ордера, фактическим размером, который был исполнен, фактическими комиссиями, которые были списаны, и тем, как эти переменные влияют на балансы и общие счета в различных контекстах (ордер, стадия, позиция, эпизод и т.д.).
Bei den zu aktualisierenden Datenstrukturen handelt es sich hauptsächlich um solche, die sich auf die tatsächliche Rate, mit der der Auftrag ausgeführt wurde, den tatsächlichen Umfang, der ausgeführt wurde, die tatsächlich erhobenen Gebühren und die Auswirkungen dieser Variablen auf die Salden und die Gesamtkonten in verschiedenen Kontexten (Auftrag, Phase, Position, Episode usw.) beziehen.
Note: Notice that definitions in the trading system are—in a way—just a plan. Your definitions tell the trading bot what to do, but there is no certainty on the outcome. That is the reason why the first set of accounts recorded with information derived from the trading system needs to be synchronized in every execution cycle with what actually happened at the exchange until the order is closed.
Note: Обратите внимание, что определения в торговой системе - это в некотором смысле просто план. Ваши определения говорят торговому боту, что делать, но нет никакой уверенности в результате. Именно по этой причине первый набор счетов, записанный с помощью информации, полученной из торговой системы, должен синхронизироваться в каждом цикле выполнения с тем, что фактически произошло на бирже, пока ордер не будет закрыт.
Note: Beachten Sie, dass Definitionen im Handelssystem in gewisser Weise nur ein Plan sind. Ihre Definitionen sagen dem Trading-Bot, was er tun soll, aber es gibt keine Gewissheit über das Ergebnis. Aus diesem Grund muss der erste Satz von Konten, die mit den vom Handelssystem abgeleiteten Informationen erfasst wurden, in jedem Ausführungszyklus mit den tatsächlichen Vorgängen an der Börse synchronisiert werden, bis der Auftrag geschlossen wird.
The calculations involved in the synchronization process are covered in Syncing With the Exchange.
Вычисления, участвующие в процессе синхронизации, рассматриваются в разделе Syncing With the Exchange.
Die Berechnungen, die mit dem Synchronisierungsprozess (Syncing With the Exchange) verbunden sind, werden in Synchronisierung mit Exchange behandelt.
Partially filled and closed
Частично заполнен и закрыт (Partially filled and closed)
Teilweise gefüllt und geschlossen
If the order is partially filled and closed, the corresponding data structures in the trading engine are updated to indicate so.
Если ордер частично заполнен и закрыт, соответствующие структуры данных в торговом движке обновляются, чтобы указать на это.
Wenn der Auftrag teilweise erfüllt und geschlossen wird, werden die entsprechenden Datenstrukturen in der Trading Engine aktualisiert, um dies anzuzeigen.
tradingEngineOrder.status.value = 'Closed'
tradingEngineOrder.exitType.value = 'Closed at the Exchange'
For a limit order to be closed while partially filled, it must be closed manually by the user directly at the exchange, or forcefully closed by the exchange itself, for whatever reason. The system handles such occurrences so that they do not disrupt the trading session or the accounts at Superalgos.
Для того чтобы лимитный ордер был закрыт при частичном исполнении, он должен быть закрыт вручную пользователем непосредственно на бирже или принудительно закрыт самой биржей по какой-либо причине. Система обрабатывает такие случаи таким образом, чтобы они не нарушали ход торговой сессии или состояние счетов в Superalgos.
Damit ein limitierter Auftrag geschlossen werden kann, obwohl er teilweise gefüllt ist, muss er manuell vom Benutzer direkt an der Börse geschlossen werden, oder er muss von der Börse selbst zwangsweise geschlossen werden, aus welchem Grund auch immer. Das System behandelt solche Vorfälle so, dass sie weder die Handelssitzung noch die Konten bei Superalgos stören.
The first thing to do with such an order is to update the size placed on the stage so that the stage accounts for the amount that was filled only, instead of the original size of the order (see Accounting).
Первое, что нужно сделать с таким ордером, - это обновить размер, размещенный на площадке, чтобы на площадке учитывалось только то количество, которое было заполнено, а не первоначальный размер ордера (см. раздел Accounting).
Bei einem solchen Auftrag muss zunächst die auf der Bühne platzierte Größe aktualisiert werden, so dass die Bühne nur noch die gefüllte Menge und nicht mehr die ursprüngliche Größe des Auftrags berücksichtigt - siehe Buchhaltung (Accounting).
And then, the same synchronization process described earlier must be applied as well (see Syncing With the Exchange).
Затем необходимо применить тот же процесс синхронизации, который был описан ранее (см. раздел Syncing With the Exchange).
Und dann muss derselbe Synchronisierungsprozess wie oben beschrieben durchgeführt werden - siehe Synchronisierung mit Exchange (Syncing With the Exchange).
Cancelled
Отменен (Cancelled)
Abgesagt
These are limit orders canceled by the trading bot upon the triggering of the cancel order event. In such cases, the exit type is set as follows:
Это лимитные ордера, отменяемые торговым ботом при срабатывании события отмены ордера. В таких случаях тип выхода устанавливается следующим образом:
Dabei handelt es sich um Limit-Aufträge, die vom Trading-Bot bei Auslösung des Auftragsstorno-Ereignisses storniert werden. In solchen Fällen wird der Exit-Typ wie folgt festgelegt:
tradingEngineOrder.exitType.value = 'Cancelled at the Exchange'
Canceled orders go through the same processes of synchronization (see Syncing With the Exchange) and the recalculation of the size of the stage (see Accounting).
Отмененные ордера проходят через те же процессы синхронизации (см. Syncing With the Exchange) и пересчета размера этапа (см. Accounting).
Stornierte Aufträge durchlaufen die gleichen Prozesse der Synchronisierung siehe Synchronisierung mit der Börse (Syncing With the Exchange) und der Neuberechnung der Größe der Stufe - siehe Buchhaltung (Accounting).
All other instances
Все остальные случаи
Alle anderen Instanzen
The cases described above refer to orders with particular characteristics. Orders that do not match any of the above criteria trigger the synchronization process described earlier (see Syncing With the Exchange).
Описанные выше случаи относятся к ордерам с определенными характеристиками. Ордера, не соответствующие ни одному из вышеперечисленных критериев, запускают процесс синхронизации, описанный ранее (см. раздел Syncing With the Exchange).
Die oben beschriebenen Fälle beziehen sich auf Aufträge mit bestimmten Merkmalen. Aufträge (Orders), die keinem der oben genannten Kriterien entsprechen, lösen den oben beschriebenen Synchronisationsprozess aus - siehe Synchronisation mit der Börse (Syncing With the Exchange).
Order Management — TOC
You just read page 5 in the topic.
1. Overview of the Management Issue
8. Maintaining Simulated Orders
10. Simulating Sync With the Exchange
11. Simulating Order Cancellations
12. Accounting