API Bybit

Bybit

 

Unterstützte APIs

 

Derzeit ist die unterstützte API-Version V5. Die V5-API bringt Einheitlichkeit und Effizienz in die Produktlinien von Bybit und vereint Spot, Derivatives und Options in einem Satz von Spezifikationen.

 

OpenAPI Version Kontotyp Linear Inverse Spot Options
USDT Perpetual USDC Perpetual USDC Futures Perpetual Futures
V5 Unified Trading Account siehe Hinweis
Klassisches Konto      
V3 Unified Trading Account        
Klassisches Konto    

 

*Hinweis: Das Unified-Konto unterstützt inversen Handel. Die verwendete Margin stammt jedoch aus der Inverse-Derivatives-Wallet anstelle der Unified-Wallet.

 

Properties

Sie können die folgenden Eigenschaften in der Bybit-Eigenschaft konfigurieren.

 

 

Verbindung

Wenn sich der Client erfolgreich mit den Bybit-Servern verbindet, wird das Ereignis OnConnect ausgelöst. Nachdem das Ereignis OnConnect ausgelöst wurde, können Sie beginnen, Nachrichten an die Bybit-Server zu senden und von ihnen zu empfangen. Wenn Sie sich mit dem privaten WebSocket-Kanal verbinden, müssen Sie warten, bis das Ereignis OnBybitAuthentication ausgelöst wird, und prüfen, ob der Parameter success true ist, bevor Sie einen Kanal abonnieren.

 

Der Client unterstützt mehrere APIs, verwenden Sie also die Eigenschaft BybitClient, um festzulegen, welche API Sie verwenden möchten:

 

 

Nachfolgend finden Sie ein Beispiel für die Verbindung mit der 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;

Nach einer erfolgreichen Verbindung zum Spot-WebSocket-Server können Sie beginnen, WebSocket-Kanäle zu abonnieren; greifen Sie einfach auf die Eigenschaft SPOT zu und rufen Sie dann eine der verfügbaren Subscribe-/Unsubscribe-Methoden auf.

 

Ereignisse

Der Bybit-Client implementiert die folgenden Ereignisse, um den Verbindungsablauf zu steuern und vom WebSocket-Server gesendete Daten zu erhalten:

 

 

WebSocket API

Der WebSocket-Feed stellt Echtzeit-Marktdaten-Aktualisierungen für Orders und Trades bereit. Der WebSocket-Feed hat einige öffentliche Kanäle wie ticker, trades ...

 

Sie können die folgenden Kanäle abonnieren:

 

Methode Öffentlich oder privat Beschreibung
SubscribeOrderBook Öffentlich Den Orderbook-Stream abonnieren. Unterstützt verschiedene Tiefen.
SubscribeTrade Öffentlich Den Stream der jüngsten Trades abonnieren.
SubscribeTicker Öffentlich Abonniert den Ticker-Stream.
SubscribeKLine Öffentlich Abonniert den Klines-Stream.
SubscribeLiquidation Öffentlich Den Liquidation-Stream abonnieren
SubscribeLT_KLine Öffentlich

Abonniert den Kline-Stream des Leveraged Token.

SubscribeLT_Ticker Öffentlich Abonniert den Leveraged-Token-Ticker-Stream.
SubscribeLT_Nav Öffentlich Abonniert den Leveraged-Token-Ticker-Stream.
SubscribePosition Private Abonniert den NAV-Stream des Leveraged Token.
SubscribeExecution Private Subscribe
SubscribeOrder Private Subscribe
SubscribeWallet Private Subscribe
SubscribeGreek Private Subscribe
SubscribeDcp Private Subscribe
SubscribeInsurance Öffentlich Abonniert den Insurance-Fund-Stream.
SubscribeOrderPriceLimit Öffentlich Abonniert den Order-Preislimit-Stream.
SubscribeADLAlert Öffentlich Abonniert den Auto-Deleverage-Alarm-Stream.
SubscribeFastExecution Private Abonnieren Sie den Fast-Execution-Stream.

 

Nachfolgend ein Beispiel für das Abonnieren privater WebSocket-Kanäle nach einer erfolgreichen Authentifizierung.


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;

REST API

Die REST-API hat eine Liste öffentlicher und privater Methoden, um Daten von Märkten, privatem Konto und Wallet anzufordern. Nachfolgend finden Sie eine Liste der verfügbaren Methoden.

 

Methode Öffentlich / Privat
GetServerTime Öffentlich
GetKLine Öffentlich
GetMarkPriceKLine Öffentlich
GetIndexPriceKLine Öffentlich
GetPremiumIndexPriceKLine Öffentlich
GetInstrumentsInfo Öffentlich
GetOrderBook Öffentlich
GetTickers Öffentlich
GetFundingRateHistory Öffentlich
GetPublicRecentTradingHistory Öffentlich
GetOpenInterest Öffentlich
GetHistoricalVolatility Öffentlich
GetInsurance Öffentlich
GetRiskLimit Öffentlich
GetDeliveryPrice Öffentlich
GetLongShortRatio Öffentlich
PlaceOrder Private
PlaceMarketOrder Private
PlaceLimitOrder Private
AmendOrder Private
CancelOrder Private
GetOpenOrders Private
CancelAllOrders Private
GetOrderHistory Private
GetPositionInfo Private
SetLeverage Private
SwitchCrossIsolatedMargin Private
SetTPSLMode Private
SwitchPositionMode Private
SetRiskLimit Private
SetTradingStop Private
SetAutoAddMargin Private
AddOrReduceMargin Private
GetExecution Private
GetClosedPNL Private
ConfirmNewRiskLimit Private
GetWalletBalance Private
GetAccountInfo Private
GetTransactionLog Private
BatchPlaceOrder Private
BatchAmendOrder Private
BatchCancelOrder Private
SetDCP Private
GetFeeRate Private
GetCollateralInfo Private
SetMarginMode Private
GetBorrowHistory Private
GetCoinGreeks Private
GetCoinInfo Private
GetAllCoinsBalance Private
CreateInternalTransfer Private
GetInternalTransferList Private
GetDepositRecords Private
GetDepositAddress Private
CreateWithdrawal Private
CancelWithdrawal Private
GetWithdrawalRecords Private

 

Nachfolgend ein Beispiel für das Abrufen der offenen Orders.


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.GetAccountInfo();