Deribit は、Bitcoin と Ethereum の先物およびオプション取引を提供する暗号通貨デリバティブ取引所です。
Deribit プロパティで次のプロパティを設定できます。
クライアントがDeribitサーバーに正常に接続すると、OnConnect イベントが発生します。OnConnect イベントが発生した後、Deribitサーバーとのメッセージの送信および受信を開始できます。プライベートWebSocketチャンネルに接続する場合は、プライベートチャンネルにサブスクライブする前に、OnDeribitAuthentication イベントが発生するまで待機し、successパラメータがtrueかどうかを確認する必要があります。
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 クライアントは、接続フローを制御し WebSocket サーバーから送信されるデータを取得するために、以下のイベントを実装しています。
WebSocket フィードは注文と取引のリアルタイムの市場データ更新を提供します。
次のPublic channelsにサブスクライブできます:
| メソッド | 説明 |
| SubscribeTicker | 商品のtickerストリームにサブスクライブします。リアルタイムの価格と取引高のデータを提供します。 |
| SubscribeTrades | インストゥルメントの最近の取引ストリームにサブスクライブします。 |
| SubscribeOrderBook | オーダーブックストリームにサブスクライブします。グループ化、深さレベル、更新間隔の設定をサポートします。 |
| SubscribeCandle | ローソク足ストリームを購読します。複数の解像度(例:1、3、5、10、15、30、60、120、180、360、720、1D)をサポートします。 |
| SubscribePerpetual | ある銘柄の永続契約データにサブスクライブします。ファンディングレートおよびその他の永続特有の情報を提供します。 |
| SubscribeBookChange | 銘柄の板変更通知にサブスクライブします。 |
以下のプライベートチャンネル(認証が必要)をサブスクライブできます:
| メソッド | 説明 |
| SubscribeOrders | 銘柄の注文アップデートを購読します。 |
| SubscribePositions | ポジション更新をサブスクライブします。通貨や銘柄の種類によるフィルタリングに対応しています。 |
| SubscribeAccountChanges | 通貨のアカウント残高変化をサブスクライブします。 |
| SubscribeUserTrades | ある銘柄のユーザー取引更新をサブスクライブします。 |
以下に WebSocket チャンネルへのサブスクライブの例を示します。
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 は市場、取引、アカウント、ウォレットからデータをリクエストするためのパブリックおよびプライベートメソッドを提供します。コンポーネントの REST_API プロパティを通じて REST API にアクセスします。
マーケットデータ(パブリック)
| メソッド | 説明 |
| GetInstruments | 通貨で利用可能なインストルメントを取得します。 |
| GetTicker | インストゥルメントのティッカー情報を取得します。 |
| GetOrderBook | インストゥルメントの注文板を取得します。 |
| GetTrades | 銘柄の最新の取引を取得します。 |
| GetCurrencies | サポートされている通貨のリストを取得します。 |
| GetIndexPrice | インデックス名の現在のインデックス価格を取得します。 |
| GetFundingRateHistory | 銘柄のファンディングレート履歴を取得します。 |
| GetFundingRateValue | インストルメントの現在のファンディングレート値を取得します。 |
| GetBookSummaryByCurrency | 通貨のすべての銘柄の書籍の概要を取得します。 |
| GetBookSummaryByInstrument | 特定の銘柄の板サマリーを取得します。 |
取引 (プライベート)
| メソッド | 説明 |
| Buy | 買い注文を発注します。マーケット注文と指値注文タイプをサポートします。 |
| 売り | 売り注文を発注します。成行注文と指値注文をサポートします。 |
| CancelOrder | 注文 ID で既存の注文をキャンセルします。 |
| CancelAllOrders | すべての未決注文をキャンセルします。 |
| CancelAllByInstrument | 特定の銘柄のすべてのオープン注文をキャンセルします。 |
| EditOrder | 既存の注文を編集します(数量または価格を変更)。 |
| GetOpenOrders | 通貨のオープン注文の一覧を取得します。 |
| GetOrderState | 特定の注文のステートを取得します。 |
| GetOrderHistory | 通貨の注文履歴を取得します。 |
Account (Private)
| メソッド | 説明 |
| GetPositions | 通貨のポジションを取得します。 |
| GetAccountSummary | 通貨のアカウントサマリーを取得します。 |
| GetSubAccounts | サブアカウントの一覧を取得します。 |
| GetTransactionLog | 通貨のトランザクションログを取得します。 |
ウォレット(プライベート)
| メソッド | 説明 |
| GetDeposits | 通貨の入金履歴を取得します。 |
| GetWithdrawals | 通貨の出金履歴を取得します。 |
| GetTransfers | 通貨の送金履歴を取得します。 |
以下に 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');