MT5外部連携完全ガイド|WebRequest・Discord通知・Google Sheets連携の確認ポイント
MT5では、EAやインジケーターから外部サービスへ通知を送ったり、Google Sheetsへ記録したり、外部シートの設定を読み取ったりすることがあります。
代表的な外部連携には、WebRequest設定、Discord通知、Google Sheets連携、外部シート設定、Webhook通知、CSV出力、外部認証などがあります。
外部連携で問題が起きた場合、EA本体の不具合だけでなく、MT5側のWebRequest許可URL、送信先URL、Webhook、Google Apps Script、通信環境、VPS、外部サービス側の仕様変更、認証情報の扱いなどを分けて確認する必要があります。
この記事では、MT5外部連携の基本、WebRequest・Discord通知・Google Sheets連携・外部シート設定の確認ポイント、通知や記録がうまく動かない時の切り分け、ログ確認、関連する補助ツール、相談前に整理する情報をまとめます。
なお、この記事はMT4/MT5、MQL4/MQL5、EA、インジケーター、通知・集計・診断補助ツールの導入、設定、確認、検証、不具合調査を目的とした技術記事です。投資助言、売買指示、利益保証、勝率保証、損失回避保証、推奨ロット、推奨銘柄、推奨エントリー、特定ブローカー誘導を目的としたものではありません。
MT5外部連携で確認する主な項目
MT5外部連携の確認では、最初に「どの連携で問題が起きているか」を分けてください。
通知が届かない問題と、Google Sheetsへ記録されない問題と、外部シート設定がEAへ反映されない問題では、確認する場所が異なります。
| 確認したい内容 | 確認先 | 主な用途 |
|---|---|---|
| WebRequest設定を確認したい | MT5のWebRequest設定で確認すること | 許可URL、送信先、HTTPステータス、通信失敗を確認する |
| Discord通知が届かない原因を確認したい | MT5でDiscord通知が届かない時の確認ポイント | Webhook、通知条件、WebRequest、送信結果を確認する |
| Google Sheets連携を確認したい | MT5でGoogle Sheets連携を確認する記事 | 送信結果、書き込み先、GAS、認証情報の扱いを確認する |
| 外部シート設定がEAへ反映されない | MT5で外部シート設定が反映されない時の確認ポイント | 外部シート側の値、取得結果、EA側の反映状態を確認する |
| EAトラブル全体を切り分けたい | MT5 EAトラブル完全ガイド | 起動、注文、決済、通知、外部連携の症状を整理する |
| 問い合わせ前にログを整理したい | EAのログを問い合わせ前に確認する方法 | EA名、発生時刻、Expertsログ、Journalログ、再現条件をまとめる |
MT5外部連携とは
MT5外部連携とは、EAやインジケーターがMT5の外部にあるサービスと通信したり、記録を出力したり、通知を送ったりする仕組みです。
たとえば、EAの稼働状況をDiscordへ通知する、注文や決済の履歴をGoogle Sheetsへ記録する、外部シートの設定値をEAへ読み込む、CSVへ運用記録を出力する、といった用途があります。
外部連携は便利ですが、MT5内だけで完結する機能よりも確認項目が増えます。EA側、MT5端末側、通信先サービス側、VPSやネットワーク環境を分けて確認する必要があります。
| 連携種類 | 主な用途 | 確認ポイント |
|---|---|---|
| WebRequest | MT5から外部URLへ通信する | 許可URL、送信先、HTTPステータス、通信エラー |
| Discord通知 | EAの状態や通知条件をDiscordへ送る | Webhook、通知条件、送信結果、通知過多 |
| Google Sheets連携 | EAの状態や履歴をシートへ記録する | GAS URL、書き込み結果、シート権限、通信結果 |
| 外部シート設定 | 外部の設定値をEAへ反映する | 取得結果、反映タイミング、値の形式、EA側ログ |
| CSV出力 | 運用記録や検証結果をファイルへ保存する | 保存先、ファイル権限、Commonフォルダ、文字コード |
| 外部認証 | ライセンスや利用条件を確認する | 認証結果、通信失敗、アカウント不一致、期限 |
WebRequestで確認すること
MT5から外部サービスへ通信する場合、多くのEAやインジケーターではWebRequest設定が関係します。
MT5のオプション画面で、通信先URLが許可されていない場合、EA側が正しく送信処理を行っていても外部サービスへ届かないことがあります。
確認時は、送信先URL、許可URL、HTTPステータス、タイムアウト、通信失敗ログ、送信条件を分けて見ます。
| 確認項目 | 見る場所 | 注意点 |
|---|---|---|
| 許可URL | MT5のオプション設定 | 通信先のドメインやURLが許可されているか確認する |
| 送信先URL | EA設定、通知設定、外部連携設定 | 不要な空白、古いURL、誤ったURLに注意する |
| HTTPステータス | Expertsログ、EA独自ログ | 成功、拒否、認証失敗、タイムアウトを分ける |
| 通信環境 | PC、VPS、ネットワーク | VPS移行後や回線変更後は設定差を確認する |
| 送信条件 | EAの通知条件、記録条件 | そもそも送信条件が成立しているか確認する |
Discord通知で確認すること
Discord通知が届かない場合は、EAが通知を送ろうとしているか、MT5のWebRequestが許可されているか、Webhook URLが正しいか、Discord側で受信できる状態かを分けて確認します。
通知が届かないからといって、EA本体が止まっているとは限りません。通知条件が成立していない、通知OFFになっている、WebRequestが拒否されている、Webhook URLが変更されている、外部サービス側で受信できていない、といった可能性があります。
また、通知が多すぎる場合は、通知条件、重複通知抑制、同一バー制御、エラー通知の間隔、通知対象の絞り込みを確認します。
| 症状 | 確認する内容 | 補足 |
|---|---|---|
| 通知が届かない | 通知ON/OFF、Webhook、WebRequest、送信ログ | EAが送信処理まで進んでいるか確認する |
| 一部の通知だけ届かない | 通知条件、通知対象、EA設定 | 全通知なのか特定条件だけなのかを分ける |
| 通知が多すぎる | 通知間隔、重複通知、エラー通知、同一バー制御 | 同じ内容が繰り返し出ていないか確認する |
| 通知先を変更したい | 新旧Webhook、通知先チャンネル、EA側設定 | 古いWebhookを残したままにしない |
Google Sheets連携で確認すること
Google Sheets連携では、MT5側、EA側、Google Apps Script側、シート側の設定を分けて確認します。
EAが送信していても、GAS URLが違う、権限が不足している、シート名や列構成が変わっている、書き込み先が想定と違う、外部側でエラーが出ている、といった場合は記録されないことがあります。
運用記録やEA状態をGoogle Sheetsへ出す場合は、通信成功と書き込み成功を分けて見ることが重要です。
| 確認項目 | 見る場所 | 注意点 |
|---|---|---|
| 送信結果 | Expertsログ、EA独自ログ | MT5から外部URLへ送信できているか確認する |
| GAS URL | EA設定、外部連携設定 | 実値は問い合わせ時にそのまま貼らない |
| シート構成 | Google Sheets側 | シート名、列名、権限、書き込み先を確認する |
| 記録タイミング | EA設定、ログ | 起動時、注文時、決済時、一定間隔などを分ける |
| 外部側エラー | GAS、外部サービス側のログ | MT5側だけで完結しない場合がある |
外部シート設定が反映されない時に確認すること
外部シートの設定値をEAへ反映する仕組みでは、シートの値、取得処理、EA側の反映処理を分けて確認します。
シート上で値を変更しても、EAが次回取得するまで反映されない場合があります。また、値の形式が想定と違う、空欄、全角文字、余分なスペース、日付や時刻の形式違いにより、EA側で安全停止や無効扱いになる場合があります。
外部シート設定では、手動で変更した値と、EAが実際に読み取った値が一致しているかをログで確認してください。
| 確認項目 | 確認内容 | 注意点 |
|---|---|---|
| シート値 | 設定値、空欄、文字種、時刻形式 | 全角・半角、余分な空白に注意する |
| 取得タイミング | 起動時、一定間隔、手動更新 | 変更直後に反映されない場合がある |
| EA側ログ | 取得成功、取得失敗、反映値、無効理由 | 読み取った値と実行状態を分ける |
| 安全停止 | 値不正、取得失敗、外部通信失敗 | 意図せず停止条件になっていないか確認する |
外部連携トラブルでよくある原因
外部連携のトラブルでは、EA側の処理だけでなく、MT5端末設定、外部サービス、ネットワーク、認証情報、通知条件を分けて確認します。
| 症状 | 主な原因候補 | 最初に確認すること |
|---|---|---|
| 通知が届かない | Webhook URL違い、WebRequest未許可、通知条件未成立 | Expertsログ、WebRequest設定、通知ON/OFF |
| Google Sheetsへ記録されない | GAS URL違い、権限不足、シート名変更、書き込みエラー | 送信結果、HTTPステータス、シート側の構成 |
| 外部シート設定が反映されない | 取得タイミング、値の形式違い、空欄、通信失敗 | EA側ログ、シート値、取得時刻 |
| エラー通知が多すぎる | 同一エラーの繰り返し、通知間隔不足、失敗時リトライ | 通知頻度、繰り返し行、最初に出たエラー |
| VPSでは動かない | VPS側のMT5設定差、ネットワーク制限、古い設定 | 自宅PCとVPSのWebRequest設定差 |
| 認証やライセンスで止まる | アカウント不一致、期限、通信失敗、外部認証先エラー | 認証ログ、通信ログ、対象口座の確認 |
ログ確認で見るべきポイント
外部連携の確認では、ExpertsログとJournalログを分けて見ます。
Expertsログでは、EA側の送信処理、HTTPステータス、通知条件、書き込み結果、認証結果などを確認します。Journalログでは、MT5端末側の接続状態、注文応答、端末再起動、通信状態などを確認します。
外部連携では、発生時刻が重要です。通知が届かなかった時刻、シートへ記録されなかった時刻、設定を変更した時刻、EAを再起動した時刻を分けて整理してください。
| 確認するログ | 見る内容 | 用途 |
|---|---|---|
| Expertsログ | 送信結果、HTTPステータス、通知条件、認証結果、書き込み結果 | EA側の外部連携処理を確認する |
| Journalログ | 接続状態、端末操作、注文応答、通信状態 | MT5端末側の状態を確認する |
| 外部サービス側ログ | 受信結果、書き込みエラー、権限エラー | MT5外で止まっていないか確認する |
| スクリーンショット | 設定画面、通知先、シート構成、チャート状態 | 設定差や見落としを確認する |
関連する確認記事
外部連携は、通知、WebRequest、外部シート、ログ確認、商品導入前確認が重なりやすい分野です。確認したい内容に応じて、以下のページを使い分けてください。
| 関連ページ | 確認できる内容 | 使いどころ |
|---|---|---|
| MT5でWebRequestチェックツールを使う前に確認すること | WebRequestチェックツール利用前の確認項目 | 通信テストや許可URLを事前確認したい場合 |
| MT5でDiscord通知ツールを使う前に確認すること | Discord通知ツール利用前の確認項目 | 通知設定、Webhook、通知条件を整理する場合 |
| MT5で外部シート設定をEAに反映する時の確認ポイント | 外部シート設定とEA側反映の確認 | シート値がEAへ反映されない場合 |
| MT5で外部連携ツールを使う前に確認すること | 外部連携ツール全般の確認項目 | 複数の外部連携をまとめて確認する場合 |
| MT5でEAの通知が多すぎる時に確認すること | 通知過多、重複通知、エラー通知の整理 | 同じ通知が繰り返し出る場合 |
| MT5でEAの通知先を変更する時に確認すること | 通知先変更時の確認項目 | Webhookや通知チャンネルを変更する場合 |
関連商品・補助ツール
外部連携や通知確認を補助する商品を確認する場合は、用途に合う範囲だけを確認してください。商品ページは、導入前確認、対応環境、利用条件、免責事項を確認するための導線として扱います。
| 商品・ツール | 主な用途 | 確認しやすい内容 |
|---|---|---|
| WebRequestチェックツール | MT5から外部URLへ通信できるかを確認する | 許可URL、HTTPステータス、通信失敗、送信可否 |
| Discord通知ツール | EAやインジケーターの状態をDiscordへ通知する | Webhook、通知条件、送信結果、通知先確認 |
| Google Sheets連携ツール | EAの状態や履歴をGoogle Sheetsへ記録する | 書き込み結果、記録先、外部連携ログ、運用記録 |
相談前・利用前に確認するページ
外部連携の相談や商品確認をする前に、導入環境、利用条件、免責事項、相談時に必要な情報を確認してください。
| ページ | 確認する内容 | 使いどころ |
|---|---|---|
| 導入ガイド | 購入後の導入、設置、確認の流れ | 初めて補助ツールを導入する前 |
| 動作環境 | MT4/MT5、VPS、外部連携、動作前提 | 利用前の環境確認 |
| 購入前確認事項 | 購入前に確認する条件、対応範囲、注意事項 | 商品ページ確認時 |
| 免責事項・リスク説明 | 利用前に確認する注意事項、リスク説明 | 商品利用前・相談前 |
| 不具合報告・調査依頼について | 問い合わせ前に必要な情報、ログ、スクリーンショット、再現条件 | 個別に確認してほしい内容がある場合 |
| 開発・改修の相談ページ | 外部連携機能の追加、修正、個別開発の相談 | 既存EAへの通知・記録・外部シート連携を追加したい場合 |
共有しない方がよい情報
外部連携の確認では、Webhook URL、APIキー、GAS URL、認証トークン、口座番号、メールアドレス、VPS接続情報などがログやスクリーンショットに含まれる場合があります。
問い合わせや相談時に、これらの情報をそのまま貼り付けないでください。必要な場合でも、先頭や末尾だけを残して伏せる、ドメインだけを示す、対象サービス名だけを伝えるなど、共有範囲を絞ってください。
| 共有しない方がよい情報 | 理由 | 対応方法 |
|---|---|---|
| Webhook URL | 外部通知先へ送信できる可能性があるため | 実値は伏せ、通知先種別だけを伝える |
| APIキー、GAS URL、認証トークン | 外部サービスや認証情報に関わるため | 先頭・末尾以外を伏せる |
| 口座番号、氏名、メールアドレス | 個人情報に該当する可能性があるため | スクリーンショット上で隠す |
| VPSログイン情報 | 第三者が接続できる可能性があるため | 共有しない |
| ソースコード全文 | 権利や配布条件に関わる場合があるため | 必要な範囲だけ分けて確認する |
まとめ
MT5外部連携では、WebRequest、Discord通知、Google Sheets連携、外部シート設定、CSV出力、外部認証など、複数の確認項目があります。
通知が届かない、Google Sheetsへ記録されない、外部シート設定が反映されない、WebRequestでエラーが出るといった症状では、EA側、MT5端末側、通信先サービス側、VPSやネットワーク環境を分けて確認してください。
外部連携の確認では、送信条件、WebRequest許可URL、送信先URL、HTTPステータス、外部サービス側の権限、シート構成、通知先変更、ログの発生時刻が重要です。
問い合わせ前には、対象EA名、バージョン、銘柄、時間足、setファイル、発生時刻、Expertsログ、Journalログ、送信結果、再現条件、スクリーンショットを整理してください。Webhook URL、APIキー、GAS URL、認証トークン、口座番号、VPS接続情報などは、そのまま共有しないよう注意してください。
