Vanaf sgcWebSockets 2022.6.0 wordt de OKX Crypto Broker ondersteund. OKX, voorheen bekend als OKEx, is een van de grootste crypto spot- en derivatenhandelsbeurzen. OKX is een op de Seychellen gevestigde cryptocurrency-exchange die een platform biedt voor het verhandelen van diverse instrumenten zoals spot en derivaten. Tot de kernfuncties van de exchange behoren spot- en derivatenhandel.
sgcWebSockets ondersteunt de WebSocket-API inclusief de publieke en privé-kanalen. Het plaatsen van orders wordt ook ondersteund.
Configuratie
WebSocket-kanalen zijn onderverdeeld in twee categorieën: publieke en privé-kanalen.
- Publieke kanalen: waaronder het tickers-kanaal, K-Line-kanaal, limit-price-kanaal, order-book-kanaal en mark-price-kanaal enz. -- vereisen geen login.
- Privé-kanalen: waaronder het account-kanaal, order-kanaal en position-kanaal enz. -- vereisen een login.
Je kunt de volgende eigenschappen configureren in de OKS-eigenschap.
- ApiKey: je kunt een nieuwe api-sleutel aanvragen in je OKX-account; kopieer de waarde naar deze eigenschap.
- ApiSecret: de secret-waarde van de api.
- Passphrase: de aangepaste string die wordt gedefinieerd bij het aanmaken van een nieuwe api-sleutel.
- IsDemo: als dit is ingeschakeld, wordt verbinding gemaakt met het OKX Demo-account (standaard uitgeschakeld).
- IsPrivate: als dit is ingeschakeld, kun je verbinding maken met privé-kanalen (standaard uitgeschakeld).
Verbinding
Wanneer de client succesvol verbinding maakt met de OKX-servers, wordt het event OnOKXConnect getriggerd. Als er een fout optreedt bij het maken van verbinding, wordt het event OnOKXError getriggerd met de foutdetails.
Nadat het event OnOKXConnect is getriggerd, kun je beginnen met het versturen en ontvangen van berichten van de OKX-servers.
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;
Abonneren op kanalen
De WebSocket-feed levert realtime-marktdata-updates voor orders en trades. De WebSocket-feed heeft enkele publieke kanalen zoals 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;
Orders plaatsen
Je kunt alleen een order plaatsen als je voldoende saldo hebt.
// Place Martket Order TsgcWSAPI_OKX1.PlaceMarketOrder(okxosBuy, 'ETH-BTC', 1); // Place Limit Order TsgcWSAPI_OKX1.PlaceLimitOrder(okxosBuy, 'ETH-BTC', 1, 0.25);
