Deribit, Bitcoin ve Ethereum üzerinde vadeli işlem ve opsiyon işlemleri sunan bir kripto para türev borsasıdır.
Deribit özelliğinde aşağıdaki özellikleri yapılandırabilirsiniz.
İstemci Deribit sunucularına başarıyla bağlandığında, OnConnect olayı tetiklenir. OnConnect olayı tetiklendikten sonra, Deribit sunucularına/sunucularından mesaj göndermeye ve mesaj almaya başlayabilirsiniz. Özel websocket kanalına bağlanıyorsanız, herhangi bir özel kanala abone olmadan önce OnDeribitAuthentication olayı tetiklenene kadar beklemeli ve success parametresinin true olup olmadığını kontrol etmelisiniz.
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;
Deribit istemcisi, bağlantı akışını kontrol etmek ve WebSocket sunucusundan gönderilen verileri almak için aşağıdaki olayları uygular:
websocket akışı, emirler ve işlemler için gerçek zamanlı market data güncellemeleri sağlar.
Aşağıdaki Genel kanallara abone olabilirsiniz:
| Yöntem | Açıklama |
| SubscribeTicker | Bir araç için ticker akışına abone olun. Gerçek zamanlı fiyat ve hacim verisi sağlar. |
| SubscribeTrades | Bir enstrüman için son işlemler akışına abone olun. |
| SubscribeOrderBook | Order book akışına abone olun. Yapılandırılabilir gruplama, derinlik düzeyleri ve güncelleme aralıklarını destekler. |
| SubscribeCandle | Mum çubuğu akışına abone olun. Birden fazla çözünürlüğü destekler (ör. 1, 3, 5, 10, 15, 30, 60, 120, 180, 360, 720, 1D). |
| SubscribePerpetual | Bir enstrüman için sürekli (perpetual) sözleşme verisine abone olur. Funding oranı ve diğer perpetual'a özgü bilgileri sağlar. |
| SubscribeBookChange | Bir enstrüman için order book değişiklik bildirimlerine abone olun. |
Aşağıdaki Özel kanallara abone olabilirsiniz (kimlik doğrulaması gerektirir):
| Yöntem | Açıklama |
| SubscribeOrders | Bir enstrüman için emir güncellemelerine abone olun. |
| SubscribePositions | Pozisyon güncellemelerine abone olun. Para birimi ve enstrüman türüne göre filtrelemeyi destekler. |
| SubscribeAccountChanges | Bir para birimi için hesap bakiyesi değişikliklerine abone olun. |
| SubscribeUserTrades | Bir enstrüman için kullanıcı işlem güncellemelerine abone olur. |
Aşağıda websocket kanallarına abone olmanın bir örneği bulabilirsiniz.
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, marketlerden, işlemlerden, hesaptan ve cüzdandan veri istemek için Genel ve Özel yöntemler sağlar. REST API'sine bileşenin REST_API özelliği aracılığıyla erişin.
Piyasa Verileri (Genel)
| Yöntem | Açıklama |
| GetInstruments | Bir para birimi için kullanılabilir araçları alın. |
| GetTicker | Bir enstrüman için ticker bilgisini alın. |
| GetOrderBook | Bir enstrüman için emir defterini alın. |
| GetTrades | Bir enstrüman için en son işlemleri alın. |
| GetCurrencies | Desteklenen para birimlerinin listesini alın. |
| GetIndexPrice | Bir endeks adı için mevcut endeks fiyatını alın. |
| GetFundingRateHistory | Bir enstrüman için fonlama oranı geçmişini alın. |
| GetFundingRateValue | Bir enstrüman için geçerli fonlama oranı (funding rate) değerini alın. |
| GetBookSummaryByCurrency | Bir para biriminin tüm enstrümanları için book özetini alın. |
| GetBookSummaryByInstrument | Belirli bir enstrüman için emir defteri özetini al. |
İşlem (Özel)
| Yöntem | Açıklama |
| Buy | Bir alış emri verin. Market ve limit emir türlerini destekler. |
| Sell | Bir satış emri verin. Market ve limit emir türlerini destekler. |
| CancelOrder | Emir kimliğine göre var olan bir emri iptal edin. |
| CancelAllOrders | Tüm açık emirleri iptal edin. |
| CancelAllByInstrument | Belirli bir enstrüman için tüm açık emirleri iptal edin. |
| EditOrder | Mevcut bir emri düzenleyin (miktar veya fiyat değiştirin). |
| GetOpenOrders | Bir para birimi için açık emirlerin listesini alın. |
| GetOrderState | Belirli bir emrin durumunu alın. |
| GetOrderHistory | Bir para birimi için emir geçmişini alın. |
Hesap (Özel)
| Yöntem | Açıklama |
| GetPositions | Bir para birimi için pozisyonları alın. |
| GetAccountSummary | Bir para birimi için hesap özetini alın. |
| GetSubAccounts | Alt hesapların listesini alın. |
| GetTransactionLog | Bir para birimi için işlem günlüğünü alın. |
Wallet (Private)
| Yöntem | Açıklama |
| GetDeposits | Bir para birimi için para yatırma geçmişini alın. |
| GetWithdrawals | Bir para birimi için para çekme geçmişini alın. |
| GetTransfers | Bir para birimi için transfer geçmişini alın. |
REST API kullanımının bir örneğini aşağıda bulun.
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');