Feeds privados da API WebSocket v1 - openOrders

Última atualização: 1/04/2025

O feed openOrders da API WebSocket v1 é um feed privado de gestão de conta que fornece um estado em tempo real de todas as ordens abertas associadas à sua conta Kraken.

Quaisquer alterações ao estado de uma ordem, como uma nova ordem a ser colocada, uma ordem a ser parcial ou totalmente preenchida ou uma ordem a ser cancelada, farão com que uma mensagem de atualização seja enviada através do feed openOrders.

Como subscrever

Uma vez estabelecida uma ligação à API WebSocket v1, o feed openOrders pode ser subscrito obtendo um token de autenticação através do endpoint GetWebSocketsToken da API REST, e depois enviando uma mensagem de subscrição como a seguinte:

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

Exemplo de feed

Segue-se um exemplo do feed openOrders, ilustrando o tipo de mensagens recebidas para várias alterações de estado de ordem:

{"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"}

Ao subscrever o feed openOrders, é recebida uma mensagem de estado de subscrição:

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

seguido por um instantâneo vazio que indica que a conta não tem ordens abertas atualmente:

  • [[], "openOrders"]

Quando uma nova ordem é colocada, é recebida uma mensagem inicial que fornece os detalhes da ordem, imediatamente seguida por uma mensagem que indica uma alteração de estado de pendente para aberta:

  • [[{"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"]

Alguns segundos depois, a ordem é cancelada (antes de ter sido executada/preenchida), causando uma mensagem de cancelamento de ordem com uma alteração de estado de aberta para cancelada:

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

Os separadores decimais e de milhares apresentados neste artigo podem diferir dos formatos exibidos nas nossas plataformas de negociação. Consulte o nosso artigo sobre como usamos pontos e vírgulas para mais informações.

Precisa de mais ajuda?