API Deribit

Deribit

Deribit ist eine Kryptowährungs-Derivatebörse, die Futures- und Optionshandel auf Bitcoin und Ethereum anbietet.

Unterstützte APIs

Properties

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

Connection

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


oClient := TsgcWebSocketClient.Create(nil);
oDeribit := TsgcWS_API_Deribit.Create(nil);
oDeribit.Client := oClient;
oDeribit.Deribit.ApiKey := 'your_api_key';
oDeribit.Deribit.ApiSecret := 'your_api_secret';
oDeribit.Deribit.TestNet := False;
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
  DoLog('#Deribit Connected');
end;

Ereignisse

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

WebSocket API

Der WebSocket-Feed stellt Echtzeit-Marktdatenaktualisierungen für Orders und Trades bereit.

Sie können die folgenden öffentlichen Channels abonnieren:

Methode Beschreibung
SubscribeTicker Den Ticker-Stream für ein Instrument abonnieren. Liefert Echtzeit-Preis- und Volumendaten.
SubscribeTrades Abonniert den Stream der jüngsten Trades für ein Instrument.
SubscribeOrderBook Abonniert den Orderbuch-Stream. Unterstützt konfigurierbare Gruppierung, Tiefenebenen und Aktualisierungsintervalle.
SubscribeCandle Abonniert den Candlestick-Stream. Unterstützt mehrere Auflösungen (z. B. 1, 3, 5, 10, 15, 30, 60, 120, 180, 360, 720, 1D).
SubscribePerpetual Abonnieren Sie Perpetual-Kontraktdaten für ein Instrument. Stellt die Funding Rate und andere perpetual-spezifische Informationen bereit.
SubscribeBookChange Orderbuch-Änderungsbenachrichtigungen für ein Instrument abonnieren.

Sie können die folgenden privaten Channels abonnieren (erfordert Authentifizierung):

Methode Beschreibung
SubscribeOrders Abonniert Order-Aktualisierungen für ein Instrument.
SubscribePositions Abonniert Positionsaktualisierungen. Unterstützt das Filtern nach Währung und Instrumententyp.
SubscribeAccountChanges Abonnieren Sie Kontostandänderungen für eine Währung.
SubscribeUserTrades Abonnieren Sie Benutzer-Trade-Updates für ein Instrument.

Finden Sie unten ein Beispiel für das Abonnieren von WebSocket-Kanälen.


procedure OnDeribitAuthentication(Sender: TObject; aSuccess: Boolean; const aError, aRawMessage: string);
begin
  if aSuccess then
  begin
    oDeribit.SubscribeOrders('BTC-PERPETUAL');
    oDeribit.SubscribePositions('BTC');
  end;
end;

REST API

Die REST-API stellt öffentliche und private Methoden bereit, um Daten von Märkten, Trading, Konto und Wallet anzufordern. Greifen Sie über die Eigenschaft REST_API der Komponente auf die REST-API zu.

Marktdaten (öffentlich)

Methode Beschreibung
GetInstruments Verfügbare Instrumente für eine Währung abrufen.
GetTicker Ruft Ticker-Informationen für ein Instrument ab.
GetOrderBook Ruft das Orderbuch für ein Instrument ab.
GetTrades Ruft die jüngsten Trades für ein Instrument ab.
GetCurrencies Die Liste der unterstützten Währungen abrufen.
GetIndexPrice Ruft den aktuellen Indexpreis für einen Indexnamen ab.
GetFundingRateHistory Ruft die Funding-Rate-Historie für ein Instrument ab.
GetFundingRateValue Ruft den aktuellen Funding-Rate-Wert für ein Instrument ab.
GetBookSummaryByCurrency Buchzusammenfassung für alle Instrumente einer Währung abrufen.
GetBookSummaryByInstrument Ruft die Buchzusammenfassung für ein bestimmtes Instrument ab.

Trading (Private)

Methode Beschreibung
Buy Gibt eine Kauf-Order auf. Unterstützt Market- und Limit-Order-Typen.
Sell Platziert eine Verkaufsorder. Unterstützt Market- und Limit-Ordertypen.
CancelOrder Storniert eine vorhandene Order anhand der Order-ID.
CancelAllOrders Storniert alle offenen Orders.
CancelAllByInstrument Alle offenen Orders für ein bestimmtes Instrument abbrechen.
EditOrder Eine bestehende Order bearbeiten (Betrag oder Preis ändern).
GetOpenOrders Ruft die Liste der offenen Orders für eine Währung ab.
GetOrderState Den Status einer bestimmten Order abrufen.
GetOrderHistory Den Order-Verlauf für eine Währung abrufen.

Account (Privat)

Methode Beschreibung
GetPositions Ruft Positionen für eine Währung ab.
GetAccountSummary Ruft die Kontoübersicht für eine Währung ab.
GetSubAccounts Ruft die Liste der Unterkonten ab.
GetTransactionLog Ruft das Transaktionsprotokoll für eine Währung ab.

Wallet (Private)

Methode Beschreibung
GetDeposits Ruft den Einzahlungsverlauf für eine Währung ab.
GetWithdrawals Ruft den Auszahlungsverlauf für eine Währung ab.
GetTransfers Ruft die Überweisungshistorie für eine Währung ab.

Nachfolgend ein Beispiel für die Verwendung der REST-API.


oDeribit := TsgcWS_API_Deribit.Create(nil);
oDeribit.Deribit.ApiKey := 'your_api_key';
oDeribit.Deribit.ApiSecret := 'your_api_secret';
// Get ticker
oDeribit.REST_API.GetTicker('BTC-PERPETUAL');
// Place a buy order
oDeribit.REST_API.Buy('BTC-PERPETUAL', 10, 'market');
// Get account summary
oDeribit.REST_API.GetAccountSummary('BTC');