Deribit ist eine Kryptowährungs-Derivatebörse, die Futures- und Optionshandel auf Bitcoin und Ethereum anbietet.
Sie können die folgenden Eigenschaften in der Deribit-Eigenschaft konfigurieren.
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;
Der Deribit-Client implementiert die folgenden Ereignisse, um den Verbindungsablauf zu steuern und die vom WebSocket-Server gesendeten Daten zu erhalten:
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;
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');