Gmail通知を送る設定方法
シグナルが出た瞬間にスマホへ通知——PCの前にいなくてもトレードチャンスを逃さない環境を作る。Gmailアプリパスワードの取得からMT4/MT5のSMTP設定、MQL4/MQL5のコード実装まで、手順を完全に解説する。
- MT4/MT5のシグナルを外出中でもリアルタイムで受け取りたい
- カスタムインジケーターにメール通知機能を追加したい
- Gmailのアプリパスワード設定でつまずいている
- Googleアカウントで「アプリパスワード」を取得する(通常パスワードは使用不可)
- MT4/MT5のSMTP設定にsmtp.gmail.com・ポート587を入力する
- MQL4/MQL5でSendMail()関数を使って条件トリガーの通知を実装する
- 動作しない場合の5つのチェックポイントで確実に解決する
Gmail通知を活用するメリット
- リアルタイムでシグナルを受信:PCが起動していなくてもトレードチャンスを逃さない
- スマートフォンで即確認:外出中・移動中でも相場の状況をタイムリーに把握できる
- 複数デバイスで管理可能:PC・スマホ・タブレット全てに同時に通知が届く
STEP 1|Gmailアプリパスワードを取得する
Googleのセキュリティ強化により、通常のGmailパスワードでは外部アプリ(MT4/MT5)との連携ができない。専用の「アプリパスワード」を取得する必要がある。
アプリパスワードの取得にはGoogleアカウントの2段階認証が有効になっていることが条件だ。未設定の場合は先に有効化してから進む。
Googleアカウントのセキュリティページへ移動
Gmailにログインし、右上のアイコン → 「Googleアカウントを管理」→「セキュリティ」タブを開く。
「アプリパスワード」を選択
「Googleへのログイン」セクション内の「アプリパスワード」をクリック(2段階認証が有効でないと表示されない)。
アプリとデバイスを選択してパスワードを生成
「メール」→「Windows PC」を選択して「生成」をクリック。表示された16文字のパスワードを必ずメモしておく(例:abcd efgh ijkl mnop)。
STEP 2|MT4/MT5のメール(SMTP)設定
オプション画面を開く
MT4/MT5上部メニューの「ツール」→「オプション」を選択する。
「Eメール」タブで以下の通りに設定する
各項目を正確に入力することが重要だ。
- SMTPサーバー:
smtp.gmail.com - SMTPポート:
587(TLS対応) - SMTPログイン:自分のGmailアドレス(例:
yourname@gmail.com) - SMTPパスワード:STEP 1で取得したアプリパスワード(スペースなし16文字)
- 送信元:自分のGmailアドレス
- 受信先:通知を受け取りたいメールアドレス(同じGmailでも可)
テスト送信で動作確認
「テスト」ボタンを押して「成功しました」と表示されればOK。受信トレイに届いているか確認する。
STEP 3|カスタムインジケーターに通知コードを追加する
インジケーターのコードを編集できる場合、SendMail()関数を使って条件が成立したタイミングで自動送信できる。
MQL4(MT4用)の実装
// メール送信関数
void SendEmailNotification(string subject, string message) {
SendMail(subject, message);
}
// 条件トリガーの例
if (条件が成立した場合) {
SendEmailNotification(
"【KPT】シグナル発生",
"新しいトレードシグナルが発生しました!"
);
}
MQL5(MT5用)の実装
// メール送信関数(MQL5も同じ構文)
void SendEmailNotification(string subject, string message) {
SendMail(subject, message);
}
// OnTick内での実装例
void OnTick() {
if (条件が成立した場合) {
SendEmailNotification(
"【KPT】シグナル発生",
"通貨ペア: " + Symbol() + " / 時刻: " + TimeToString(TimeCurrent())
);
}
}
OnTick()内にそのまま実装すると毎ティックでメールが送信され続ける。フラグ変数(bool alreadySent)を使って1回のシグナルにつき1通だけ送信するよう制御すること。
うまく動作しない場合のチェックポイント
| チェック項目 | 確認方法 |
|---|---|
| アプリパスワードが正しいか | 16文字・スペースなしで入力されているか再確認 |
| SMTPサーバーが正しいか | smtp.gmail.comになっているか確認 |
| ポートが587か | 465(SSL)ではなく587(TLS)を使用 |
| MT4/MT5を再起動したか | 設定変更後は必ず再起動して反映させる |
| ファイアウォール・セキュリティソフトのブロック | MT4/MT5の通信を一時的に許可して再テスト |
⚙️ MT4/MT5環境はXMで構築する
XMはMT4・MT5両対応でカスタムインジケーター・EA運用が可能。VPSサービスも提供しており、24時間稼働の通知環境を整えやすい。
FAQ|MT4/MT5 Gmail通知のよくある質問
Q. アプリパスワードの項目がGoogleアカウントに表示されません
2段階認証が有効になっていないと「アプリパスワード」の項目が表示されない。まずGoogleアカウントのセキュリティ → 「2段階認証プロセス」を有効化してから再度確認する。
Q. テスト送信は成功するのに実際のシグナルで通知が来ません
インジケーターのコード内でSendMail()が正しいタイミングで呼ばれているかを確認する。OnTick()での連続呼び出し防止フラグが原因でシグナル後に送信されていないケースが多い。MetaEditorでデバッグログを確認するのが確実だ。
Q. MT4を閉じていると通知は来ますか?
MT4/MT5が起動していないと通知は送信されない。24時間通知を受け取りたい場合は、VPS(仮想専用サーバー)上でMT4/MT5を常時起動しておく必要がある。XMやAXIORYが提供するVPSサービスを活用するのが最も手軽な方法だ。
Q. Gmailではなく他のメールアドレスに送れますか?
送信はGmailのSMTPを使うが、受信先(MT4/MT5の「受信先」欄)には任意のメールアドレスを指定できる。GmailをSMTPサーバーとして使いつつ、受け取りはiCloudメールやOutlookでも問題ない。
まとめ|4ステップで通知環境を完成させる
Gmail通知を設定することで、チャートから離れていてもトレードチャンスを逃さない環境が手に入る。
- Googleアカウントでアプリパスワード(16文字)を取得する
- MT4/MT5のSMTP設定に smtp.gmail.com・ポート587を入力する
- MQL4/MQL5のSendMail()関数で条件トリガーの通知を実装する
- 連続送信防止フラグを入れてテスト送信で動作確認する
24時間稼働させたい場合はVPS環境と合わせて構築すること。通知環境が整うだけで、トレードの取りこぼしは大幅に減る。





