Actuellement, la version d'API supportée est V5. L'API V5 apporte uniformité et efficacité aux gammes de produits Bybit, unifiant Spot, Dérivés et Options dans un ensemble de spécifications.
| Version OpenAPI | Type de compte | Linéaire | Inverse | Spot | Options | |||
|---|---|---|---|---|---|---|---|---|
| USDT Perpetual | USDC Perpétuel | Futures USDC | Perpétuel | Futures | ||||
| V5 | Compte de trading unifié | ✓ | ✓ | ✓ | voir note | ✓ | ✓ | |
| Compte classique | ✓ | ✓ | ✓ | ✓ | ||||
| V3 | Compte de trading unifié | ✓ | ✓ | ✓ | ||||
| Compte classique | ✓ | ✓ | ✓ | ✓ | ||||
*Remarque : le compte Unified prend en charge le trading inverse. Cependant, la marge utilisée provient du portefeuille de dérivés inverses plutôt que du portefeuille unifié.
Vous pouvez configurer les propriétés suivantes dans la propriété Bybit.
Lorsque le client se connecte avec succès aux serveurs Bybit, l'événement OnConnect est déclenché. Après le déclenchement de l'événement OnConnect, vous pouvez commencer à envoyer et recevoir des messages vers/depuis les serveurs Bybit. Si vous vous connectez au canal websocket privé, vous devez attendre que l'événement OnBybitAuthentication soit déclenché et vérifier que le paramètre success est true, avant de vous abonner à un canal.
Le client prend en charge plusieurs API ; utilisez la propriété BybitClient pour définir quelle API vous souhaitez utiliser :
Vous trouverez ci-dessous un exemple de connexion à l'API privée 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;
Après une connexion réussie au serveur WebSocket Spot, vous pouvez commencer à vous abonner aux canaux WebSocket, accédez simplement à la propriété SPOT puis appelez l'une des méthodes d'abonnement/désabonnement disponibles.
Le client bybit implémente les événements suivants pour contrôler le flux de connexion et obtenir les données envoyées depuis le serveur WebSocket :
Le flux WebSocket fournit des mises à jour de données de marché en temps réel pour les ordres et les trades. Le flux WebSocket propose des canaux publics tels que ticker, trades…
Vous pouvez vous abonner aux canaux suivants :
| Méthode | Public ou privé | Description |
| SubscribeOrderBook | Public | S'abonner au flux du carnet d'ordres. Prend en charge différentes profondeurs. |
| SubscribeTrade | Public | S'abonner au flux des transactions récentes. |
| SubscribeTicker | Public | S'abonner au flux du ticker. |
| SubscribeKLine | Public | S'abonner au flux de klines. |
| SubscribeLiquidation | Public | S'abonner au flux de liquidation |
| SubscribeLT_KLine | Public |
S'abonner au flux de bougies du jeton à effet de levier. |
| SubscribeLT_Ticker | Public | S'abonner au flux de ticker des jetons à effet de levier. |
| SubscribeLT_Nav | Public | S'abonner au flux de ticker des jetons à effet de levier. |
| SubscribePosition | Privé | S'abonner au flux nav du jeton à effet de levier. |
| SubscribeExecution | Privé | S'abonner |
| SubscribeOrder | Privé | S'abonner |
| SubscribeWallet | Privé | S'abonner |
| SubscribeGreek | Privé | S'abonner |
| SubscribeDcp | Privé | S'abonner |
| SubscribeInsurance | Public | S'abonner au flux du fonds d'assurance. |
| SubscribeOrderPriceLimit | Public | S'abonner au flux de limite de prix des ordres. |
| SubscribeADLAlert | Public | S'abonner au flux d'alerte de délevier automatique. |
| SubscribeFastExecution | Privé | S'abonner au flux d'exécution rapide. |
Vous trouverez ci-dessous un exemple d'abonnement aux canaux websocket privés après une authentification réussie.
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;
L'API REST dispose d'une liste de méthodes publiques et privées pour demander des données : marchés, compte privé et portefeuille. Retrouvez ci-dessous une liste des méthodes disponibles.
| Méthode | Public / Privé |
| 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 | Privé |
| PlaceMarketOrder | Privé |
| PlaceLimitOrder | Privé |
| AmendOrder | Privé |
| CancelOrder | Privé |
| GetOpenOrders | Privé |
| CancelAllOrders | Privé |
| GetOrderHistory | Privé |
| GetPositionInfo | Privé |
| SetLeverage | Privé |
| SwitchCrossIsolatedMargin | Privé |
| SetTPSLMode | Privé |
| SwitchPositionMode | Privé |
| SetRiskLimit | Privé |
| SetTradingStop | Privé |
| SetAutoAddMargin | Privé |
| AddOrReduceMargin | Privé |
| GetExecution | Privé |
| GetClosedPNL | Privé |
| ConfirmNewRiskLimit | Privé |
| GetWalletBalance | Privé |
| GetAccountInfo | Privé |
| GetTransactionLog | Privé |
| BatchPlaceOrder | Privé |
| BatchAmendOrder | Privé |
| BatchCancelOrder | Privé |
| SetDCP | Privé |
| GetFeeRate | Privé |
| GetCollateralInfo | Privé |
| SetMarginMode | Privé |
| GetBorrowHistory | Privé |
| GetCoinGreeks | Privé |
| GetCoinInfo | Privé |
| GetAllCoinsBalance | Privé |
| CreateInternalTransfer | Privé |
| GetInternalTransferList | Privé |
| GetDepositRecords | Privé |
| GetDepositAddress | Privé |
| CreateWithdrawal | Privé |
| CancelWithdrawal | Privé |
| GetWithdrawalRecords | Privé |
Trouvez ci-dessous un exemple d'obtention des ordres ouverts.
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();