URL: wss://futures.kraken.com/ws/v1
Une fois le socket ouvert, vous pouvez vous abonner à un canal public en envoyant un message de demande d'abonnement.
Ce point de terminaison retourne les données de marché actuelles pour tous les contrats Futures et indices actuellement cotés. L'authentification n'est pas requise.
Abonnez-vous à un ticker en appelant la méthode SubscribeTicker :
SubscribeTicker(['PI_XBTUSD']);
Si l'abonnement réussit, l'événement OnKrakenFuturesSubscribed sera appelé :
procedure OnKrakenFuturesSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#subscribed: ' + Feed + ' ' + ProductId);
end;
Se désabonner en appelant la méthode UnSubscribeTicker :
UnSubscribeTicker(['PI_XBTUSD']);
Si le désabonnement réussit, l'événement OnKrakenFuturesUnSubscribed sera appelé :
procedure OnKrakenFuturesUnSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#unsubscribed: ' + Feed + ' ' + ProductId);
end;
En cas d'erreur lors de l'abonnement / désabonnement, l'événement OnKrakenFuturesError sera appelé.
procedure OnKrakenFuturesError(Sender: TObject; Error: string);
begin
DoLog('#error: ' + Error);
end;
Les mises à jour du ticker seront notifiées dans l'événement OnKrakenData.
{ "result":"success",
"tickers":[
{
"tag": "perpetual",
"pair": "XBT:USD",
"symbol": "pi_xbtusd",
"markPrice": 9520.2,
"bid": 9520,
"bidSize": 30950,
"ask": 9520.5,
"askSize": 3779,
"vol24h": 68238712,
"openInterest": 29308193,
"open24h": 10137,
"last": 9521,
"lastTime": "2020-06-03T08:14:26.624Z",
"lastSize": 1,
"suspended": false,
"fundingRate": 4.943012455e-9,
"fundingRatePrediction": 4.414499215e-9
}
{
"tag": "quarter",
"pair": "XBT:USD",
"symbol": "fi_xbtusd_200925",
"markPrice": 9659.8,
"bid": 9659.5,
"bidSize": 6480,
"ask": 9660,
"askSize": 17100,
"vol24h": 4562580,
"openInterest": 3573325,
"open24h": 10370.5,
"last": 9660,
"lastTime": "2020-06-03T08:10:37.800Z",
"lastSize": 5000,
"suspended": false
},
{
"symbol": "in_xbtusd",
"last": 9519,
"lastTime": "2020-06-03T08:14:49.000Z"
}
],
"serverTime": "2020-06-03T08:14:49.865Z"
}
Le flux de transactions retourne des informations sur les transactions exécutées
Abonnez-vous au flux de trades en appelant la méthode SubscribeTrade.
SubscribeTrade(['PI_XBTUSD']);
Si l'abonnement réussit, l'événement OnKrakenFuturesSubscribed sera appelé :
procedure OnKrakenFuturesSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#subscribed: ' + Feed + ' ' + ProductId);
end;
Se désabonner en appelant la méthode UnSubscribeTrade :
UnSubscribeTrade(['PI_XBTUSD']);
Si le désabonnement réussit, l'événement OnKrakenFuturesUnSubscribed sera appelé :
procedure OnrakenFuturesUnSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#unsubscribed: ' + Feed + ' ' + ProductId);
end;
En cas d'erreur lors de l'abonnement / désabonnement, l'événement OnKrakenFuturesError sera appelé.
procedure OnKrakenFuturesSubscriptionError(Sender: TObject; Error: string);
begin
DoLog('#error: ' + Error);
end;
Les mises à jour de trading seront notifiées dans l'événement OnKrakenData.
{ "feed": "trade_snapshot",
"product_id": "PI_XBTUSD",
"trades": [
{
"feed": "trade",
"product_id": "PI_XBTUSD",
"uid": "caa9c653-420b-4c24-a9f1-462a054d86f1",
"side": "sell",
"type": "fill",
"seq": 655508,
"time": 1612269657781,
"qty": 440,
"price": 34893
},
{
"feed": "trade",
"product_id": "PI_XBTUSD",
"uid": "45ee9737-1877-4682-bc68-e4ef818ef88a",
"side": "sell",
"type": "fill",
"seq": 655507,
"time": 1612269656839,
"qty": 9643,
"price": 34891
}
]
}
Ce flux renvoie des informations sur le carnet d'ordres.
Abonnez-vous à un Book en appelant la méthode SubscribeBook, vous devez passer le Symbol.
SubscribeBook(['PI_XBTUSD']);
Si l'abonnement réussit, l'événement OnKrakenFuturesSubscribed sera appelé :
procedure OnKrakenFuturesSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#subscribed: ' + Feed + ' ' + ProductId);
end;
Désabonnez-vous en appelant la méthode UnSubscribeBook :
UnSubscribeBook(['PI_XBTUSD']);
Si le désabonnement réussit, l'événement OnKrakenFuturesUnSubscribed sera appelé :
procedure OnKrakenFuturesUnSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#unsubscribed: ' + Feed + ' ' + ProductId);
end;
En cas d'erreur lors de l'abonnement / désabonnement, l'événement OnKrakenFuturesError sera appelé.
procedure OnKrakenFuturesError(Sender: TObject; Error: string);
begin
DoLog('#error: ' + Error);
end;
Les mises à jour du carnet d'ordres seront notifiées dans l'événement OnKrakenData.
{
"feed": "book_snapshot",
"product_id": "PI_XBTUSD",
"timestamp": 1612269825817,
"seq": 326072249,
"tickSize": null,
"bids": [{
"price": 34892.5,
"qty": 6385
},
{
"price": 34892,
"qty": 10924
}
],
"asks": [{
"price": 34911.5,
"qty": 20598
},
{
"price": 34912,
"qty": 2300
}
]
}
Le flux ticker lite retourne des informations de ticker sur les produits listés.
Abonnez-vous au flux Spread en appelant la méthode SubscribeTickerLite.
SubscribeTickerLite(['PI_XBTUSD']);
Si l'abonnement réussit, l'événement OnKrakenFuturesSubscribed sera appelé :
procedure OnKrakenFuturesSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#subscribed: ' + Feed + ' ' + ProductId);
end;
Se désabonner en appelant la méthode UnSubscribeTickerLite :
UnSubscribeTickerLite(['PI_XBTUSD']);
Si le désabonnement réussit, l'événement OnKrakenFuturesUnSubscribed sera appelé :
procedure OnKrakenFuturesUnSubscribed(Sender: TObject; Feed, ProductId: string);
begin
DoLog('#unsubscribed: ' + Feed + ' ' + ProductId);
end;
En cas d'erreur lors de l'abonnement / désabonnement, l'événement OnKrakenFuturesError sera appelé.
procedure OnKrakenFuturesError(Sender: TObject; Error: string);
begin
DoLog('#error: ' + Error);
end;
Les mises à jour du spread seront notifiées dans l'événement OnKrakenData.
{ "feed": "ticker_lite",
"product_id": "PI_XBTUSD",
"bid": 34932,
"ask": 34949.5,
"change": 3.3705205220015966,
"premium": 0.1,
"volume": 264126741,
"tag": "perpetual",
"pair": "XBT:USD",
"dtm": 0,
"maturityTime": 0
}
{
"feed":"ticker_lite",
"product_id":"FI_ETHUSD_210625",
"bid":1753.45,
"ask":1760.35,
"change":13.448175559936647,
"premium":9.1,
"volume":6899673.0,
"tag":"semiannual",
"pair":"ETH:USD",
"dtm":141,
"maturityTime":1624633200000
}
Le flux de heartbeat publie un message de heartbeat à intervalles réguliers.
SubscribeHeartBeat();
UnSubscribeHeartBeat();
OnConnect : lorsque le client WebSocket est connecté au serveur.
OnKrakenFuturesConnect : appelé après une connexion websocket réussie et lorsque le serveur envoie le statut du système.
OnKrakenFuturesSubscribed : appelé après un abonnement réussi à un canal.
OnKrakenFuturesUnSubscribed : appelé après une désinscription réussie d'un canal.
OnKrakenFuturesError : appelé en cas d'erreur lors de l'abonnement/désabonnement.
OnKrakenData: appelé chaque fois qu'une souscription à un canal reçoit une mise à jour.