API Delphi OKX

· Composants

Depuis sgcWebSockets 2022.6.0, le broker crypto OKX est pris en charge. OKX, anciennement connu sous le nom d'OKEx, est l'un des plus grands exchanges de trading spot et dérivés crypto. OKX est un exchange de cryptomonnaies basé aux Seychelles qui fournit une plateforme pour trader divers instruments comme le spot et les dérivés. Parmi les fonctionnalités principales de l'exchange figurent le trading spot et dérivés.

sgcWebSockets prend en charge l'API WebSocket incluant les canaux publics et privés. Le placement d'ordres est aussi pris en charge.

Configuration 

Les canaux WebSocket sont divisés en deux catégories : canaux publics et canaux privés.

Tu peux configurer les propriétés suivantes dans la propriété OKS.

Connexion

Quand le client se connecte avec succès aux serveurs OKX, l'événement OnOKXConnect est déclenché. En cas d'erreur lors de la tentative de connexion, l'événement OnOKXError sera déclenché avec les détails de l'erreur.

Après le déclenchement de l'événement OnOKXConnect, tu peux commencer à envoyer et recevoir des messages depuis les serveurs OKX.

oClient := TsgcWebSocketClient.Create(nil);
oOKX := TsgcWSAPI_OKX.Create(nil);
oOKX.Client := oClient;
oOKX.OKX.ApiKey := 'alsdjk23kandfnasbdfdkjhsdf';
oOKX.OKX.ApiSecret := 'aldskjfk3jkadknfajndsjfj23j';
oOKX.OKX.Passphrase := 'secret_passphrase';
oClient.Active := True;
procedure OnOKXConnect(Sender: TObject; aMessage, aCode, aRawMessage: string);
begin
  DoLog('#OKX Connected');
end;
procedure OnOKXError(Sender: TObject; aCode, aMessage, aRawMessage: string);
begin
  DoLog('#error: ' + aMessage);
end; 

S'abonner aux canaux 

Le flux websocket fournit des mises à jour de marché en temps réel pour les ordres et les trades. Le flux websocket comporte certains canaux publics comme ticker, trades...

oClient := TsgcWebSocketClient.Create(nil);
oOKX := TsgcWSAPI_OKX.Create(nil);
oOKX.Client := oClient;
oOKX.OKX.ApiKey := 'alsdjk23kandfnasbdfdkjhsdf';
oOKX.OKX.ApiSecret := 'aldskjfk3jkadknfajndsjfj23j';
oOKX.OKX.Passphrase := 'secret_passphrase';
oClient.Active := True;
procedure OnOKXConnect(Sender: TObject; aMessage, aCode, aRawMessage: string);
begin
  oOKX.SubscribeInstruments(okxitFutures);
end; 

Passer des ordres 

Tu peux passer un ordre seulement si tu as des fonds suffisants.

// Place Martket Order
TsgcWSAPI_OKX1.PlaceMarketOrder(okxosBuy, 'ETH-BTC', 1);
// Place Limit Order
TsgcWSAPI_OKX1.PlaceLimitOrder(okxosBuy, 'ETH-BTC', 1, 0.25);

API OKX WebSockets Delphi

En savoir plus sur l'API OKX sgcWebSockets. https://www.esegece.com/products/websockets/apis/cryptos/okx