De ByBit-client-API is geüpgraded naar versie V5. De volgende protocollen worden ondersteund:
- WebSocket-API: verbindt met een websocket-server en levert realtime market data-updates, accountwijzigingen en meer.
- REST-API: verstuurt HTTP-requests om market data op te halen, orders te plaatsen, accountdata op te vragen...
Eigenschappen
Je kunt de volgende eigenschappen configureren in de Bybit-eigenschap.
- ApiKey: je kunt een nieuwe API-sleutel aanvragen in je Bybit-account, kopieer de waarde naar deze eigenschap. Als de ApiKey is ingesteld, verbindt de client met de private websocket-server. Als deze leeg is, verbindt hij met de publieke WebSocket-server.
- ApiSecret: dit is de secret-waarde van de API.
- SignatureExpires: aantal seconden waarna de signature verloopt (standaard 10 seconden).
- TestNet: indien ingeschakeld, verbindt de client met het Bybit TestNet-demo-account (standaard uitgeschakeld).
Verbinding
Wanneer de client succesvol verbinding maakt met de Bybit-servers, wordt de gebeurtenis OnConnect aangeroepen. Nadat OnConnect is aangeroepen, kun je beginnen met het versturen en ontvangen van berichten naar/van Bybit-servers. Als je verbinding maakt met het private websocket-kanaal, moet je wachten tot OnBybitAuthentication wordt aangeroepen en controleren of de success-parameter true is, voordat je je op een kanaal abonneert.
De client ondersteunt meerdere API's. Gebruik de eigenschap BybitClient om in te stellen welke API je wilt gebruiken:
- bybSpot
- bybPerpetual
- bybLinear
- bybFutures
Hieronder vind je een voorbeeld van verbinden met de WebSocket Spot Private-API.
oClient := TsgcWebSocketClient.Create(nil);
oBybit := TsgcWSAPI_Bybit.Create(nil);
oBybit.Client := oClient;
oBybit.Bybit.ApiKey := 'alsdjk23kandfnasbdfdkjhsdf';
oBybit.Bybit.ApiSecret := 'aldskjfk3jkadknfajndsjfj23j';
oBybit.BybitClient := bybSpot;
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
DoLog('#Bybit Connected');
end;
Na een succesvolle verbinding met de Spot WebSocket-server kun je je op WebSocket-kanalen abonneren door de eigenschap REST_API te gebruiken en een van de beschikbare subscribe-/unsubscribe-methoden aan te roepen.
Abonneren op WebSocket-kanalen
Hieronder vind je een voorbeeld van abonneren op de private Spot WebSocket-kanalen na een succesvolle authenticatie.
oClient := TsgcWebSocketClient.Create(nil);
oBybit := TsgcWSAPI_Bybit.Create(nil);
oBybit.Client := oClient;
oBybit.Bybit.ApiKey := 'alsdjk23kandfnasbdfdkjhsdf';
oBybit.Bybit.ApiSecret := 'aldskjfk3jkadknfajndsjfj23j';
oBybit.BybitClient := bybSpot;
oClient.Active := True;
procedure OnBybitAuthentication(Sender: TObject; aSuccess: Boolean; const aError, aRawMessage: string)
begin
if aSuccess then
begin
oClient.SubscribeOrderBook('BTCUSDT');
oClient.SubscribeTrade('BTCUSDT');
end;
end;
Orders plaatsen
Hieronder vind je een voorbeeld van het plaatsen van een market-order
oClient := TsgcWebSocketClient.Create(nil);
oBybit := TsgcWSAPI_Bybit.Create(nil);
oBybit.Client := oClient;
oBybit.Bybit.ApiKey := 'alsdjk23kandfnasbdfdkjhsdf';
oBybit.Bybit.ApiSecret := 'aldskjfk3jkadknfajndsjfj23j';
oBybit.BybitClient := bybSpot;
oBybit.REST_API.PlaceMarketOrder('BTCUSDT', bbosBuy, 1);
