MetaTrader API — ヘルプセンター
検索するか、左のカテゴリーから探してください。各質問には共有できる専用の URL があります。
検索するか、左のカテゴリーから探してください。各質問には共有できる専用の URL があります。
MetaTrader API は、MT4 および MT5 の取引口座をプログラムから操作できるホスト型 REST API サービスです。お使いのパソコンで MetaTrader を起動しておく必要はありません。
取引口座を一度接続すれば、以降は標準的な HTTP リクエストを使い、任意のプログラミング言語から注文の執行、口座データの取得、市場価格の参照が行えます。
技術的な詳細は公式ドキュメントをご覧ください。
開始までは 30 分もかかりません。
POST /v1/seats または /ConnectEx)経由で行えます。手順の詳細は認証のドキュメントをご覧ください。
HTTP リクエストを送れる言語であれば、MetaTrader API を利用できます。HTTPS 上の通常の REST API なので、Python、JavaScript/Node.js、Go、C#、Java、Ruby、PHP など、どの言語でも使えます。
Postman、Make(Integromat)、n8n、Zapier などのノーコードツール、あるいは HTTP エンドポイントを呼び出せるあらゆるツールでも動作します。
はい。MetaTrader 4(MT4)と MetaTrader 5(MT5)の口座に対応しており、両プラットフォームの口座を同時に接続・管理できます。
課金はシート単位です。1 シートで MT4 口座 または MT5 口座を 1 つ接続でき、同じサブスクリプション内で MT4 と MT5 のシートを混在させられます。
MT4 と MT5 で利用できるエンドポイントは同じです(/PendingOrderHistory や /HistoryDealsByPositionId も両方で使えます)。唯一の違いは、MT4 にはストップリミット注文(BuyStopLimit・SellStopLimit)がないことです。プラットフォームごとの完全なリファレンスはドキュメントをご覧ください。
いいえ。それを不要にすることが、本サービスの中心的な目的です。MetaTrader API は完全にサーバー側で動作します。ブローカーの認証情報を一度登録すれば、API がお客様に代わってブローカーとの接続を維持します。
MetaTrader のインストール、デスクトップアプリの常時起動、MQL による Expert Advisors の作成は、いずれも不要です。
API キーを x-api-key ヘッダーに、口座 UUID を id(または accountId)クエリパラメーターに指定します。
curl -X GET "https://api.metatraderapi.net/AccountSummary?id=YOUR_ACCOUNT_UUID" \
-H "x-api-key: YOUR_API_KEY"
API キーはダッシュボードの口座カードで Generate key から作成します。表示は一度だけです。設定にある管理キーはプロビジョニング用で、x-api-key ヘッダーには使えません。
口座の API キーは、app.metatraderapi.net のダッシュボードでその口座のカードから作成します。Generate key をクリックしてください。表示は一度だけなので、すぐに保存してください。/ConnectEx と POST /v1/seats も、接続した口座用の新しいキーを返します。設定タブにあるのは管理キーで、プロビジョニング(シートの作成と削除)用であり、取引の呼び出しには使いません。
推奨される方法:環境変数(例:MTAPI_KEY)に保存し、実行時に読み込ませてください。
接続方法は 2 つあります。
app.metatraderapi.net にログインし、口座セクションで MT4/MT5 の情報(ログイン番号、パスワード、ブローカーのサーバー名)を登録します。接続が完了すると、その口座の一意の UUID が発行されます。
バックエンドからは、JSON ボディと管理キーで POST /v1/seats を使用します。代わりに、管理キー、または読み取り専用でも口座限定でもない API キーで /ConnectEx?user=&password=&server=&platform=MT5&wait=60 を呼び出すこともできます。どちらも口座の id と、その口座用の新しい apiKey を返します。正確なパラメーターとレスポンス形式は API ドキュメントにあります。
BrokerName-Live や BrokerName-Demo の形式です。/CheckConnect?id= を使用します。応答は true または false で、口座がいまブローカーに接続しているかどうかを示します。切断された接続はサービスが自動的に復旧します。/ConnectState?id= は状態と statusReason を返し、/Reconnect?id= は再接続を強制します。
リクエスト形式とレスポンス値の詳細はドキュメントをご覧ください。
接続済みの取引口座を切断して削除するには /Disconnect?id=(または管理キーで DELETE /v1/seats/{id})を使用します。現在接続中のすべての口座は、id を付けずに /ConnectState を呼び出す(または GET /v1/seats)ことで一覧できます。
切断すると、その口座のシートが空きます。シートは当月の請求期間終了まで支払い済みのままで、次に接続する口座が追加料金なしで使用します。
リクエストパラメーターは API ドキュメントをご覧ください。
シートの数だけ接続できます。課金はシート単位で、1 シート = 同時に接続できる口座 1 件です。シートは必要なときにいつでも追加できます(1〜4 シート目は 1 シートあたり月額 $14、5〜19 シート目は $13、20 シート目からは $12、前払い)。
お客様 1 社あたり最大 50 シートまでご利用いただけます。それ以上はご相談ください(サポートへのお問い合わせ)。
取引のライフサイクル全体をカバーします。
/OrderClose)、または反対ポジションと相殺決済(/OrderCloseBy)エンドポイント、パラメーター、レスポンス形式の詳細は API ドキュメントをご覧ください。
/OrderSend エンドポイントを使います。ほかのクラシックエンドポイントと同じく、クエリパラメーター付きの GET リクエストです。銘柄、注文種別(Buy、Sell、BuyLimit など)、ロット単位の数量、任意でストップロス、テイクプロフィット、コメント、clientOrderId を指定します。
curl -H "x-api-key: YOUR_API_KEY" \
"https://api.metatraderapi.net/OrderSend?id=YOUR_ACCOUNT_UUID&symbol=EURUSD&operation=Buy&volume=0.01&clientOrderId=order-1"
パラメーターは MT4 と MT5 で共通です。ストップリミット注文(stopLimitPrice)は MT5 のみです。待機注文には任意で expiration を指定できます。expirationType は MT5 では無視されます。
/OrderHistory または /OrderHistoryPagination エンドポイントを使います。どちらも期間(from と to、ISO-8601 または Unix 秒)でのみ絞り込めます。/OrderHistoryPagination は結果をページに分割します(ordersPerPage、pageNumber)。チケットでの絞り込みや並べ替えはご自身のコードで行ってください。より細かい照会用に、MT4・MT5 とも /PendingOrderHistory と /HistoryDealsByPositionId も利用できます。
パラメーターの完全なリファレンスはドキュメントにあります。
はい。リアルタイム配信のための WebSocket(イベント)接続を提供しています。REST エンドポイントを繰り返しポーリングする代わりに、更新を直接受け取れます。
WebSocket ストリーム(wss://api.metatraderapi.net/v1/stream?id=、x-api-key ヘッダーで認証)では、購読した銘柄のリアルタイム価格とローソク足、損益がリアルタイムで更新される保有ポジション、待機注文、約定したすべての取引を受信でき、10 秒ごとにハートビートも届きます。1 口座あたり最大 25 本のストリームを同時に開けます。
リアルタイムの Bid/Ask は、REST エンドポイント /GetQuote(複数銘柄なら /GetQuoteMany)で取得できます。あるいは WebSocket 配信で気配値を購読すれば、継続的にリアルタイム更新を受け取れます。
/GetQuote には口座の id と symbol を指定します。応答は口座・銘柄ごとに 250 ms キャッシュされます。キャッシュを使わない場合は cached=0 を付けてください。
過去の OHLC ローソク足には、MT4・MT5 とも /PriceHistory を使います(/QuoteHistory はその別名です)。時間足の選択肢とパラメーターはドキュメントをご覧ください。
プランは 1 つだけです。シート単位でお支払いいただき、すべてのシートに API の全機能(REST、WebSocket ストリーミング、MT4・MT5 両対応)が含まれます。価格は税抜です。
各シートには同時に MT4 または MT5 口座を 1 つ接続でき、1 か月の請求期間分を前払いで請求します。例:10 シートの場合、4 × $14 + 6 × $13 = 月額 $134。すべての価格は料金ページでご確認ください。
ありません。現在、無料トライアルは提供していません。API の評価方法についてご質問があれば、Telegram または support@metatraderapi.net までご連絡ください。
まずは 1 シート $14 から始めて、連携が動いたらシートを追加できます。
はい。このプランはシート単位で課金され、各シートには同時に 1 つの口座を接続できます。すべてのシートが使用中のときに口座をもう 1 つ接続すると、月額 $14(5〜19 シート目は $13、20 シート目以降は $12)でシートが追加され、追加時に前払いで請求されます。口座の接続を解除するとそのシートは無料で次の口座に使え、未使用のシートはダッシュボードから解放できます。お客様 1 社あたり最大 50 シートまでご利用いただけます。それ以上はご相談ください(サポートへのお問い合わせ)。
お支払いは Stripe を通じたクレジットカードまたはデビットカードで、毎月請求されるサブスクリプションです。暗号資産と銀行振込はご利用いただけません。
ご注文の際は、Stripe サービス契約にも同意したものとみなされます。
はい、いつでも解約できます。解約は現在の請求月の終了時に有効となり、未使用日数分の返金はありません。
本サービスは、米国で登記された有限責任会社(LLC)である Apex Vanguard Dynamics LLC が運営しています。登記住所は 30 N Gould St Ste R, Sheridan, WY 82801, アメリカ合衆国です。
連絡先メール:support@metatraderapi.net · 電話:+1 (929) 333-6422
法的情報の詳細は会社情報をご覧ください。
利用規約には、米国ワイオミング州法が適用されます。紛争はワイオミング州の裁判所の専属管轄に属し、両当事者はまず誠実な協議による解決を試みることに同意します。
利用規約の全文はウェブサイトでご確認いただけます。
いいえ。利用規約は、ログイン情報と API キーを機密として扱い、MetaTrader API の事前の書面による同意なく第三者と共有しないことを明確に求めています。
この API の上に製品やサービスを構築する場合(たとえば自社の顧客向けに)、独自の認証レイヤーを実装し、MetaTrader API のキーはサーバー側のみに保持してください。エンドユーザーに公開してはいけません。
いいえ。利用規約は、MetaTrader API の明確な書面による許可なく本サービスのデータをスクレイピングまたは再販することを禁止しています。サブスクリプションの譲渡も認められていません。
具体的なビジネス要件がある場合は support@metatraderapi.net までご連絡ください。
はい。NDA はご要望に応じて対応可能で、双方が書面で合意する必要があります。別途交渉がない場合は標準的な NDA 条件が適用されます。
ご希望の際は support@metatraderapi.net までご連絡ください。
MetaTrader API は、接続された口座を次の対策で保護しています。
セキュリティ対策、再委託先、実測の稼働率はトラストセンターに記載しています。データの取り扱いについてはプライバシーポリシーをご覧ください。
MetaTrader API は米国企業が運営しており(MetaTrader API の運営者は誰ですか?を参照)、適用されるデータ保護法(EU/EEA のユーザーに適用される場合の GDPR を含む)を遵守すると表明しています。
収集される個人データ:アカウント情報(氏名、メールアドレス、請求情報)、利用データ(API ログ、IP アドレス、ブラウザーおよび OS)、および Stripe を通じて処理される決済情報。
当社は個人データを販売しません。個人データは、当社に代わって処理を行うサービス提供者(ホスティング、決済、メール配信など)とのみ共有され、お客様向けにデータ処理契約(DPA)をご用意しています。詳細はプライバシーポリシーおよびトラストセンターをご覧ください。
プライバシーポリシーによれば、次のデータが収集される可能性があります。
接続された取引口座については、ブローカーのログイン認証情報も保存されます(AES-256-GCM で暗号化して保存)。また、API が取得する取引データはお客様に代わって処理されます。顧客データと API サーバーは EU(フィンランドおよびドイツ)にあります。プライベートホスティングのシートは、お客様が選択したリージョンで稼働します。
詳細はプライバシーポリシーの全文をご覧ください。
接続に失敗する主な原因は次のとおりです。
ICMarkets-Live02)。MetaTrader のファイル → 口座を開くで確認できます。現在の接続状態は /CheckConnect エンドポイントで確認できます。問題が続く場合は support@metatraderapi.net までご連絡ください。
認証エラーは通常、API キーが未指定、誤り、または形式が正しくないことを意味します。次の点をご確認ください。
x-api-key ヘッダーを使用しているか確認してください(Authorization: Bearer ではありません)。正しい形式は認証のドキュメントをご覧ください。
注文の拒否は MetaTrader API ではなく、ブローカーの取引サーバーから返されます。よくある原因は次のとおりです。
EURUSD と EURUSDm)。ブローカーによる拒否は HTTP エラーではありません。API は HTTP 200 で注文オブジェクトを返し、その state フィールドにブローカーの結果コードが入ります。10009 は約定、それ以外の値は拒否理由です(例:10016 無効なストップ、10018 市場クローズ、10019 資金不足。MT4 では MT4 のエラー番号)。