Prywatne kanały WebSocket API v1 - openOrders

Ostatnia aktualizacja: 1 kwietnia 2025

Kanał WebSocket API v1 openOrders to prywatny kanał zarządzania kontem, który zapewnia status wszystkich otwartych zleceń powiązanych z Twoim kontem Kraken w czasie rzeczywistym.

Wszelkie zmiany statusu zlecenia, takie jak złożenie nowego zlecenia, częściowe lub całkowite wypełnienie zlecenia, lub anulowanie zlecenia, spowodują wysłanie wiadomości aktualizacyjnej za pośrednictwem kanału openOrders.

Jak subskrybować

Po nawiązaniu połączenia z WebSocket API v1, można subskrybować kanał openOrders poprzez pobranie tokena uwierzytelniającego za pośrednictwem punktu końcowego REST API GetWebSocketsToken, a następnie wysłanie wiadomości subskrypcyjnej, takiej jak poniżej:

  • {"event":"subscribe", "subscription":{"name":"openOrders", "token":"WOg6IVQ5RfogMzkhH25WOg6IVQ5RqhP+U3ZprQVnh7f"}}

Przykład kanału

Poniżej znajduje się przykład kanału openOrders, ilustrujący typ wiadomości otrzymywanych w przypadku różnych zmian statusu zlecenia:

{"connectionID":14950811667203285981,"event":"systemStatus","status":"online","version":"0.3.0"}{"channelName":"openOrders","event":"subscriptionStatus","status":"subscribed","subscription":{"name":"openOrders"}}[[], "openOrders"]{"event":"heartbeat"}{"event":"heartbeat"}[[{"OH6WIE-OYECX-FIIN3H":{"avg_price":"0.00000","cost":"0.00000","descr":{"close":"","leverage":"5:1","order":"buy 0.00200000 ETH/USD @ limit 100.00000 with 5:1 leverage","ordertype":"limit","pair":"ETH/USD","price":"100.00000","price2":"0.00000","type":"buy"},"expiretm":"1570445592","fee":"0.00000","limitprice":"0.00000","misc":"","oflags":"fciq","opentm":"1570445562.883878","refid":null,"starttm":null,"status":"pending","stopprice":"0.00000","userref":0,"vol":"0.00200000","vol_exec":"0.00000000"}}],"openOrders"][[{"OH6WIE-OYECX-FIIN3H":{"status":"open"}}],"openOrders"]{"event":"heartbeat"}{"event":"heartbeat"}[[{"OH6WIE-OYECX-FIIN3H":{"status":"canceled"}}],"openOrders"]{"event":"heartbeat"}{"event":"heartbeat"}

Po zasubskrybowaniu kanału openOrders, otrzymywana jest wiadomość o statusie subskrypcji:

  • {"channelName":"openOrders","event":"subscriptionStatus","status":"subscribed","subscription":{"name":"openOrders"}}

następnie pusty zrzut, który wskazuje, że konto nie ma obecnie żadnych otwartych zleceń:

  • [[], "openOrders"]

Po złożeniu nowego zlecenia, otrzymywana jest początkowa wiadomość zawierająca szczegóły zlecenia, natychmiast po niej następuje wiadomość wskazująca zmianę statusu z oczekującego na otwarte:

  • [[{"OH6WIE-OYECX-FIIN3H":{"avg_price":"0.00000","cost":"0.00000","descr":{"close":"","leverage":"5:1","order":"buy 0.00200000 ETH/USD @ limit 100.00000 with 5:1 leverage","ordertype":"limit","pair":"ETH/USD","price":"100.00000","price2":"0.00000","type":"buy"},"expiretm":"1570445592","fee":"0.00000","limitprice":"0.00000","misc":"","oflags":"fciq","opentm":"1570445562.883878","refid":null,"starttm":null,"status":"pending","stopprice":"0.00000","userref":0,"vol":"0.00200000","vol_exec":"0.00000000"}}],"openOrders"]

  • [[{"OH6WIE-OYECX-FIIN3H":{"status":"open"}}],"openOrders"]

Kilka sekund później zlecenie zostaje anulowane (zanim zostanie wykonane/wypełnione), co powoduje wysłanie wiadomości o anulowaniu zlecenia ze zmianą statusu z otwartego na anulowane:

  • [[{"OH6WIE-OYECX-FIIN3H":{"status":"canceled"}}],"openOrders"]

Separatory dziesiętne i tysięcy pokazane w tym artykule mogą różnić się od formatów wyświetlanych na naszych platformach handlowych. Zapoznaj się z naszym artykułem na temat używania kropek i przecinków, aby uzyskać więcej informacji.

Potrzebujesz więcej pomocy?