현재 API 지원 버전은 V5입니다. V5 API는 Bybit의 제품 라인에 통일성과 효율성을 가져오며, Spot, Derivatives 및 Options를 하나의 사양 집합으로 통합합니다.
| OpenAPI Version | 계정 유형 | Linear | Inverse | Spot | Options | |||
|---|---|---|---|---|---|---|---|---|
| USDT Perpetual | USDC Perpetual | USDC Futures | Perpetual | Futures | ||||
| V5 | Unified trading account | ✓ | ✓ | ✓ | 참고 사항 참조 | ✓ | ✓ | |
| Classic account | ✓ | ✓ | ✓ | ✓ | ||||
| V3 | Unified trading account | ✓ | ✓ | ✓ | ||||
| Classic account | ✓ | ✓ | ✓ | ✓ | ||||
*참고: Unified 계정은 inverse 거래를 지원합니다. 그러나 사용되는 마진은 unified 지갑이 아닌 inverse derivatives 지갑에서 나옵니다.
Bybit 속성에서 다음 속성을 구성할 수 있습니다.
클라이언트가 Bybit 서버에 성공적으로 연결되면 OnConnect 이벤트가 발생합니다. OnConnect 이벤트가 발생한 후, Bybit 서버로/로부터 메시지를 전송하고 수신하기 시작할 수 있습니다. private websocket 채널에 연결하는 경우, 채널을 구독하기 전에 OnBybitAuthentication 이벤트가 발생할 때까지 기다리고 success 매개변수가 true인지 확인해야 합니다.
클라이언트는 여러 API를 지원하므로 BybitClient 속성을 사용하여 사용할 API를 설정하십시오:
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;
Spot WebSocket 서버에 성공적으로 연결한 후 WebSocket 채널 구독을 시작할 수 있습니다. SPOT 속성에 액세스한 다음 사용 가능한 subscribe/unsubscribe 메서드를 호출하기만 하면 됩니다.
bybit 클라이언트는 연결 흐름을 제어하고 WebSocket 서버에서 전송된 데이터를 가져오기 위해 다음 이벤트를 구현합니다:
websocket 피드는 주문 및 거래에 대한 실시간 시장 데이터 업데이트를 제공합니다. websocket 피드에는 ticker, trades 등과 같은 일부 public 채널이 있습니다...
다음 채널을 구독할 수 있습니다:
| 메서드 | 공개 또는 비공개 | 설명 |
| SubscribeOrderBook | Public | orderbook 스트림을 구독합니다. 다양한 depth를 지원합니다. |
| SubscribeTrade | Public | 최근 거래 스트림을 구독합니다. |
| SubscribeTicker | Public | ticker 스트림을 구독합니다. |
| SubscribeKLine | Public | klines 스트림을 구독합니다. |
| SubscribeLiquidation | Public | liquidation 스트림을 구독합니다 |
| SubscribeLT_KLine | Public |
leveraged token kline 스트림을 구독합니다. |
| SubscribeLT_Ticker | Public | leveraged token 티커 스트림을 구독합니다. |
| SubscribeLT_Nav | Public | leveraged token 티커 스트림을 구독합니다. |
| SubscribePosition | Private | leveraged token nav 스트림을 구독합니다. |
| SubscribeExecution | Private | 구독 |
| SubscribeOrder | Private | 구독 |
| SubscribeWallet | Private | 구독 |
| SubscribeGreek | Private | 구독 |
| SubscribeDcp | Private | 구독 |
| SubscribeInsurance | Public | 보험 기금 스트림을 구독합니다. |
| SubscribeOrderPriceLimit | Public | 주문 가격 제한 스트림을 구독합니다. |
| SubscribeADLAlert | Public | 자동 디레버리지 알림 스트림을 구독합니다. |
| SubscribeFastExecution | Private | fast execution 스트림을 구독합니다. |
성공적인 인증 후 private websocket 채널을 구독하는 예제는 아래에서 확인하십시오.
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에는 마켓, 비공개 계정 및 지갑으로부터 데이터를 요청하기 위한 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 | 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 |
미결제 주문을 가져오는 예제는 아래를 참조하십시오.
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();