Delphi Kucoin Futures API-client

· Componenten

Vanaf sgcWebSockets 2022.3.0 wordt de Kucoin Futures-API ondersteund. Kucoin is een internationale meertalige cryptocurrency-exchange. Het biedt een aantal API's om Kucoin-data te benaderen. De volgende API's worden ondersteund:

REST-API: clients kunnen markt- en account-data opvragen bij de server. Vereist een API-sleutel, secret en passphrase voor authenticatie en gebruikt HTTPs als protocol.

Hoe de WebSocket-feed-API gebruiken 

Om verbinding te maken met de Kucoin WebSocket-API, maak je gewoon een nieuwe Kucoin-API-client aan en koppel je die aan TsgcWebSocketClient.

Hieronder een voorbeeld:

oClient := TsgcWebSocketClient.Create(nil);
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Client := oClient;
oClient.Active := True;

Kucoin biedt verschillende kanalen waarop je je kunt abonneren om realtime-updates van marktdata, orders... te ontvangen. Hieronder een voorbeeld van hoe je je abonneert op een ticker:

oClient := TsgcWebSocketClient.Create(nil);
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Client := oClient;
oKucoin.SubscribeSymbolTickerV2('XBTUSDM');
procedure OnMessage(Connection: TsgcWSConnection; const aText: string);
begin
// here you will receive the ticker updates
end;

Orders plaatsen 

Maak eerst een API-sleutel aan in je Kucoin-account en voeg privileges toe om met futures te handelen.

Zodra dit is gedaan, kun je beginnen met futures-trading.

Stel eerst je ApiKey, ApiSecret en Passphrase in op het Kucoin-client-component. Deze worden gebruikt om de requests die naar de Kucoin-server worden gestuurd te ondertekenen.

// Place Market Order 1 XBTUSDM
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Kucoin.ApiKey := '<api key>';
oKucoin.Kucoin.ApiSecret := '<api secret>';
oKucoin.Kucoin.Passphrase := '<passphrase>';
ShowMessage(oKucoin.REST_API.PlaceMarketOrder(kosBuy, 'XBTUSDM', 1));
// Place Limit Order 1 XBTUSDM at 40000
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Kucoin.ApiKey := '<api key>';
oKucoin.Kucoin.ApiSecret := '<api secret>';
oKucoin.Kucoin.Passphrase := '<passphrase>';
ShowMessage(oKucoin.REST_API.PlaceLimitOrder(kosBuy, 'XBTUSDM', 1, 40000));