API OKX para Delphi

· Componentes

A partir de sgcWebSockets 2022.6.0 se admite el bróker de criptomonedas OKX. OKX, anteriormente conocido como OKEx, es uno de los mayores exchanges de spot y derivados de criptomonedas. OKX es un exchange de criptomonedas con sede en Seychelles que proporciona una plataforma para operar con distintos instrumentos como spot y derivados. Entre sus características principales destacan el trading spot y de derivados.

sgcWebSockets admite la API WebSocket incluyendo los canales públicos y privados. También se admite colocar órdenes.

Configuración 

Los canales WebSocket se dividen en dos categorías: canales públicos y privados.

Puedes configurar las siguientes propiedades dentro de la propiedad OKS.

Conexión

Cuando el cliente se conecta correctamente a los servidores de OKX, se dispara el evento OnOKXConnect. Si se produce algún error al intentar conectar, se disparará el evento OnOKXError con los detalles del error.

Una vez disparado el evento OnOKXConnect, ya puedes empezar a enviar y recibir mensajes desde los servidores de 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; 

Suscribirse a canales 

El feed websocket proporciona actualizaciones de datos de mercado en tiempo real para órdenes y trades. El feed tiene varios canales públicos como 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; 

Colocar órdenes 

Sólo puedes colocar una orden si tienes fondos suficientes.

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

Delphi WebSockets OKX API

Lee más sobre la API OKX de sgcWebSockets. https://www.esegece.com/products/websockets/apis/cryptos/okx