API Kraken | WebSockets openbare API

Verbinding

URL: wss://ws.kraken.com (v1) of wss://ws.kraken.com/v2 (v2, aanbevolen)

Het component ondersteunt nu WebSocket API v2 via de eigenschap Version (standaard: 2). Stel Kraken.Version := 1 in om het verouderde v1-eindpunt te gebruiken.

 

Zodra de socket open is, kunt u zich abonneren op een openbaar kanaal door een abonneerverzoekbericht te sturen.

 

Algemene overwegingen

 

Ondersteunde paren

ADA/CAD, ADA/ETH, ADA/EUR, ADA/USD, ADA/XBT, ATOM/CAD, ATOM/ETH, ATOM/EUR, ATOM/USD, ATOM/XBT, BCH/EUR, BCH/USD, BCH/XBT, DASH/EUR, DASH/USD, DASH/XBT, EOS/ETH, EOS/EUR, EOS/USD, EOS/XBT, GNO/ETH, GNO/EUR, GNO/USD, GNO/XBT, QTUM/CAD, QTUM/ETH, QTUM/EUR, QTUM/USD, QTUM/XBT, USDT/USD, ETC/ETH, ETC/XBT, ETC/EUR, ETC/USD, ETH/XBT, ETH/CAD, ETH/EUR, ETH/GBP, ETH/JPY, ETH/USD, LTC/XBT, LTC/EUR, LTC/USD, MLN/ETH, MLN/XBT, REP/ETH, REP/XBT, REP/EUR, REP/USD, STR/EUR, STR/USD, XBT/CAD, XBT/EUR, XBT/GBP, XBT/JPY, XBT/USD, BTC/CAD, BTC/EUR, BTC/GBP, BTC/JPY, BTC/USD, XDG/XBT, XLM/XBT, DOGE/XBT, STR/XBT, XLM/EUR, XLM/USD, XMR/XBT, XMR/EUR, XMR/USD, XRP/XBT, XRP/CAD, XRP/EUR, XRP/JPY, XRP/USD, ZEC/XBT, ZEC/EUR, ZEC/JPY, ZEC/USD, XTZ/CAD, XTZ/ETH, XTZ/EUR, XTZ/USD, XTZ/XBT

 

Methoden

Ping

Client kan de server pingen om te bepalen of de verbinding actief is; de server antwoordt met een pong.

Dit is een ping op applicatieniveau, in tegenstelling tot de standaard ping in de WebSocket-standaard die door de server wordt geïnitieerd

Ticker

Tickerinformatie omvat de beste vraag- en biedprijzen, 24-uursvolume, laatste handelsprijs, volumegewogen gemiddelde prijs, enzovoort voor een gegeven valutapaar. Een tickerbericht wordt gepubliceerd elke keer dat een handel of een groep transacties plaatsvindt.

Abonneer op een ticker door de methode SubscribeTicker aan te roepen:


SubscribeTicker(['XBT/USD']);

Als het abonnement geslaagd is, wordt de gebeurtenis OnKrakenSubscribed aangeroepen:


procedure OnKrakenSubscribed(Sender: TObject;ChannelId: Integer; Pair, Subscription, ChannelName: string; 
  ReqID:Integer);
begin
  DoLog('#subscribed: ' + Subscription + ' ' + Pair + ' ' + ChannelName);
end;

Abonnement opzeggen door de methode UnSubscribeTicker aan te roepen:


UnSubscribeTicker(['XBT/USD']);

Als het uitschrijven succesvol is, wordt de OnKrakenUnSubscribed-gebeurtenis aangeroepen:


