外部連携・通知ガイド

MT5のWebRequest設定で確認すること

EAファンクラブ

MT5のWebRequest設定は、EAやインジケーターが外部サービスと通信するために必要になることがある設定です。

たとえば、Discord通知、Google Sheets連携、外部認証、外部設定の取得、Webhook送信、外部API連携などを行うツールでは、MT5側で通信先URLを許可しておく必要があります。

WebRequestの設定が正しくない場合、EAやインジケーター本体に問題がなくても、通知が届かない、外部データを取得できない、認証に失敗する、Google Sheetsへ記録できない、といった状態になることがあります。

この記事では、MT5でWebRequestを使う前に確認しておきたい項目を、基本設定、URL登録、Discord通知、Google Sheets連携、外部認証、Expertsログ、問い合わせ前の整理に分けてまとめます。

なお、この記事はMT5の外部連携・通知・ログ確認・導入前確認を目的とした技術記事です。特定の売買判断、利益、勝率、損失回避を保証するものではありません。

この記事で確認すること

  • MT5のWebRequest設定とは何か
  • WebRequestが必要になる主なケース
  • MT5側で確認する基本設定
  • URL登録時に注意すること
  • Discord通知が届かない時の確認ポイント
  • Google Sheets連携で確認すること
  • 外部認証や外部設定取得で確認すること
  • Expertsログで確認する内容
  • 問い合わせ前に送る情報・送らない方がよい情報

MT5のWebRequest設定とは

MT5から外部URLへ通信するための許可設定

WebRequestは、MQL5のプログラムから外部URLへHTTP通信を行うための仕組みです。

MT5では、安全性のため、EAやインジケーターが自由に外部URLへ通信できるわけではありません。WebRequestを使う場合は、MT5のオプション画面で通信先URLを許可リストに登録する必要があります。

項目内容確認する場所
WebRequestMT5から外部URLへ通信する仕組みMQL5プログラム、Expertsログ
許可URLMT5側で通信を許可する外部URLMT5オプション設定
Webhook URLDiscord通知などの送信先URL外部サービス側、EA側設定
GAS URLGoogle Apps Scriptなどの連携URLGoogle側、MT5側設定
HTTPステータス通信結果を示す番号Expertsログ、EA側ログ

EAやインジケーター本体の不具合とは分けて考える

WebRequestの不具合は、EAやインジケーター本体の売買ロジックや表示ロジックとは別の問題として切り分けます。

たとえば、EAのエントリー判定は正常でも、Discord通知だけが届かない場合があります。また、インジケーターの表示は正常でも、Google Sheetsへの記録だけが失敗することもあります。

  • 売買処理が動かない問題
  • 通知だけが届かない問題
  • 外部シートへ書き込めない問題
  • 外部設定を取得できない問題
  • 外部認証に失敗する問題

WebRequestが必要になる主なケース

外部サービスと連携する時に必要になる

WebRequestは、MT5内だけで完結しない処理を行う場合に関係します。

代表的な用途は、Discord通知、Google Sheets連携、外部認証、外部シート設定の取得、Webhook送信、稼働状態の外部記録などです。

用途内容確認する設定
Discord通知条件成立、注文、決済、エラーなどを通知するWebhook URL、通知ON/OFF、WebRequest許可
Google Sheets書き込み損益、履歴、稼働状態などをシートへ記録するGAS URL、共有設定、再デプロイ
Google Sheets取得外部シートから設定値や制御値を取得するCSV形式、公開URL、列構成
外部認証口座番号、期限、ライセンス状態を確認する認証URL、認証キー、口座情報
Webhook送信外部ツールへ状態やイベントを送る送信先URL、送信形式、HTTP結果
外部API連携外部データを取得または送信するAPI URL、レスポンス形式、timeout

WebRequestが不要なケースもある

すべてのEAやインジケーターでWebRequestが必要になるわけではありません。チャート上の表示、ローカル計算、通常の売買処理だけで完結するツールでは、WebRequestを使わない場合もあります。

まず、対象ツールが外部通信を使う仕様かどうかを確認してください。WebRequestを使わないツールでURL設定を変更しても、動作改善にはつながりません。

MT5側で確認する基本項目

オプション画面でWebRequest許可を確認する

WebRequestを使う場合は、MT5のオプション画面で外部URLへの通信を許可します。

