MEXC は数百のトークンペアにわたるスポット取引と無期限先物契約をサポートするグローバルな暗号資産取引所です。Delphi 開発者は 2 つの専用コンポーネントを通じて MEXC と統合できます。スポット市場向けの TsgcWSAPI_MEXC と先物市場向けの TsgcWSAPI_MEXC_Futures です。各コンポーネントはリアルタイムデータの WebSocket サブスクリプションとオンデマンド照会・注文管理用の REST インターフェースの両方を提供します。この記事では両市場にわたるすべての利用可能なメソッドを詳しく説明します。
目次
- アーキテクチャの概要
- スポット WebSocket API
- スポット REST API
- 先物 WebSocket API
- 先物 REST API
- はじめに — コード例
- 設定リファレンス
- ヒントと注意事項
アーキテクチャの概要
MEXC はスポット市場と先物市場に対して個別の API サーフェスを提供しています。sgcWebSockets ライブラリでは、これは 2 つの異なるコンポーネントとして反映されています。
TsgcWSAPI_MEXC— スポット市場を処理します。リアルタイムの取引、ローソク足、板情報、ティッカーのWebSocketサブスクリプションとプライベート口座イベントストリームを提供します。REST インターフェースはREST_API(型:TsgcHTTP_API_MEXC_Spot)経由でアクセスできます。TsgcWSAPI_MEXC_Futures— 先物市場を処理します。約定、資金調達レート、インデックス価格、フェア価格などの先物固有データの WebSocket サブスクリプションを提供します。REST インターフェースはREST_API(型:TsgcHTTP_API_MEXC_Futures)経由でアクセスできます。
両コンポーネントは同じパターンに従います。TsgcWebSocketClient を割り当て、API 認証情報を設定し、WebSocket サブスクリプション用にクライアントをアクティブ化し、同期 HTTP 呼び出しには REST_API にアクセスします。
スポット WebSocket API
スポット WebSocket API はパブリックチャネルを通じてリアルタイム市場データを、プライベートチャネルを通じて口座更新を提供します。各サブスクリプションには対応するアンサブスクライブメソッドがあります。
パブリックチャネル
| サブスクライブ | アンサブスクライブ | 説明 |
|---|---|---|
SubscribeTrade |
UnSubscribeTrade |
銘柄のリアルタイム約定情報。 |
SubscribeKline |
UnSubscribeKline |
銘柄と時間軸のライブローソク足 / ライン更新。 |
SubscribeDiffDepth |
UnSubscribeDiffDepth |
差分ストリームによる板情報の差分更新。 |
SubscribeBookDepth |
UnSubscribeBookDepth |
指定レベルでの完全な板情報スナップショット。 |
SubscribeBookTicker |
UnSubscribeBookTicker |
特定銘柄の最良ビッド / アスク価格と数量。 |
SubscribeBookTickerBatch |
UnSubscribeBookTickerBatch |
単一ストリームですべての銘柄の最良ビッド / アスク価格。 |
SubscribeMiniTickers |
UnSubscribeMiniTickers |
すべての銘柄の簡潔なティッカーデータ(価格、出来高)。 |
SubscribeMiniTicker |
UnSubscribeMiniTicker |
特定銘柄の簡潔なティッカーデータ。 |
プライベートチャネル
プライベートチャネルは認証が必要で、口座アクティビティに関するリアルタイム更新を配信します。MEXCUserDataStreams.UserStream プロパティでユーザーデータストリームを有効にします。
| サブスクライブ | アンサブスクライブ | 説明 |
|---|---|---|
SubscribeAccountUpdate |
UnSubscribeAccountUpdate |
変化が発生したときの口座残高とポジションの更新。 |
SubscribeAccountDeals |
UnSubscribeAccountDeals |
注文が約定したときのリアルタイム通知(取引約定)。 |
SubscribeAccountOrders |
UnSubscribeAccountOrders |
注文状態の変化(発注済み、部分約定、約定済み、キャンセル済み)。 |
スポット REST API
スポット REST API は oMEXC.REST_API(型: TsgcHTTP_API_MEXC_Spot)経由でアクセスできます。パブリックエンドポイントは認証不要ですが、プライベートエンドポイントには有効な API キーとシークレットが必要です。
パブリックエンドポイント
| メソッド | 説明 |
|---|---|
Ping |
MEXC API サーバーへの接続をテストします。 |
GetServerTime |
現在の MEXC サーバー時刻を返します。 |
GetDefaultSymbols |
デフォルトの取引銘柄リストを返します。 |
GetExchangeInformation |
取引所のルールと銘柄情報(フィルター、精度、状態)を返します。 |
GetOrderBook |
指定した深さで銘柄の板情報(買値と売値)を返します。 |
GetTrades |
銘柄の最近のパブリック取引を返します。 |
GetAggregateTrades |
集約 / 圧縮された取引レコードを返します。 |
GetKlines |
銘柄と時間軸の過去のローソク足データを返します。 |
GetAveragePrice |
銘柄の現在の平均価格を返します。 |
Get24hrTicker |
24 時間ローリングウィンドウの価格変動統計を返します。 |
GetPriceTicker |
1 つまたはすべての銘柄の最新価格を返します。 |
GetBookTicker |
板情報から最良ビッド / アスク価格と数量を返します。 |
プライベートエンドポイント
| メソッド | 説明 |
|---|---|
NewOrder |
新規スポット注文を発注します(成行、指値、その他のサポートタイプ)。 |
TestNewOrder |
実際に発注せずに新規注文を検証します(ドライラン)。 |
CancelOrder |
注文 ID で特定の未決注文をキャンセルします。 |
CancelAllOrders |
銘柄のすべての未決注文をキャンセルします。 |
GetOrder |
特定の注文の状態と詳細を返します。 |
GetOpenOrders |
現在未決(未約定)のすべての注文を返します。 |
GetAllOrders |
時間範囲内のすべての注文(未決、約定済み、キャンセル済み)を返します。 |
GetAccountInformation |
口座残高と権限を返します。 |
GetMyTrades |
銘柄の取引履歴を返します。 |
GetSubAccounts |
マスターアカウント配下のサブアカウントリストを返します。 |
GetDepositAddress |
特定のコインとネットワークの入金アドレスを返します。 |
GetWithdrawHistory |
出金履歴レコードを返します。 |
Withdraw |
外部アドレスへの出金を開始します。 |
GetCapitalConfig |
資産設定(サポートネットワーク、出金最小 / 最大金額、手数料)を返します。 |
先物 WebSocket API
先物 WebSocket API は無期限先物契約に固有のリアルタイムデータを提供します。すべてのチャネルはパブリックで認証不要です。各サブスクリプションには対応するアンサブスクライブメソッドがあります。
| サブスクライブ | アンサブスクライブ | 説明 |
|---|---|---|
SubscribeDeal |
UnSubscribeDeal |
先物取引 / 約定のリアルタイム情報。 |
SubscribeTickers |
UnSubscribeTickers |
すべての先物コントラクトのティッカーデータ。 |
SubscribeTicker |
UnSubscribeTicker |
特定の先物コントラクトのティッカーデータ。 |
SubscribeDepth |
UnSubscribeDepth |
先物の板情報差分更新。 |
SubscribeDepthFull |
UnSubscribeDepthFull |
先物の完全な板情報スナップショット。 |
SubscribeKline |
UnSubscribeKline |
先物コントラクトのライブローソク足 / ライン更新。 |
SubscribeFundingRate |
UnSubscribeFundingRate |
無期限コントラクトのリアルタイム資金調達レート更新。 |
SubscribeIndexPrice |
UnSubscribeIndexPrice |
リアルタイムインデックス価格更新。 |
SubscribeFairPrice |
UnSubscribeFairPrice |
清算計算に使用されるリアルタイムフェア / マーク価格更新。 |
先物 REST API
先物 REST API は oMEXCFut.REST_API(型: TsgcHTTP_API_MEXC_Futures)経由でアクセスできます。市場データ、口座管理、ポジション制御、注文操作をカバーします。
Public Endpoints
| メソッド | 説明 |
|---|---|
GetPing |
MEXC 先物 API サーバーへの接続をテストします。 |
GetServerTime |
現在の先物サーバー時刻を返します。 |
GetContracts |
利用可能なすべての先物コントラクトとその仕様のリストを返します。 |
GetDepth |
先物コントラクトの板情報深度を返します。 |
GetDeals |
先物コントラクトの最近のパブリック取引 / 約定履歴を返します。 |
GetKlines |
先物コントラクトの過去のローソク足データを返します。 |
GetIndexPrice |
コントラクトの現在のインデックス価格を返します。 |
GetFairPrice |
コントラクトの現在のフェア / マーク価格を返します。 |
GetFundingRate |
無期限コントラクトの現在と予測の資金調達レートを返します。 |
Private Endpoints
| メソッド | 説明 |
|---|---|
GetAccountAssets |
先物口座の資産残高と証拠金情報を返します。 |
GetPositionList |
サイズ、エントリー価格、損益を含むすべての未決先物ポジションを返します。 |
SetPositionLeverage |
特定の先物コントラクトのレバレッジ倍率を設定します。 |
PlaceOrder |
新規先物注文を発注します(成行、指値、その他のサポートタイプ)。 |
CancelOrder |
特定の未決先物注文をキャンセルします。 |
CancelAllOrders |
コントラクトのすべての未決先物注文をキャンセルします。 |
GetOpenOrders |
現在未決のすべての先物注文を返します。 |
GetOrderHistory |
過去の先物注文(約定済み、キャンセル済みなど)を返します。 |
GetFundingHistory |
資金調達手数料の支払い履歴を返します。 |
はじめに — コード例
スポット市場の例
以下の例は MEXC スポット WebSocket に接続し、リアルタイム取引にサブスクライブし、REST 経由で取引所情報を照会し、成行買い注文を発注します。
var
oClient: TsgcWebSocketClient;
oMEXC: TsgcWSAPI_MEXC;
begin
// Create the WebSocket client
oClient := TsgcWebSocketClient.Create(nil);
// Create the MEXC Spot API component
oMEXC := TsgcWSAPI_MEXC.Create(nil);
oMEXC.Client := oClient;
// Configure API credentials
oMEXC.MEXCAPI.ApiKey := 'your_api_key';
oMEXC.MEXCAPI.ApiSecret := 'your_api_secret';
// Connect to the WebSocket
oClient.Active := True;
// WebSocket: Subscribe to real-time trades for BTCUSDT
oMEXC.SubscribeTrade('BTCUSDT');
// REST: Get exchange information
ShowMessage(oMEXC.REST_API.GetExchangeInformation);
// REST: Place a market buy order for 0.001 BTC
ShowMessage(oMEXC.REST_API.NewOrder('BTCUSDT', 'BUY', 'MARKET', '', 0.001));
end;
先物市場の例
この例は MEXC 先物 WebSocket に接続し、先物ティッカーにサブスクライブし、REST 経由で利用可能なコントラクトを照会します。
var
oClientFut: TsgcWebSocketClient;
oMEXCFut: TsgcWSAPI_MEXC_Futures;
begin
// Create the WebSocket client for futures
oClientFut := TsgcWebSocketClient.Create(nil);
// Create the MEXC Futures API component
oMEXCFut := TsgcWSAPI_MEXC_Futures.Create(nil);
oMEXCFut.Client := oClientFut;
// Configure API credentials
oMEXCFut.MEXCFuturesAPI.ApiKey := 'your_api_key';
oMEXCFut.MEXCFuturesAPI.ApiSecret := 'your_api_secret';
// Connect to the WebSocket
oClientFut.Active := True;
// WebSocket: Subscribe to futures ticker for BTC_USDT
oMEXCFut.SubscribeTicker('BTC_USDT');
// REST: Get all available futures contracts
ShowMessage(oMEXCFut.REST_API.GetContracts);
end;
注: スポットと先物は別々の WebSocket 接続と API コンポーネントを使用します。それぞれに個別の TsgcWebSocketClient インスタンスが必要です。
設定リファレンス
スポットの設定
| プロパティ | 型 | 説明 |
|---|---|---|
MEXCAPI.ApiKey |
String | 認証済みスポットリクエスト用の MEXC API キー。 |
MEXCAPI.ApiSecret |
String | リクエスト署名用の MEXC API シークレット。 |
MEXCUserDataStreams.UserStream |
Boolean | True に設定すると、口座更新、約定、注文イベントのプライベートユーザーデータストリームを有効にします。 |
先物の設定
| プロパティ | 型 | 説明 |
|---|---|---|
MEXCFuturesAPI.ApiKey |
String | 認証済み先物リクエスト用の MEXC API キー。 |
MEXCFuturesAPI.ApiSecret |
String | 先物リクエスト署名用の MEXC API シークレット。 |
ヒントと注意事項
スポットと先物の個別コンポーネント
MEXC はスポットと先物を完全に別々の市場として扱い、異なる API エンドポイント、銘柄命名規則(例:スポットでは BTCUSDT、先物では BTC_USDT)、認証スコープを持ちます。対象市場に対して必ず正しいコンポーネントを使用してください。
ユーザーデータストリーム
スポット WebSocket でプライベート口座イベント(口座更新、約定、注文変更)を受信するには、クライアントをアクティブ化する前に MEXCUserDataStreams.UserStream := True を設定する必要があります。これにより、コンポーネントはリスンキーを要求してプライベートストリームを自動的に確立します。
注文テスト
スポット REST API の TestNewOrder メソッドを使用して、実際に注文を発注せずに注文パラメーターを検証します。実際の資金をコミットする前に、銘柄、サイド、タイプ、数量のパラメーターが正しくフォーマットされていることを確認するのに便利です。
銘柄命名規則
2 つの市場間の異なる銘柄形式に注意してください。スポットは BTCUSDT のような連結ペアを使用し、先物は BTC_USDT のようなアンダースコア区切りペアを使用します。間違った形式を使用すると「銘柄が見つかりません」エラーが発生します。
レート制限
MEXC は REST と WebSocket API の両方にレート制限を適用しています。REST エンドポイントは通常、1 分あたり一定数のリクエストを許可します。制限を超えると 429 ステータスコードが返されます。適切なバックオフロジックを実装するか、頻繁に変化するデータには WebSocket サブスクリプションを使用してください。
ヒント: 高頻度モニタリングには、REST エンドポイントのポーリングよりも WebSocket サブスクリプションを優先してください。サブスクリプションはリアルタイムで低レイテンシでデータを配信し、REST レート制限にカウントされません。