Cách gửi thông báo đẩy MT5 từ EA và thiết kế thông báo
Mục lục (5)
Mục lục
Xin nói kết luận trước. Thông báo đẩy của EA không dùng để "báo mọi lệnh khớp", mà dùng để "chỉ báo những lúc con người cần ra tay". Thông báo quá nhiều thì bạn sẽ bỏ sót đúng một tin thực sự nguy hiểm. Chúng tôi thiết kế thông báo thu gọn trong 3 nhóm: "đã dừng", "ngoài dự kiến" và "mốc quan trọng".
Cơ chế: từ EA đến điện thoại
Thông báo đẩy của MT5 được gửi bằng hàm SendNotification() của MQL5. Nơi nhận là MetaQuotes ID được gán cho ứng dụng MT5 di động. Quy trình như sau:
- EA gọi
SendNotification("nội dung") - Terminal MT5 đang chạy EA gửi tin nhắn lên máy chủ của MetaQuotes
- Thông báo đẩy được gửi đến ứng dụng MT5 di động có MetaQuotes ID trùng khớp
Điều quan trọng ở đây là bên gửi thông báo là "terminal đang chạy EA". Nếu bạn chạy EA trên VPS, bạn cần cài MetaQuotes ID cho MT5 trên VPS chứ không phải trên máy tính cá nhân. Chỉ cài trên máy tính cá nhân rồi không nhận được thông báo là nhầm lẫn rất hay gặp.
Ngoài ra, hàm này có những giới hạn theo đặc tả: nội dung tối đa 255 ký tự, tần suất gửi cũng có giới hạn, nếu gọi liên tiếp trong thời gian ngắn sẽ báo lỗi. Trong Strategy Tester, thông báo không được gửi đi.
So sánh nhà môi giới khuyên dùng →
🎁 Tải EA miễn phí📧 Khóa học email miễn phí (8 email) + gói 13 chỉ báo MT5 dành riêng cho người đăng ký
* Quyền riêng tư được bảo vệ nghiêm ngặt. Bạn có thể hủy đăng ký bất cứ lúc nào.
Các bước cài đặt
1. Tra cứu MetaQuotes ID
Mở ứng dụng MT5 di động (iOS/Android), vào màn hình cài đặt và xem mục liên quan đến tin nhắn để lấy MetaQuotes ID. Đó là một dãy ngắn gồm chữ và số. Vị trí hiển thị có thể thay đổi theo phiên bản ứng dụng, nếu không thấy, hãy tìm trong màn hình cài đặt.
2. Đăng ký trên terminal
Trên MT5 đang chạy EA, mở "Tools" → "Options" → thẻ "Notifications", đánh dấu "Enable Push Notifications" rồi nhập ID. Nếu bấm nút "Test" và nhận được thông báo thử nghiệm thì việc cài đặt đã hoàn tất.
3. Bật thông báo ở phía EA
Nếu EA có tham số đầu vào cho thông báo, hãy bật nó lên. Cách cài đặt bản thân EA được tổng hợp tại Cách cài đặt EA. Lưu ý khi chạy trên VPS, vui lòng xem Thông tin VPS.
Nên báo gì, không nên báo gì
Cách phân loại chúng tôi đang dùng như sau.
| Nhóm | Ví dụ nên báo | Ví dụ không nên báo |
|---|---|---|
| Đã dừng | Lệnh liên tục bị từ chối, mất kết nối, giao dịch tự động bị vô hiệu | Một lần requote tạm thời |
| Ngoài dự kiến | Mức ký quỹ duy trì xuống dưới ngưỡng bạn tự đặt, vượt DD cho phép | Dao động lãi lỗ chưa chốt thông thường |
| Mốc quan trọng | Tóm tắt lãi lỗ theo ngày (1 lần/ngày) | Mỗi lần vào lệnh/đóng lệnh |
Có đưa "mỗi lần khớp lệnh" vào thông báo hay không là tùy tần suất giao dịch của EA. Hãy so sánh hai EA của chúng tôi.
GOLD TRIPWIRE trong backtest (thời gian kiểm định 6.8 năm) có 2762 lệnh, thời gian nắm giữ trung bình 2:38:15. BITCOIN COMET trong backtest (thời gian kiểm định 8 năm) có 775 lệnh, thời gian nắm giữ trung bình 63:51:39.
Với EA vòng quay nhanh như EA đầu tiên, nếu báo theo từng lệnh khớp thì điện thoại sẽ reo liên tục và các thông báo quan trọng bị chìm mất. Với EA nắm giữ lâu như EA thứ hai, báo theo từng lệnh khớp có lẽ không gây phiền toái nhiều. Tuy nhiên, đây là số liệu backtest nên tần suất giao dịch thực tế sẽ thay đổi theo thị trường. Chi tiết xem tại trang GOLD TRIPWIRE và BITCOIN COMET.
Cách viết nội dung
Hãy viết sao cho chỉ cần đọc vài chục ký tự đầu hiện trên thanh thông báo là đã nắm được. Nếu theo thứ tự "[số cuối tài khoản][tên viết tắt EA][nhóm] nội dung", thì dù bạn chạy nhiều EA hay nhiều tài khoản, vẫn biết chuyện gì đang xảy ra mà không cần mở thông báo.
Giới hạn và lưu ý
Xin nói thẳng ở phần này.
- Không có thông báo không có nghĩa là mọi thứ bình thường. Nếu cả terminal đã sập thì không còn ai để gửi thông báo. Thông báo "đã dừng" không thể do chính thứ đã dừng gửi đi. Chỉ còn cách đặt thông báo heartbeat "tôi vẫn sống" gửi đúng giờ, và vận hành sao cho bạn nhận ra khi nó không đến.
- Không có bảo đảm sẽ đến nơi. Việc này phụ thuộc vào máy chủ MetaQuotes, hệ điều hành điện thoại và tình trạng mạng. Mức độ chậm trễ hay thất lạc là bao nhiêu thì chính chúng tôi cũng chưa nắm chính xác.
- Chạm giới hạn tần suất thì thông báo bị âm thầm bỏ đi. Khi lỗi xảy ra liên tiếp, bản thân khâu xử lý thông báo có thể bị nghẽn, nên phía EA cần có cách triển khai giãn khoảng cách giữa các lần gửi.
- Nếu xem thông báo rồi can thiệp thủ công, cách vận hành đó khác với kết quả kiểm định của EA. Thông báo là dữ liệu để quyết định "có dừng hay không", không phải tín hiệu để tùy ý chỉnh sửa vị thế.
- Thông báo reo giữa đêm làm giảm chất lượng phán đoán. Thay vì thao tác trong lúc ngái ngủ rồi gây sự cố, giới hạn khung giờ đêm chỉ nhận thông báo nhóm "đã dừng" cũng là một lựa chọn.
Tóm tắt
- Đăng ký MetaQuotes ID trên terminal đang chạy EA (nếu dùng VPS thì đăng ký trên VPS) để gửi thông báo
- Luôn bấm nút "Test" để xác nhận thông báo đến được
- Chỉ báo 3 nhóm: "đã dừng", "ngoài dự kiến", "mốc quan trọng"
- Có báo từng lệnh khớp hay không tùy tần suất giao dịch. Với EA vòng quay nhanh, hãy gộp thành bản tóm tắt
- Không có thông báo không chứng minh mọi thứ bình thường. Dùng thông báo heartbeat để nhận ra "sự im lặng"
- Thông báo là dữ liệu để quyết định dừng, không phải tín hiệu để can thiệp theo cảm tính
Liên quan
2026-11-12
Thiết kế log cho EA: tái hiện sự cố sau khi xảy ra
2026-11-06
Mã lỗi MT5 khi lệnh bị từ chối và thứ tự xử lý
2026-11-04
Thiết kế MagicNumber khi chạy nhiều EA trên một tài khoản
2026-11-02
Lệnh và vị thế MT5 | Tránh sự cố tài khoản Netting
📧 Khóa học email miễn phí (8 email) + gói 13 chỉ báo MT5 dành riêng cho người đăng ký
* Quyền riêng tư được bảo vệ nghiêm ngặt. Bạn có thể hủy đăng ký bất cứ lúc nào.
Bạn có câu hỏi về EA hay Forex?
Bạn có thể đăng câu hỏi trên diễn đàn giao dịch Nattzy (đăng ký miễn phí). Không nhất thiết liên quan đến bài viết này — cài đặt EA, chọn sàn môi giới, v.v. đều được.
Hỏi trên Nattzy ↗