procedure OnKrakenUnSubscribed(Sender: TObject; ChannelId: Integer; Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#unsubscribed: ' + Subscription + ' ' + Pair);
end;

Als er een fout optreedt bij het abonneren of afmelden, wordt de gebeurtenis OnKrakenSubscriptionError aangeroepen.


procedure OnKrakenSubscriptionError(Sender: TObject; ErrorMessage, Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#subscription error: ' + ErrorMessage);
end;

Ticker-updates worden gemeld in het evenement OnKrakenData.

 
[
  0,
  {
    "a": [
      "5525.40000",
      1,
      "1.000"
    ],
    "b": [
      "5525.10000",
      1,
      "1.000"
    ],
    "c": [
      "5525.10000",
      "0.00398963"
    ],
    "v": [
      "2634.11501494",
      "3591.17907851"
    ],
    "p": [
      "5631.44067",
      "5653.78939"
    ],
    "t": [
      11493,
      16267
    ],
    "l": [
      "5505.00000",
      "5505.00000"
    ],
    "h": [
      "5783.00000",
      "5783.00000"
    ],
    "o": [
      "5760.70000",
      "5763.40000"
    ]
  },
  "ticker",
  "XBT/USD"
]

OHLC

When subscribed for OHLC, a snapshot of the laatste geldig candle (irrespective of the endtime) will be sent, followed by updates to the running candle. Bijvoorbeeld, if a abonnement is made to 1 min candle and there have been geen trades for 5 mins, a snapshot of the laatste 1 min candle from 5 mins ago will be published. The endtime can be used to determine that it is an oud candle.

Abonneer u op een OHLC door de methode SubscribeOHLC aan te roepen; u moet het paar en het interval doorgeven.


SubscribeOHLC(['XBT/USD'], kin1min);

Als het abonnement succesvol is, wordt het OnKrakenSubscribed-event aangeroepen:


procedure OnKrakenSubscribed(Sender: TObject;ChannelId: Integer; Pair, Subscription, ChannelName: string; 
  ReqID:Integer);
begin
  DoLog('#subscribed: ' + Subscription + ' ' + Pair + ' ' + ChannelName);
end;

Afmelden via de methode UnSubscribeOHLC:

 
UnSubscribeOHLC(['XBT/USD'], kin1min);

Als het uitschrijven succesvol is, wordt de OnKrakenUnSubscribed-gebeurtenis aangeroepen:

 
procedure OnKrakenUnSubscribed(Sender: TObject; ChannelId: Integer; Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#unsubscribed: ' + Subscription + ' ' + Pair);
end;

Als er een fout optreedt bij het abonneren of afmelden, wordt de gebeurtenis OnKrakenSubscriptionError aangeroepen.

 
procedure OnKrakenSubscriptionError(Sender: TObject; ErrorMessage, Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#subscription error: ' + ErrorMessage);
end;

OHLC-updates worden gemeld in de OnKrakenData-gebeurtenis.


[
  42,
  [
    "1542057314.748456",
    "1542057360.435743",
    "3586.70000",
    "3586.70000",
    "3586.60000",
    "3586.60000",
    "3586.68894",
    "0.03373000",
    2
  ],
  "ohlc-5",
  "XBT/USD"
]

Handel

Handelsfeed voor een valutapaar.

Abonneer u op de handelsfeed door de methode SubscribeTrade aan te roepen.

 
SubscribeTrade(['XBT/USD']);

Als het abonnement succesvol is, wordt het OnKrakenSubscribed-event aangeroepen:

 
procedure OnKrakenSubscribed(Sender: TObject;ChannelId: Integer; Pair, Subscription, ChannelName: 
  string; ReqID:Integer);
begin
  DoLog('#subscribed: ' + Subscription + ' ' + Pair + ' ' + ChannelName);
end;

Afmelden via de methode UnSubscribeTrade:

 
UnSubscribeTrade(['XBT/USD']);

Als het uitschrijven succesvol is, wordt de OnKrakenUnSubscribed-gebeurtenis aangeroepen:

  
procedure OnrakenUnSubscribed(Sender: TObject; ChannelId: Integer; Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#unsubscribed: ' + Subscription + ' ' + Pair);
end;

Als er een fout optreedt bij het abonneren of afmelden, wordt de gebeurtenis OnKrakenSubscriptionError aangeroepen.

   
procedure OnKrakenSubscriptionError(Sender: TObject; ErrorMessage, Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#subscription error: ' + ErrorMessage);
end;

Handelsupdates worden gemeld via de gebeurtenis OnKrakenData.


[
  0,
  [
    [
      "5541.20000",
      "0.15850568",
      "1534614057.321597",
      "s",
      "l",
      ""
    ],
    [
      "6060.00000",
      "0.02455000",
      "1534614057.324998",
      "b",
      "l",
      ""
    ]
  ],
  "trade",
  "XBT/USD"
]

Boek

Niveaus van het orderboek. Bij abonnement wordt een momentopname gepubliceerd op de opgegeven diepte; na de momentopname worden niveauupdates gepubliceerd.

Abonneer op een Book door de methode SubscribeBook aan te roepen; u moet het paar en de diepte doorgeven.

  
SubscribeBook(['XBT/USD'], kde10);

Als het abonnement succesvol is, wordt het OnKrakenSubscribed-event aangeroepen:

   
procedure OnKrakenSubscribed(Sender: TObject;ChannelId: Integer; Pair, Subscription, ChannelName: string; 
  ReqID:Integer);
begin
  DoLog('#subscribed: ' + Subscription + ' ' + Pair + ' ' + ChannelName);
end;

Afmelden door de methode UnSubscribeBook aan te roepen:

    
UnSubscribeBook(['XBT/USD'], kde10);

Als het uitschrijven succesvol is, wordt de OnKrakenUnSubscribed-gebeurtenis aangeroepen:

  
procedure OnKrakenUnSubscribed(Sender: TObject; ChannelId: Integer; Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#unsubscribed: ' + Subscription + ' ' + Pair);
end;

Als er een fout optreedt bij het abonneren of afmelden, wordt de gebeurtenis OnKrakenSubscriptionError aangeroepen.

   
procedure OnKrakenSubscriptionError(Sender: TObject; ErrorMessage, Pair, Subscription: string; ReqID: Integer);
begin
  DoLog('#subscription error: ' + ErrorMessage);
end;

Boek-updates worden gemeld in het evenement OnKrakenData.

 
[
  0,
  {
    "as": [
      [
          "5541.30000",
          "2.50700000",
          "1534614248.123678"
      ],
      [
          "5541.80000",
          "0.33000000",
          "1534614098.345543"
      ],
      [
          "5542.70000",
          "0.64700000",
          "1534614244.654432"
      ]
    ],
    "bs": [
      [
          "5541.20000",
          "1.52900000",
          "1534614248.765567"
      ],
      [
          "5539.90000",
          "0.30000000",
          "1534614241.769870"
      ],
      [
          "5539.50000",
          "5.00000000",
          "1534613831.243486"
      ]
    ]
  },
  "book-100",
  "XBT/USD"
]

Spread

Spreadfeed om de beste bied- en vraagprijs voor het geabonneerde activapaar te tonen. Biedvolume en vraagvolume maken ook deel uit van het bericht.

Abonneer op de Spread-feed door de methode SubscribeSpread aan te roepen.

   
SubscribeSpread(['XBT/USD']);

Als het abonnement succesvol is, wordt het OnKrakenSubscribed-event aangeroepen:

   
procedure OnKrakenSubscribed(Sender: TObject;ChannelId: Integer; Pair, Subscription, ChannelName: string; 
  ReqID:Integer);
begin
  DoLog('#subscribed: ' + Subscription + ' ' + Pair + ' ' + ChannelName);
end;

Uitschrijven door de methode UnSubscribeSpread aan te roepen:

    
UnSubscribeSpread(['XBT/USD']);

Als het uitschrijven succesvol is, wordt de OnKrakenUnSubscribed-gebeurtenis aangeroepen:

   
procedure OnrakenUnSubscribed(Sender: TObject; ChannelId: Integer; Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#unsubscribed: ' + Subscription + ' ' + Pair);
end;

Als er een fout optreedt bij het abonneren of afmelden, wordt de gebeurtenis OnKrakenSubscriptionError aangeroepen.

  
procedure OnKrakenSubscriptionError(Sender: TObject; ErrorMessage, Pair, Subscription: string; 
  ReqID: Integer);
begin
  DoLog('#subscription error: ' + ErrorMessage);
end;

Spread-updates worden gemeld in de gebeurtenis OnKrakenData.

 
[
  0,
  [
    "5698.40000",
    "5700.00000",
    "1542057299.545897",
    "1.01234567",
    "0.98765432"
  ],
  "spread",
  "XBT/USD"
]

Overige methoden

U kunt zich met één methode op alle channels abonneren / afmelden:

  
SubscribeAll(['XBT/USD']);
 
UnSubscribeAll(['XBT/USD']);

De OHLC-intervalwaarde is 1 als op alle kanalen is geabonneerd.

 

 

 

Gebeurtenissen

OnConnect: wanneer de WebSocket-client verbinding maakt met de server.

OnKrakenConnect: called after successful websocket connection and when server sends system status.

OnKrakenSystemStatus: wordt aangeroepen wanneer de systeemstatus verandert.

OnKrakenSubscribed: aangeroepen na een succesvol abonnement op een kanaal.

OnKrakenUnSubscribed: aangeroepen na een succesvolle afmelding van een kanaal.

OnKrakenSubscriptionError: wordt aangeroepen als er een fout optreedt bij het abonneren/uitschrijven.

OnKrakenData: wordt aangeroepen elke keer dat een kanaalabonnement een update heeft.