API Bybit

Bybit

 

API supportate

 

Attualmente, la versione dell'API supportata è V5. L'API V5 introduce uniformità ed efficienza nelle linee di prodotto di Bybit, unificando Spot, Derivati e Opzioni in un unico insieme di specifiche.

 

Versione OpenAPI Tipo di conto Linear Inverso Spot Opzioni
USDT Perpetual USDC Perpetual USDC Futures Perpetual Futures
V5 Account di trading unificato vedi nota
Account classico      
V3 Account di trading unificato        
Account classico    

 

*Nota: l'account Unified supporta il trading inverso. Tuttavia, il margine utilizzato proviene dal wallet dei derivati inversi anziché dal wallet unificato.

 

Proprietà

È possibile configurare le seguenti proprietà nella proprietà Bybit.

 

 

Connessione

Quando il client si connette con successo ai server Bybit, viene generato l'evento OnConnect. Dopo la generazione dell'evento OnConnect, è possibile iniziare a inviare e ricevere messaggi da/verso i server Bybit. Se ci si connette al canale websocket privato, è necessario attendere che venga generato l'evento OnBybitAuthentication e verificare che il parametro success sia true, prima di sottoscrivere qualsiasi canale.

 

Il client supporta diverse API; utilizzare la proprietà BybitClient per impostare quale API si desidera usare:

 

 

Di seguito è riportato un esempio di connessione all'API privata 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;

Dopo una connessione riuscita al Server WebSocket Spot, è possibile iniziare a sottoscrivere i canali WebSocket; accedere alla proprietà SPOT e quindi chiamare uno qualsiasi dei metodi subscribe/unsubscribe disponibili.

 

Eventi

Il client bybit implementa i seguenti eventi per controllare il flusso della connessione e ottenere i dati inviati dal server WebSocket:

 

 

WebSocket API

Il feed websocket fornisce aggiornamenti in tempo reale dei dati di mercato per ordini e trade. Il feed websocket ha alcuni canali pubblici come ticker, trade...

 

Può sottoscrivere i seguenti canali:

 

Method Pubblico o Privato Description
SubscribeOrderBook Public Sottoscrivere il flusso dell'order book. Supporta profondità diverse.
SubscribeTrade Public Sottoscrivi allo stream degli scambi recenti.
SubscribeTicker Public Effettua la sottoscrizione allo stream del ticker.
SubscribeKLine Public Sottoscriviti allo stream klines.
SubscribeLiquidation Public Iscrizione allo stream di liquidazione
SubscribeLT_KLine Public

Si iscrive allo stream kline dei leveraged token.

SubscribeLT_Ticker Public Iscrivi al flusso del ticker del token con leva finanziaria.
SubscribeLT_Nav Public Iscrivi al flusso del ticker del token con leva finanziaria.
SubscribePosition Privato Si iscrive allo stream nav dei leveraged token.
SubscribeExecution Privato Subscribe
SubscribeOrder Privato Subscribe
SubscribeWallet Privato Subscribe
SubscribeGreek Privato Subscribe
SubscribeDcp Privato Subscribe
SubscribeInsurance Public Sottoscrive il flusso del fondo assicurativo.
SubscribeOrderPriceLimit Public Iscriviti allo stream del limite di prezzo degli ordini.
SubscribeADLAlert Public Sottoscrivere lo stream di alert di auto-deleveraging.
SubscribeFastExecution Privato Abbonati allo stream di esecuzione rapida.

 

Di seguito è riportato un esempio di sottoscrizione ai canali WebSocket privati dopo un'autenticazione riuscita.


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

La REST API dispone di un elenco di metodi pubblici e privati per richiedere dati da: mercati, account privato e wallet. Di seguito è riportato un elenco dei metodi disponibili.

 

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

 

Di seguito è riportato un esempio di recupero degli ordini aperti.


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