Klient API ByBit został zaktualizowany do wersji V5. Obsługiwane są następujące protokoły:
- WebSocket API: łączy się z serwerem WebSocket i dostarcza aktualizacje danych rynkowych w czasie rzeczywistym, zmiany na koncie i nie tylko.
- REST API: wysyła żądania HTTP w celu pobierania danych rynkowych, składania zleceń, danych konta itd.
Properties
W właściwości Bybit możesz skonfigurować następujące właściwości.
- ApiKey: możesz wygenerować nowy klucz API na swoim koncie Bybit — wystarczy skopiować wartość do tej właściwości. Jeśli APIKey jest ustawiony, klient połączy się z prywatnym serwerem WebSocket. Jeśli jest pusty, połączy się z publicznym serwerem WebSocket.
- ApiSecret: tajna wartość klucza API.
- SignatureExpires: liczba sekund ważności podpisu (domyślnie 10 sekund).
- TestNet: po włączeniu łączy się z demonstracyjnym kontem Bybit TestNet (domyślnie wyłączone).
Connection
Gdy klient pomyślnie połączy się z serwerami Bybit, zostaje wywołane zdarzenie OnConnect. Po wywołaniu zdarzenia OnConnect możesz zacząć wysyłać i odbierać wiadomości z serwerów Bybit. Jeśli łączysz się z prywatnym kanałem WebSocket, musisz poczekać na wywołanie zdarzenia OnBybitAuthentication i sprawdzić, czy parametr success ma wartość true, zanim zasubskrybujesz jakikolwiek kanał.
Klient obsługuje kilka API, dlatego za pomocą właściwości BybitClient ustaw, którego API chcesz używać:
- bybSpot
- bybPerpetual
- bybLinear
- bybFutures
Poniżej znajdziesz przykład łączenia się z prywatnym API WebSocket Spot.
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;
Po pomyślnym połączeniu z serwerem WebSocket Spot możesz zacząć subskrybować kanały WebSocket — wystarczy uzyskać dostęp do właściwości REST_API i wywołać dowolną z dostępnych metod subskrypcji/anulowania subskrypcji.
Subscribe to WebSocket Channels
Poniżej znajdziesz przykład subskrypcji prywatnych kanałów WebSocket Spot po pomyślnym uwierzytelnieniu.
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;
Placing Orders
Poniżej znajdziesz przykład składania zlecenia rynkowego.
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);
