API Kraken | WebSockets Public API

Connection

URL: wss://ws.kraken.com (v1) veya wss://ws.kraken.com/v2 (v2, önerilen)

Bileşen artık Version özelliği aracılığıyla WebSocket API v2'yi destekler (varsayılan: 2). Eski v1 uç noktasını kullanmak için Kraken.Version := 1 ayarlayın.

 

Soket açıldıktan sonra, bir abone olma isteği mesajı göndererek genel bir kanala abone olabilirsiniz.

 

Genel Hususlar

 

Supported Pairs

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

 

Yöntemler

Ping

İstemci, bağlantının canlı olup olmadığını belirlemek için sunucuya ping atabilir, sunucu pong ile yanıt verir.

Bu, WebSockets standardındaki sunucu tarafından başlatılan varsayılan ping'in aksine bir uygulama düzeyi ping'tir

Ticker

Ticker bilgisi, belirli bir para birimi çifti için en iyi ask ve en iyi bid fiyatlarını, 24 saatlik hacmi, son trade fiyatını, hacim ağırlıklı ortalama fiyatı vb. içerir. Bir trade veya bir grup trade her gerçekleştiğinde bir ticker mesajı yayınlanır.

SubscribeTicker yöntemini çağırarak bir ticker'a abone olun:


SubscribeTicker(['XBT/USD']);

Abonelik başarılı olursa, OnKrakenSubscribed olayı çağrılır:


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

UnSubscribeTicker yöntemini çağırarak UnSubscribe yapın:


UnSubscribeTicker(['XBT/USD']);

Abonelik kaldırma başarılı olursa, OnKrakenUnSubscribed olayı çağrılır:


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

Abone olmaya / abonelikten çıkmaya çalışırken bir hata olursa, OnKrakenSubscriptionError olayı çağrılır.


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

Ticker güncellemeleri OnKrakenData olayında bildirilir.

 
[
  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

OHLC için abone olunduğunda, son geçerli mumun (endtime'dan bağımsız olarak) bir anlık görüntüsü gönderilir, ardından çalışan mumun güncellemeleri gelir. Örneğin, 1 dakikalık muma abone olunmuşsa ve 5 dakika boyunca hiç işlem olmamışsa, 5 dakika önceki son 1 dakikalık mumun bir anlık görüntüsü yayımlanır. endtime, bunun eski bir mum olduğunu belirlemek için kullanılabilir.

SubscribeOHLC yöntemini çağırarak bir OHLC'ye abone olun, pair ve interval geçirmeniz gerekir.


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

Abonelik başarılı olursa, OnKrakenSubscribed olayı çağrılır:


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

UnSubscribeOHLC yöntemini çağırarak abonelikten çıkın:

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

Abonelik kaldırma başarılı olursa, OnKrakenUnSubscribed olayı çağrılır:

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

Abone olmaya / abonelikten çıkmaya çalışırken bir hata olursa, OnKrakenSubscriptionError olayı çağrılır.

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

OHLC güncellemeleri OnKrakenData olayında bildirilecektir.


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

Trade

Bir para birimi çifti için işlem (trade) akışı.

SubscribeTrade yöntemini çağırarak Trade beslemesine abone olun.

 
SubscribeTrade(['XBT/USD']);

Abonelik başarılı olursa, OnKrakenSubscribed olayı çağrılır:

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

UnSubscribeTrade yöntemini çağırarak UnSubscribe yapın:

 
UnSubscribeTrade(['XBT/USD']);

Abonelik kaldırma başarılı olursa, OnKrakenUnSubscribed olayı çağrılır:

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

Abone olmaya / abonelikten çıkmaya çalışırken bir hata olursa, OnKrakenSubscriptionError olayı çağrılır.

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

İşlem (trade) güncellemeleri OnKrakenData olayında bildirilir.


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

Book

Sipariş defteri seviyeleri. Abonelikte, belirtilen derinlikte bir anlık görüntü yayımlanır, anlık görüntüyü takiben seviye güncellemeleri yayımlanır.

SubscribeBook yöntemini çağırarak bir Book'a abone olun, pair ve depth değerlerini geçirmeniz gerekir.

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

Abonelik başarılı olursa, OnKrakenSubscribed olayı çağrılır:

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

UnSubscribeBook yöntemini çağırarak UnSubscribe yapın:

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

Abonelik kaldırma başarılı olursa, OnKrakenUnSubscribed olayı çağrılır:

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

Abone olmaya / abonelikten çıkmaya çalışırken bir hata olursa, OnKrakenSubscriptionError olayı çağrılır.

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

Defter güncellemeleri OnKrakenData olayında bildirilir.

 
[
  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

Abone olunan varlık çifti için en iyi alış ve satış fiyatını göstermek üzere spread feed'i. Alış hacmi ve satış hacmi de mesajın bir parçasıdır.

SubscribeSpread yöntemini çağırarak Spread feed'ine abone olun.

   
SubscribeSpread(['XBT/USD']);

Abonelik başarılı olursa, OnKrakenSubscribed olayı çağrılır:

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

UnSubscribeSpread yöntemini çağırarak aboneliği iptal edin:

    
UnSubscribeSpread(['XBT/USD']);

Abonelik kaldırma başarılı olursa, OnKrakenUnSubscribed olayı çağrılır:

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

Abone olmaya / abonelikten çıkmaya çalışırken bir hata olursa, OnKrakenSubscriptionError olayı çağrılır.

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

Spread güncellemeleri OnKrakenData olayında bildirilir.

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

Diğer Yöntemler

Tek bir yöntemle tüm kanallara abone olabilir / abonelikten çıkabilirsiniz:

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

Tüm kanallar abone olunmuşsa OHLC aralık değeri 1'dir.

 

 

 

Olaylar

OnConnect: websocket istemcisi sunucuya bağlandığında.

OnKrakenConnect: başarılı websocket bağlantısından sonra ve sunucu sistem durumu gönderdiğinde çağrılır.

OnKrakenSystemStatus: sistem durumu değiştiğinde çağrılır.

OnKrakenSubscribed: bir kanala başarılı bir abonelikten sonra çağrılır.

OnKrakenUnSubscribed: bir kanaldan başarılı bir abonelikten çıkmanın ardından çağrılır.

OnKrakenSubscriptionError: abone olma / abonelikten çıkma denemesinde bir hata oluşursa çağrılır.

OnKrakenData: bir kanal aboneliğinde her güncelleme olduğunda çağrılır.