Depuis sgcWebSockets 2022.3.0, l'API Kucoin est prise en charge. Actuellement, les APIs suivantes sont implémentées :
- Flux WebSocket : permet de s'abonner à certaines méthodes et de recevoir les données en temps réel. Les événements sont poussés par le serveur vers les abonnés. Utilise WebSocket comme protocole.
- 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 se connecter et s'abonner au 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.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.Create(nil);
oKucoin.Client := oClient;
oKucoin.SubscribeSymbolTicker('BTC-USDT');
procedure OnMessage(Connection: TsgcWSConnection; const aText: string);
begin
// here you will receive the ticker updates
end;
Comment passer de nouveaux ordres
Kucoin permet de trader en spot via son API REST.
Tu dois d'abord créer une clé API dans ton compte Kucoin et ajouter les privilèges pour trader en spot.
Une fois cela fait, tu peux commencer le trading spot.
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 BTC-USDT oKucoin := TsgcWSAPI_Kucoin.Create(nil); oKucoin.Kucoin.ApiKey := '<api key>'; oKucoin.Kucoin.ApiSecret := '<api secret>'; oKucoin.Kucoin.Passphrase := '<passphrase>'; ShowMessage(oKucoin.REST_API.PlaceMarketOrder(kosBuy, 'BTC-USDT', 1)); // Place Limit Order 1 BTC-USDT at 40000 oKucoin := TsgcWSAPI_Kucoin.Create(nil); oKucoin.Kucoin.ApiKey := '<api key>'; oKucoin.Kucoin.ApiSecret := '<api secret>'; oKucoin.Kucoin.Passphrase := '<passphrase>'; ShowMessage(oKucoin.REST_API.PlaceLimitOrder(kosBuy, 'BTC-USDT', 1, 40000));
