MT5のメール通知が届かない時に見る設定

MT5でメール通知が届かない時は、アラート側だけでなく、プラットフォーム側のEmailタブ、SMTP情報、From/To、Test送信、メールサービス側の条件を分けて見る必要があります。

この記事では、MT5のメール通知を「Alertsタブから送る場合」と「MQL5プログラムからSendMail()で送る場合」に分けて、どこを見るかを整理します。

先に短く言うと

MT5のメール通知は、チャートやインジケーターだけで完結する機能ではありません。MT5本体のEmail設定、メールサービス側のSMTP条件、アラート側のAction、メール本文の設定が組み合わさって動きます。

届かない時は、まずMT5のEmailタブでTest送信できるかを見ます。その後、AlertsタブのActionがEmailになっているか、EAやインジ側でSendMail()を使っているかを分けて見ます。

見る順番

Emailタブ → Test送信 → AlertsタブのAction → アラート条件 → SendMail()の有無 → メールサービス側の制限、という順番で見ます。先にアラートだけを作り直すと、原因が遠回りになります。

MT5のメール通知で分けたい2つの経路

MT5のメール通知には、大きく分けて2つの入口があります。標準アラートから送る場合と、EA・インジケーター・スクリプトなどのMQL5プログラムから送る場合です。

経路どこから送るか見る場所
アラートから送るメールToolboxのAlertsタブでActionにEmailを選ぶAlertsタブ、メール作成画面、Emailタブ
MQL5プログラムから送るメールEA、インジケーター、スクリプトなどでSendMail()を呼ぶコード、Expertsログ、Journalログ、Emailタブ

どちらの経路でも、MT5のEmailタブ設定を使います。アラートを何度作り直しても、Emailタブ側が合っていなければ届きません。

Emailタブで見る項目

MT5のEmailタブでは、メール送信に必要なSMTP情報と送信元・宛先を設定します。メールサービスごとに必要なサーバー名、ポート番号、認証方法が異なるため、利用しているメールサービスの公式情報も合わせて見ます。

項目見ることつまずきやすい点
Enableメール通知設定が有効かを見るSMTP情報が入っていても、有効化されていなければ送信されません。
SMTP serverサーバー名とポート番号を見るサーバー名だけでなく、ポート番号や暗号化方式が関係する場合があります。
SMTP loginログイン名を確認するメールアドレス全体が必要な場合と、ユーザー名だけの場合があります。
SMTP passwordパスワードやアプリ用パスワードを見る二段階認証を使っている場合、通常パスワードでは送れないことがあります。
From送信元メールアドレスを見るFromとSMTPログインの組み合わせが合わないと止まる場合があります。
To宛先メールアドレスを見る誤入力、複数指定、迷惑メール側の扱いを見ます。
Test設定だけで送信できるかを見るここで失敗する場合、アラートやEA側へ進む前にEmailタブを見直します。

アラート側でEmailを選んでいるかを見る

ToolboxのAlertsタブで作るアラートには、ActionとしてSound、File、Email、Notificationなどがあります。メール通知にしたい場合は、ActionがEmailになっているかを見ます。

Soundのままなら音だけ、Notificationならスマホへのプッシュ通知側を使います。メールが届かない時は、まずActionの取り違えを見てください。

Alertsタブで見ること
  • ActionがEmailになっているか
  • 条件がBid、Ask、Last、Volume、Timeなど意図した内容か
  • アラートが無効化されていないか
  • 有効期限が切れていないか
  • 繰り返し間隔や最大回数が意図した内容か
  • Testボタンで動作を見たか

SendMail()を使うEAやインジの場合

EAやインジケーター側でメールを送る場合、MQL5のSendMail()が使われることがあります。SendMail()は、MT5のEmailタブで指定された設定を使ってメールを送る関数です。

そのため、コード側にSendMail()があっても、EmailタブのEnable、SMTP server、login、password、From、Toが合っていなければ、メール送信は成立しません。

テスター上では見方が変わる

MQL5リファレンスでは、SendMail()はストラテジーテスター内では動作しないと説明されています。テスター上で届かない場合は、通常チャート上での動作と分けて見ます。

届かない時の切り分け順

  1. EmailタブでEnableが有効かを見る
  2. SMTP server、login、password、From、Toを見直す
  3. EmailタブのTestで送信できるかを見る
  4. AlertsタブでActionがEmailになっているかを見る
  5. アラート条件、有効期限、繰り返し設定を見る
  6. EAやインジの場合、SendMail()の有無とログを見る
  7. メールソフト側の迷惑メール、受信制限、セキュリティ通知を見る

ラボメモ

MT5のメール通知は、アラート設定だけでなく、SMTP認証、送信元、宛先、メールサービス側の制限が重なって動きます。

届かない時は、最初にTest送信でプラットフォーム側の設定を見てから、アラートやEA側の条件へ進むと原因を分けやすくなります。

メールサービス側で見ること

MT5側の項目が合っているように見えても、メールサービス側の条件で止まることがあります。二段階認証、アプリ用パスワード、外部アプリからのSMTP送信許可、セキュリティ通知などです。

この部分はメールサービスごとに変わります。具体的なサーバー名、ポート番号、認証方法、パスワードの扱いは、利用しているメールサービスの最新ヘルプで見てください。

MT5メール通知とプッシュ通知の違い

メール通知とプッシュ通知は、どちらもアラートの通知先として使えますが、設定場所が異なります。

種類使う設定主に見る項目
メール通知EmailタブSMTP server、login、password、From、To、Test
プッシュ通知NotificationsタブMetaQuotes ID、有効化、Test送信

メールが届かないからといって、すぐにプッシュ通知側を触ると原因がずれることがあります。ActionがEmailなのかNotificationなのかを先に見てください。

用語を先に押さえる

メール通知の設定で詰まりやすい場合は、用語の意味を先に押さえておくと読みやすくなります。

関連して読みたい記事

まとめ

MT5のメール通知が届かない時は、アラート画面だけで判断せず、EmailタブのEnable、SMTP server、login、password、From、To、Test送信を先に見ます。

そのうえで、AlertsタブのActionがEmailになっているか、アラート条件や有効期限が合っているかを見ます。EAやインジから送る場合は、SendMail()とログも分けて見てください。

メールサービス側の仕様は変わることがあるため、SMTPサーバーや認証方法は、利用しているメールサービスの公式情報で最新条件を確認してください。

参考文献