許可URLが登録されていない場合、EAやインジケーター側で正しいURLを入力していても通信できません。

確認項目内容注意点
WebRequestの許可指定URLへの通信が許可されているかチェックが外れていると通信できない
URL登録通信先URLが許可リストに入っているかURL変更後は再登録が必要
URLの表記余分な空白、改行、不要な文字がないかコピー時の空白混入に注意
EA側の外部連携設定通知・外部連携がONになっているかMT5側だけでは動作しない
自動売買許可EAが必要な処理を実行できるかEAの仕様により影響範囲が異なる
Expertsログ通信エラーやHTTP結果が出ているか原因切り分けの中心になる

URLは一部だけでよい場合と全文が必要な場合がある

WebRequestの許可URLは、ツールの仕様によって、ドメイン単位で登録する場合と、指定されたURLを登録する場合があります。

自己判断でURLを短くしたり、途中までにしたりすると、通信できない場合があります。配布元や開発者の案内がある場合は、その指定に従ってください。

  • 配布元が指定したURLを確認する
  • http と https を間違えていないか確認する
  • URLの末尾やパスを勝手に削らない
  • 余分なスペースや改行を入れない
  • テスト用URLと本番用URLを混同しない
  • 再発行・再デプロイ後のURL変更を反映する

URL登録時に注意すること

URL変更後はMT5側も更新する

DiscordのWebhook URLやGoogle Apps ScriptのURLは、再発行や再デプロイによって変わることがあります。

外部サービス側でURLを変更した場合、EAやインジケーター側の入力項目だけでなく、MT5のWebRequest許可リストも更新してください。

変更内容MT5側で必要な確認よくある見落とし
Discord Webhook再作成新しいWebhook URLを登録古いURLを許可リストに残したまま
GAS再デプロイ新しいGAS URLを登録EA側だけ更新してMT5側を忘れる
外部認証URL変更認証先URLの登録内容を確認テストURLと本番URLを混同する
外部API仕様変更URL、レスポンス形式、timeoutを確認URLは合っているがレスポンス解析に失敗する
VPS移行移行先MT5にもURL登録があるか確認自宅PCでは動くがVPSでは未設定

機密情報をそのまま共有しない

Webhook URL、GAS URL、APIキー、認証トークンなどは、外部サービスへ接続できる情報です。不具合確認で共有する場合でも、原則として一部を伏せてください。

  • Webhook URLを全文そのまま送らない
  • GAS URLは必要に応じて一部を伏せる
  • APIキーや認証トークンは送らない
  • スクリーンショット内の口座番号や個人情報を確認する
  • Expertsログ内のURLやトークンを確認してから共有する

Discord通知が届かない場合の確認

WebRequestだけでなく通知条件も確認する

Discord通知が届かない場合、原因はWebRequest設定だけとは限りません。EAやインジケーター側の通知ON/OFF、送信条件、通知間隔、Webhook URL、Discord側のWebhook有効状態も確認します。

確認項目内容確認する場所
Webhook URLDiscord側で発行したURLが有効かDiscord、EA設定
WebRequest許可MT5側でURL登録されているかMT5オプション
通知ON/OFFEAやインジケーター側で通知が有効かInputs、設定画面
通知条件通知を出す条件を満たしているかチャート、Expertsログ
通知間隔連続通知を抑制していないかInputs、ログ
HTTP結果送信成功または失敗が記録されているかExpertsログ

通知が届かない時の切り分け

通知が届かない場合は、「通知処理が実行されていない」のか、「送信したが失敗している」のか、「送信成功しているがDiscord側で見えない」のかを分けて確認します。

  • 通知条件を満たした時刻を確認する
  • Expertsログに送信処理が出ているか確認する
  • HTTPステータスや送信失敗ログを確認する
  • Webhook URLが古くなっていないか確認する
  • Discord側でチャンネルやWebhookが削除されていないか確認する
  • 通知間隔制限や重複通知防止が働いていないか確認する

Google Sheets連携で確認すること

GAS URLとシート側の権限を確認する

Google Sheets連携では、Google Apps Scriptや公開CSVを経由して、MT5からデータを書き込んだり、設定値を読み取ったりする場合があります。

