Client API Delphi Kucoin Futures

· Composants

Depuis sgcWebSockets 2022.3.0, l'API Kucoin Futures est prise en charge. Kucoin est un exchange international de cryptomonnaies multilingue. Il propose plusieurs APIs pour accéder aux données Kucoin. Les APIs suivantes sont prises en charge :

API REST : les clients peuvent demander au serveur des données de marché et de compte. Nécessite une clé API, un secret et une passphrase pour s'authentifier et utilise HTTPs comme protocole.

Comment utiliser l'API du flux WebSocket 

Pour te connecter à l'API WebSocket Kucoin, il te suffit de créer un nouveau client API Kucoin et de le rattacher à TsgcWebSocketClient.

Voir ci-dessous un exemple :

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

Kucoin propose une variété de canaux auxquels tu peux t'abonner pour recevoir des mises à jour en temps réel des données de marché, des ordres... Voici un exemple d'abonnement à un 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; 

Comment passer des ordres 

Tu dois d'abord créer une clé API dans ton compte Kucoin et ajouter les privilèges pour trader en Futures.

Une fois cela fait, tu peux commencer le trading futures.

D'abord, définis tes ApiKey, ApiSecret et Passphrase dans le composant client Kucoin, ils seront utilisés pour signer les requêtes envoyées au serveur Kucoin.

// 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));