MT5のプッシュ通知をEAから飛ばす設定と通知設計
目次 (5)
結論から書きます。EAのプッシュ通知は「全部の約定を知らせる」ためではなく、**「人が動くべき場面だけを知らせる」**ために使います。通知が多すぎると、本当に危ない一通を見落とします。私たちは通知を「止まった」「想定外」「節目」の3種類に絞って設計しています。
仕組み:EAからスマホに届くまで
MT5のプッシュ通知は、MQL5の SendNotification() 関数で送ります。届く先は、MT5モバイルアプリに割り当てられた MetaQuotes ID です。流れは次のとおりです。
- EAが
SendNotification("本文")を呼ぶ - EAを動かしているMT5ターミナルが、MetaQuotesのサーバーにメッセージを送る
- MetaQuotes IDが一致するMT5モバイルアプリに、プッシュ通知が届く
ここで大事なのは、通知を送るのは「EAが動いているターミナル」だという点です。VPSでEAを動かしているなら、手元のPCではなくVPS側のMT5にMetaQuotes IDを設定する必要があります。手元のPCだけ設定して届かない、というのはよくある取り違えです。
また、この関数には仕様上の制約があります。本文は255文字まで、送信頻度にも上限があり、短時間に連続で呼ぶとエラーになります。ストラテジーテスターの中では通知は送られません。
おすすめブローカー比較 →
🎁 無料EAをダウンロード📧 無料メール講座(全8通)+登録者限定 MT5 インジケーター13本パック
※ プライバシーは厳守。配信解除はいつでも可能です。
設定手順
1. MetaQuotes IDを調べる
MT5モバイルアプリ(iOS/Android)を開き、設定画面のメッセージ関連の項目でMetaQuotes IDを確認します。英数字の短いIDです。表示場所はアプリのバージョンで変わることがあるので、見つからない場合は設定画面の中を探してください。
2. ターミナル側に登録する
EAを動かすMT5で「ツール」→「オプション」→「通知」タブを開き、「プッシュ通知を有効にする」にチェックを入れてIDを入力します。「テスト」ボタンで試験通知が届けば、設定は完了です。
3. EA側で通知をオンにする
EAに通知用の入力パラメータがある場合はオンにします。EA自体の設定方法は EA設定方法 にまとめています。VPSで動かす場合の注意は VPS情報 を参照してください。
何を通知し、何を通知しないか
私たちが使っている区分は次のとおりです。
| 区分 | 通知する例 | 通知しない例 |
|---|---|---|
| 止まった | 発注拒否が続いた、接続が切れた、自動売買が無効になった | 一時的なリクオート1回 |
| 想定外 | 証拠金維持率が自分で決めた水準を割った、許容DDを超えた | 通常の含み損の上下 |
| 節目 | 日次の損益サマリー(1日1回) | 毎回のエントリー・決済 |
「毎回の約定」を通知に入れるかどうかは、EAの取引頻度で決めます。私たちのEAで比べてみます。
GOLD TRIPWIRE はバックテスト(検証6.8年)で2762取引、平均保有2:38:15です。 BITCOIN COMET はバックテスト(検証8年)で775取引、平均保有63:51:39です。
前者のように回転が速いEAで約定ごとに通知すると、スマホが鳴り続けて重要な通知が埋もれます。後者のように保有が長いEAなら、約定ごとの通知でも負担は小さいでしょう。ただし、これはバックテストの数字なので、実際の取引頻度は相場次第で変わります。詳細は GOLD TRIPWIRE と BITCOIN COMET のページにあります。
本文の書き方
通知は通知欄に出る冒頭数十文字で判断できるように書きます。「[口座番号末尾][EA略称][区分] 内容」の順にすると、複数のEAや口座を回していても、通知を開かずに何が起きたかが分かります。
限界と注意
ここは正直に書いておきます。
- 通知が来ない=正常、とは限りません。 ターミナルごと落ちていれば、通知を送る主体がいません。「止まった」通知は、止まった本人からは送れないのです。定時に「生きています」と送るハートビート通知を入れ、それが届かないことに気づく運用にするしかありません。
- 届く保証はありません。 MetaQuotesのサーバーやスマホのOS、通信状況に依存します。到達の遅れや欠落がどの程度起きるのか、私たちも正確には把握できていません。
- 頻度制限に当たると黙って捨てられます。 エラーが連続すると通知処理そのものが詰まる場合があるので、EA側で送信間隔を空ける実装が必要です。
- 通知を見て手動で介入すると、EAの検証結果とは別物の運用になります。 通知は「止める判断」の材料であって、裁量でポジションをいじる合図ではありません。
- 夜中に鳴る通知は、判断の質を下げます。 深夜に寝ぼけたまま操作して事故になるくらいなら、深夜帯は「止まった」系だけに絞るのも一つの選択です。
まとめ
- 通知はEAを動かしているターミナル(VPSならVPS側)にMetaQuotes IDを登録して送る
- 「テスト」ボタンで届くことを必ず確かめる
- 通知するのは「止まった」「想定外」「節目」の3種類に絞る
- 毎回の約定を通知するかは取引頻度で決める。回転の速いEAではサマリーにまとめる
- 通知が来ないことは正常の証明にならない。ハートビート通知で「沈黙」に気づけるようにする
- 通知は止める判断の材料であって、裁量介入の合図ではない
関連記事
📧 無料メール講座(全8通)+登録者限定 MT5 インジケーター13本パック
※ プライバシーは厳守。配信解除はいつでも可能です。