この場合、MT5側のWebRequest設定だけでなく、Google側の共有設定、GASのデプロイ状態、シートの列構成も確認します。

確認項目内容注意点
GAS URLEAやツールが通信するURLが正しいか再デプロイ後にURLが変わる場合がある
アクセス権限外部からアクセスできる状態か権限不足で取得・書き込みに失敗する場合がある
デプロイ状態GAS更新後に再デプロイしているかコードを変更しただけでは反映されない場合がある
シート構造EA側が想定する列名・形式と一致しているか列追加・削除で解析失敗する場合がある
レスポンス空データや想定外形式になっていないか取得成功でも解析に失敗する場合がある
Expertsログ取得失敗、書き込み失敗、解析失敗が出ていないか通信と解析を分けて見る

取得と書き込みを分けて確認する

Google Sheets連携には、シートへ書き込む処理と、シートから設定を取得する処理があります。

書き込みができない問題と、外部設定が反映されない問題は確認する箇所が異なります。どちらの処理で失敗しているかを分けて確認してください。

  • シートへ書き込む処理か、シートから取得する処理かを分ける
  • GAS URLが最新か確認する
  • GASの再デプロイが済んでいるか確認する
  • シートの列名や列順が変わっていないか確認する
  • 取得結果が空になっていないか確認する
  • Expertsログで通信成功と解析成功を分けて確認する

外部認証・外部設定取得で確認すること

認証失敗と通信失敗を分ける

外部認証を使うEAでは、認証URLへ通信し、口座番号、ライセンス状態、有効期限などを確認する場合があります。

この時、WebRequest自体が失敗しているのか、通信はできているが認証結果がNGなのかを分けて確認することが重要です。

状態意味確認すること
通信失敗URLへ接続できていないWebRequest許可、URL、VPS通信、HTTP結果
レスポンスなし接続できたがデータが空外部サーバー状態、GAS、API側の応答
解析失敗返ってきたデータをEAが読めないJSON、CSV、列構成、文字コード
認証NG通信はできたが利用条件を満たしていない口座番号、有効期限、ライセンス状態
一部機能停止外部連携だけ失敗しているEA本体の売買処理と外部連携ログを分ける

外部制御は新規エントリーだけに影響する場合がある

外部シート設定や外部制御を使うEAでは、新規エントリーだけを停止し、保有中ポジションの管理は継続する設計になっている場合があります。

そのため、「新規エントリーしない」ことが不具合ではなく、外部制御による停止である可能性もあります。外部シートの入力値、取得時刻、EA側ログを確認してください。

Expertsログで確認すること

WebRequest関連のログを見る

WebRequest関連の不具合を確認する場合、Expertsログは重要です。

通知が届かない、外部データを取得できない、Google Sheetsへ書き込めない、外部認証に失敗する場合は、まずExpertsログに通信結果やエラーが出ていないか確認してください。

  • WebRequestが許可されていないという内容
  • 通信先URLが空、または不正という内容
  • HTTPステータスや通信失敗に関する内容
  • レスポンスが空だったという内容
  • 取得データを解析できなかったという内容
  • 通知送信を試みたが失敗したという内容
  • 外部認証がNGになったという内容
  • 外部設定取得に失敗したという内容

通信エラーと売買エラーを混同しない

WebRequestの通信エラーは、注文エラーや売買条件不成立とは別の問題です。

外部通知や外部書き込みが失敗していても、EAの売買処理は別に動いている場合があります。逆に、外部認証に失敗した場合は、新規エントリーが制限される仕様になっている場合もあります。

ログの種類主な意味確認すること
WebRequest失敗外部URLへ通信できない許可URL、通信先、VPS通信
HTTPエラー外部サービス側がエラーを返しているHTTPステータス、外部側設定
parse error返ってきたデータを読み取れないJSON、CSV、列構成
auth NG外部認証結果が利用不可口座番号、期限、認証情報
entry block外部制御や条件により新規エントリー停止停止理由、対象範囲、既存ポジション管理
order error注文処理の失敗WebRequestではなく発注条件を確認

WebRequest設定でよくある原因

症状別に確認する

WebRequest関連の不具合は、症状ごとに確認する場所が異なります。通知、シート連携、外部認証、外部設定取得を分けて確認してください。

