MT5 EA推播通知設定與通知設計
先說結論。EA 的推播通知不是用來「告知每一筆成交」,而是用來**「只在需要人介入的時候提醒你」**。通知太多,真正危險的那一則反而會被漏看。我們把通知歸納為「停止」「意外」「節點」三種來設計。
運作原理:從 EA 到手機的路徑
MT5 的推播通知是透過 MQL5 的 SendNotification() 函數發送,送達對象是指派給 MT5 手機 App 的 MetaQuotes ID。流程如下:
- EA 呼叫
SendNotification("內文") - 執行 EA 的 MT5 終端,將訊息傳送到 MetaQuotes 的伺服器
- 推播通知送達 MetaQuotes ID 相符的 MT5 手機 App
這裡的重點是,發送通知的是「正在執行 EA 的那個終端」。如果 EA 跑在 VPS 上,就必須在 VPS 端的 MT5 設定 MetaQuotes ID,而不是自己手邊的電腦。只設定手邊電腦而收不到通知,是很常見的搞錯情況。
此外,這個函數在規格上有限制:內文最多 255 個字元,發送頻率也有上限,短時間內連續呼叫會出錯。在策略測試器中不會發送通知。
推薦經紀商比較 →
🎁 免費下載EA📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
※ 嚴格保護隱私。可隨時取消訂閱。
設定步驟
1. 查詢 MetaQuotes ID
開啟 MT5 手機 App(iOS/Android),在設定畫面中與訊息相關的項目裡確認 MetaQuotes ID。它是一組簡短的英數字 ID。顯示位置可能隨 App 版本而異,找不到時請在設定畫面中多找找。
2. 在終端端登錄
在執行 EA 的 MT5 中,開啟「工具」→「選項」→「通知」分頁,勾選「啟用推播通知」並輸入 ID。按下「測試」按鈕後若收到測試通知,設定即完成。
3. 在 EA 端開啟通知
如果 EA 有通知用的輸入參數,請將其開啟。EA 本身的設定方法整理在 EA設定方法。若在 VPS 上執行,請參考 VPS資訊 的注意事項。
該通知什麼,不該通知什麼
我們使用的分類如下。
| 類別 | 應通知的例子 | 不須通知的例子 |
|---|---|---|
| 停止 | 下單持續被拒、連線中斷、自動交易被停用 | 單次暫時性的重新報價 |
| 意外 | 保證金維持率跌破自己設定的水準、超過可容許的 DD | 一般浮動虧損的起伏 |
| 節點 | 每日損益摘要(每天一次) | 每次進場與平倉 |
是否要把「每一筆成交」納入通知,取決於 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 的伺服器、手機作業系統與通訊狀況。送達延遲或遺漏會發生到什麼程度,我們也無法精確掌握。
- 碰到頻率限制時會被默默丟棄。 錯誤連續發生時,通知處理本身可能卡住,所以 EA 端需要實作拉開發送間隔的機制。
- 看到通知就手動介入,會變成與 EA 驗證結果不同的營運方式。 通知是「決定是否停止」的參考材料,不是憑主觀去動倉位的訊號。
- 半夜響起的通知會降低判斷品質。 與其半夜迷迷糊糊地操作而出事,深夜時段只保留「停止」類通知也是一種選擇。
總結
- 在執行 EA 的終端(若為 VPS 則是 VPS 端)登錄 MetaQuotes ID 後發送通知
- 務必用「測試」按鈕確認通知能送達
- 通知只歸納為「停止」「意外」「節點」三種
- 是否通知每一筆成交,依交易頻率決定。週轉快的 EA 改為彙整成摘要
- 沒收到通知不能證明一切正常。用心跳通知讓自己能察覺「沉默」
- 通知是決定是否停止的參考材料,不是主觀介入的訊號
相關文章
📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
※ 嚴格保護隱私。可隨時取消訂閱。