Kraken Futures API

· Bileşenler

sgcWebSockets 4.4.8 sürümünden itibaren Kraken Futures API desteklenir

https://futures.kraken.com/

Aşağıdaki API'ler desteklenir:

WebSockets Public API: herkese açık bir WebSocket sunucusuna bağlanır.
WebSockets Private API: özel bir WebSocket sunucusuna bağlanır ve sunucuya karşı Kimlik Doğrulaması yapmak için bir API Key ve API Secret gerektirir.
REST Public API: herkese açık bir REST sunucusuna bağlanır.
REST Private API: herkese açık bir REST sunucusuna bağlanır ve sunucuya karşı Kimlik Doğrulaması yapmak için bir API Key ve API Secret gerektirir.

Kraken Futures WebSocket Public API 

Bazı herkese açık kanallar kimlik doğrulaması olmadan sağlanır. Örnek: Ticker kanalına abone olabilir ve websocket protokolü aracılığıyla piyasa verisi güncellemesi alabilirsiniz.

// Subscribe to a ticker calling SubscribeTicker method:
SubscribeTicker(['PI_XBTUSD']);
// If subscription is successful, OnKrakenFuturesSubscribed event will be called:
procedure OnKrakenFuturesSubscribed(Sender: TObject; Feed, ProductId: string);
begin
  DoLog('#subscribed: ' + Feed + ' ' + ProductId);
end;
//UnSubscribe calling UnSubscribeTicker method:
UnSubscribeTicker(['PI_XBTUSD']);
//If unsubscription is successful, OnKrakenFuturesUnSubscribed event will be called:
procedure OnKrakenFuturesUnSubscribed(Sender: TObject; Feed, ProductId: string);
begin
  DoLog('#unsubscribed: ' + Feed + ' ' + ProductId);
end;
// If there is an error while trying to subscribe / unsubscribe, OnKrakenFuturesError event will be called.
procedure OnKrakenFuturesError(Sender: TObject; Error: string);
begin
  DoLog('#error: ' + Error);
end; 

Kraken Futures WebSocket Private API 

WebSocket özel akışlarına abone olma ve abonelikten çıkma istekleri, kullanıcı api_secret'ı ile imzalanmış bir challenge mesajı gerektirir.

Challenge, WebSocket API Public Bölümünde gösterildiği gibi (api_key kullanılarak) elde edilir.

Kimlik doğrulamalı istekler, hem orijinal challenge mesajını (original_challenge) hem de imzalanmış olanı (signed_challenge) JSON biçiminde içermelidir.

Bir Websockets Challenge almak için, Kraken Options Bileşeninde bir API Key ve API Secret ayarlanmalıdır; api anahtarı hesabınızda Kraken tarafından sağlanır 

Örnek: AccountLog özel kanalına abone olun.

// This subscription feed publishes account information.
SubscribeAccountLog();
// Later, you can unsubscribe from AccountLog, calling UnSubscribeAccountLog method
UnSubscribeAccountLog();
Response example from server
{  
'feed':'account_log_snapshot',
'logs':[  
{  
'id':1690,
'date':'2019-07-11T08:00:00.000Z',
'asset':'bch',
'info':'funding 
 rate change',
'booking_uid':'86fdc252-1b6e-40ec-ac1d-c7bd46ddeebf',
'margin_account':'f-bch:usd',
'old_balance':0.01215667051,
'new_balance':0.01215736653,
'old_average_entry_price':0.0,
'new_average_entry_price':0.0,
'trade_price':0.0,
'mark_price':0.0,
'realized_pnl':0.0,
'fee':0.0,
'execution':'',
'collateral':'bch',
'funding_rate':-8.7002552653e-08,
'realized_funding':6.9602e-07
}
]
} 

Kraken Futures REST Public API 

Public REST metotlarına erişmek için HTTP Protokolünü kullanın. Örnek: bir Sembolün Emir Defterinin anlık görüntüsünü almak için GetOrderBook'u çağırın.

KrakenFutures.REST_API.GetOrderBook('PI_XBTUSD'); 

Kraken Futures REST Private API 

Özel hesabınıza erişmek, emir göndermek, emirleri iptal etmek için REST Private API'sini kullanın...

oOrder := TsgcHTTPKrakenFuturesOrder.Create;
Try
  oOrder.Side := kosfBuy;
  oOrder.Symbol := 'PI_XBTUSD';
  oOrder.OrderType := kotfMKT;
  oOrder.Size := 1;
  KrakenFutures.REST_API.SendOrder(oOrder);  
Finally
  oOrder.Free;
End; 
});

Kraken Futures API

Kraken Futures Sunucusuna bağlanın: WebSocket ve REST APIleri https://www.esegece.com/help/sgcWebSockets/#t=Components%2FAPIs%2FAPI%2FAPI_Kraken_Futures.htm