症状確認すること優先して見るログ
通知が届かないWebhook URL、WebRequest許可、通知ON/OFF、通知条件Expertsログ
Sheetsへ書き込めないGAS URL、権限、再デプロイ、シート構造Expertsログ、GAS側ログ
外部設定を取得できないURL、CSV形式、空データ、アクセス権限取得ログ、解析ログ
外部認証に失敗する認証URL、通信許可、口座情報、期限設定AUTHログ、HTTP結果
以前は動いていたが急に止まったURL変更、GAS再デプロイ、Webhook再発行、VPS通信直近の変更前後のログ
VPSだけで動かないVPS側MT5のWebRequest許可、通信、URL登録VPS上のExpertsログ

以前動いていた場合は変更履歴を見る

以前は動いていた外部連携が急に動かなくなった場合は、直近の変更を確認します。

  • DiscordのWebhookを再作成していないか
  • Google Apps Scriptを再デプロイしていないか
  • Google Sheetsの列構成を変更していないか
  • EAやインジケーターを更新していないか
  • VPSを移行していないか
  • MT5を再インストールしていないか
  • 外部サービス側の権限や公開設定を変更していないか

MQL5側のWebRequest実装を確認する場合

許可URLだけでなくコード側の処理も確認する

MT5のWebRequest設定は、外部URLへの通信を許可するための確認項目です。Discord通知、Google Sheets連携、外部API連携が動かない場合は、MT5側の許可URLだけでなく、MQL5コード側のWebRequest処理、HTTPステータス、timeout、レスポンス本文も確認します。

特に開発中のEAやインジケーターでは、通信自体は成功していても、レスポンスの解析、JSON処理、CSV処理、文字コード、改行、タイムアウト処理で止まることがあります。

確認したいこと確認するページ主な確認内容
MQL5コード側のWebRequest実装を確認したいMQL5 WebRequest・JSON・外部API実装完全ガイドWebRequest、JSON、Discord通知、Google Sheets連携、HTTPステータス、レスポンス確認
外部連携処理を一定間隔で実行したいMQL5 OnTimerの使い方EventSetTimer、EventKillTimer、通知間隔、外部制御取得、再送制御、ログ抑制

WebRequestの不具合を確認する時は、許可URL、Webhook URL、GAS URL、HTTPステータス、GetLastError、レスポンス本文、送信間隔を分けて確認してください。通信失敗をEA本体の売買判定エラーと混同しないよう、外部連携ログと注文処理ログは分けて確認します。の売買判定エラーと混同しないよう、外部連携ログと注文処理ログは分けて確認します。

問い合わせ前に整理すること

送ると確認しやすい情報

WebRequest関連の不具合を相談する場合は、使用ツール、発生している症状、MT5設定、外部サービス、ログ、変更履歴を整理しておくと確認しやすくなります。

情報理由
使用ツール名EA、インジケーター、通知ツール、Sheets連携ツールなどを特定するため
発生している症状通知が届かない、書き込めない、取得できないなどを分けるため
MT5設定画面WebRequest許可、URL登録、自動売買許可を確認するため
外部サービス名Discord、Google Sheets、GAS、Webhookなどの種類を確認するため
Expertsログ通信エラー、HTTP結果、解析失敗を確認するため
JournalログMT5全体の接続や実行状態を確認するため
変更履歴URL変更、GAS再デプロイ、EA更新、VPS変更などを確認するため
再現手順どの操作で失敗するかを確認するため

そのまま送らない方がよい情報

外部連携の確認では、URLや認証情報が関係します。ただし、Webhook URL、GAS URL、APIキー、認証トークン、口座番号などは機密情報に該当する場合があります。

情報注意点
Webhook URL通知先へ接続できる情報のため、全文をそのまま送らない
GAS URL外部シート連携に関係するため、必要に応じて伏せ字にする
APIキー外部サービス認証に関係するため送らない
認証トークン利用権限に関係するため送らない
口座番号ログやスクリーンショットへの映り込みに注意する
VPSログイン情報リモート接続情報は送らない
MT5ログインパスワード不具合確認には不要

記事固有の実務チェック表

  • 対象ツールがWebRequestを使う仕様か確認した
  • MT5のWebRequest許可がONになっている
  • 通信先URLをMT5の許可リストに登録した
  • URLに余分なスペースや改行が入っていない
  • テスト用URLと本番用URLを間違えていない
  • Webhook URLやGAS URLの再発行後にMT5側も更新した
  • EAやインジケーター側の外部連携ON/OFFを確認した
  • Discord通知やGoogle Sheets連携の送信条件を確認した
  • ExpertsログでWebRequest失敗、HTTP結果、解析失敗を確認した
  • VPS上で使う場合、VPS側MT5にも同じ設定があるか確認した
  • Webhook URL、GAS URL、APIキー、認証トークンをそのまま共有していない

よくある質問

MT5のWebRequest設定は必ず必要ですか?

必ず必要とは限りません。Discord通知、Google Sheets連携、外部認証、外部設定取得、Webhook送信など、MT5から外部URLへ通信する機能を使う場合に必要になります。

WebRequestを許可しても通知が届かないのはなぜですか?

WebRequest許可以外にも、EA側の通知ON/OFF、通知条件、Webhook URL、Discord側のWebhook有効状態、通知間隔、HTTPエラーなどが関係します。Expertsログで送信処理とHTTP結果を確認してください。

GAS URLを更新した場合、MT5側も変更が必要ですか?

必要になる場合があります。Google Apps Scriptを再デプロイしてURLが変わった場合は、EA側の入力項目だけでなく、MT5のWebRequest許可リストも新しいURLに更新してください。

VPSでは動かないのに自宅PCでは動くことはありますか?

あります。VPS側のMT5にWebRequest許可URLが入っていない、外部通信ができない、MT5設定が自宅PCと異なる、古いURLが残っている、といった原因が考えられます。

WebRequestエラーはEAの売買エラーですか?

通常は別の問題として確認します。WebRequestエラーは外部通信の問題であり、注文エラーや売買条件不成立とは分けて確認します。ただし、外部認証に失敗した場合はEA側の仕様により新規エントリーが制限されることがあります。

Webhook URLやAPIキーを問い合わせで送ってもよいですか?

原則として、そのまま送らないでください。Webhook URL、GAS URL、APIキー、認証トークンは外部サービスへ接続できる情報のため、必要に応じて一部を伏せた状態で共有してください。

関連ページ

WebRequest設定を確認する時は、通知、Google Sheets連携、外部シート設定、ログ確認、外部連携全体を分けて確認すると整理しやすくなります。

確認したい内容関連ページ
WebRequestチェックツールの導入前確認MT5でWebRequestチェックツールを使う前に確認すること
Discord通知が届かない時の確認MT5でDiscord通知が届かない時の確認ポイント
Google Sheets連携の確認MT5でGoogle Sheets連携を確認すること
外部シート設定が反映されない時の確認MT5で外部シート設定が反映されない時の確認ポイント
問い合わせ前のログ確認EAのログを問い合わせ前に確認する方法
外部連携全体の確認MT5外部連携完全ガイド|WebRequest・Discord通知・Google Sheets連携の確認ポイント
外部連携ツールの導入前確認MT5で外部連携ツールを使う前に確認すること
MQL5コード側のWebRequest実装MQL5 WebRequest・JSON・外部API実装完全ガイド
OnTimerで外部連携を一定間隔実行する確認MQL5 OnTimerの使い方
不具合確認を依頼する場合不具合報告・調査依頼について
免責事項を確認する場合免責事項

まとめ

MT5のWebRequest設定は、Discord通知、Google Sheets連携、外部認証、外部設定取得、Webhook送信など、外部サービスと連携するEAやインジケーターで重要になる設定です。

外部連携が動かない場合は、MT5側のWebRequest許可だけでなく、EAやインジケーター側の入力項目、外部サービス側のURLや権限、GASの再デプロイ、Webhookの有効状態、Expertsログの内容を合わせて確認してください。

WebRequestの通信エラーは、売買条件不成立や注文エラーとは別に確認します。通知だけが失敗しているのか、外部シート取得だけが失敗しているのか、外部認証に失敗して新規エントリーが制限されているのかを分けて整理すると、原因を切り分けやすくなります。

問い合わせ前には、使用ツール名、発生している症状、MT5設定、外部サービス名、Expertsログ、変更履歴を整理してください。Webhook URL、GAS URL、APIキー、認証トークン、口座番号などの機密情報は、そのまま共有しないよう注意してください。

ABOUT ME
記事URLをコピーしました