Hướng Dẫn Xử Lý Mã Lỗi MQL5 / MT5 — Danh Sách ERR_NO_MONEY, ERR_TRADE_DISABLED
Mục lục
- Cách Kiểm Tra Tab Expert
- Các Mã Lỗi Thường Gặp và Cách Xử Lý
- ERR_NO_MONEY (Mã lỗi 134)
- ERR_TRADE_DISABLED (Mã lỗi 4109)
- ERR_MARKET_CLOSED (Mã lỗi 132)
- ERR_INVALID_STOPS (Mã lỗi 130)
- ERR_OFF_QUOTES (Mã lỗi 136)
- ERR_TRADE_TIMEOUT (Mã lỗi 128)
- TRADE_RETCODE_REJECT (Mã trả về 10006)
- "Margin level too low"
- "No signal on this bar" hoặc "Wait for next bar"
- Phân Loại Mức Độ Ưu Tiên của Lỗi
- Cách Kiểm Tra Log trong Tab Expert Hiệu Quả
- Lọc Log
- Vị Trí Lưu File Log
- Tóm Tắt
- Câu Hỏi Thường Gặp
- H: Tôi có thể tra cứu mã lỗi ở đâu?
- H: Khi có rất nhiều lỗi xuất hiện, tôi có nên dừng EA không?
- H: Tôi đang gặp lỗi "Invalid account".
- H: Không có lỗi nhưng EA vẫn không vào lệnh.
Hướng Dẫn Xử Lý Mã Lỗi MQL5 / MT5 — Danh Sách ERR_NO_MONEY, ERR_TRADE_DISABLED
Khi tab Expert của MT5 hiển thị các lỗi MQL5 như ERR_NO_MONEY hay ERR_TRADE_DISABLED, bạn có thể lo lắng — nhưng hầu hết đều có nguyên nhân và cách xử lý rõ ràng. Bài viết này tổng hợp các mã lỗi phổ biến thực sự xảy ra trong quá trình vận hành EA cùng với giải pháp khắc phục tương ứng.
Cách Kiểm Tra Tab Expert
Nhấp vào tab "Expert" ở phần dưới MT5 để xem toàn bộ log của các EA theo thứ tự thời gian.
Định dạng hiển thị:
2026.05.18 10:00:01.234 GOLD EMA ATR EA XAUUSD,H1: [ERROR] 130
Ngày giờ Tên EA Cặp tiền Khung thời gian Thông báo
Nếu có lỗi xuất hiện, hãy xác định nguyên nhân dựa vào số mã lỗi.
Các Mã Lỗi Thường Gặp và Cách Xử Lý
ERR_NO_MONEY (Mã lỗi 134)
Ví dụ thông báo: "Order failed: not enough money"
"ERR_NO_MONEY"
Nguyên nhân: Không đủ ký quỹ để mở lệnh.
Cách xử lý:
- Kiểm tra tỷ lệ ký quỹ hiện tại trong tab "Trade" của MT5
- Nếu tỷ lệ ký quỹ gần dưới 100%, hãy cân nhắc nạp thêm tiền
- Giảm RiskPercent trong EA để thu nhỏ khối lượng lệnh
- Đóng một phần lệnh đang mở thủ công để thu hồi ký quỹ
ERR_TRADE_DISABLED (Mã lỗi 4109)
Ví dụ thông báo: "Trade is not allowed"
"AutoTrading disabled"
Nguyên nhân: Tính năng giao dịch tự động của MT5 đang bị TẮT.
Cách xử lý:
- Nhấp vào nút "AutoTrading" trên thanh công cụ phía trên MT5 để BẬT (màu xanh)
- Vào Tools → Options → Expert Advisors → Bật "Allow automated trading" rồi khởi động lại
Lỗi này thường xảy ra khi MT5 tự động khởi động sau khi VPS được khởi động lại.
ERR_MARKET_CLOSED (Mã lỗi 132)
Ví dụ thông báo: "Market is closed"
Nguyên nhân: EA cố gắng vào lệnh ngoài giờ giao dịch (cuối tuần, ngày lễ).
Cách xử lý: Thông thường không cần lo lắng. Thị trường đóng cửa từ khoảng 00:00 thứ Bảy đến 17:00 Chủ Nhật (giờ máy chủ). Lỗi này xuất hiện khi EA cố gắng vào lệnh trong khoảng thời gian đó, nhưng sẽ tự động tiếp tục vào thứ Hai.
ERR_INVALID_STOPS (Mã lỗi 130)
Ví dụ thông báo: "Invalid stops"
"Stop level violation"
Nguyên nhân: Giá trị SL (Stop Loss) hoặc TP (Take Profit) bị vi phạm giới hạn stop level của broker.
Cách xử lý:
- Kiểm tra stop level (khoảng cách SL tối thiểu) của broker (Chuột phải vào symbol trong MT5 → Specification → cột "Stop level")
- Xác nhận rằng khoảng SL của EA lớn hơn stop level
- Lỗi này dễ xảy ra trong các khung giờ biến động thấp khi giá trị ATR cực kỳ nhỏ
ERR_OFF_QUOTES (Mã lỗi 136)
Ví dụ thông báo: "Off quotes"
Nguyên nhân: Không nhận được báo giá từ máy chủ broker. Vấn đề kết nối.
Cách xử lý:
- Kiểm tra trạng thái kết nối ở thanh trạng thái phía dưới MT5
- Nếu bị ngắt kết nối, khởi động lại MT5
- Kiểm tra thông báo sự cố máy chủ của broker
- Kiểm tra kết nối mạng của VPS
ERR_TRADE_TIMEOUT (Mã lỗi 128)
Ví dụ thông báo: "Trade timeout"
Nguyên nhân: Lệnh bị hết thời gian chờ. Máy chủ quá tải hoặc độ trễ mạng cao.
Cách xử lý:
- Lỗi này dễ xảy ra trong các khung giờ tải cao, chẳng hạn ngay sau khi công bố chỉ số quan trọng
- Về cơ bản, EA sẽ tự thử lại ở tick tiếp theo nên có thể bỏ qua
- Nếu xảy ra thường xuyên, hãy xem xét lại môi trường mạng VPS hoặc đổi broker
TRADE_RETCODE_REJECT (Mã trả về 10006)
Ví dụ thông báo: "Request rejected"
Nguyên nhân: Lệnh bị broker từ chối. Spread vượt ngưỡng, giá biến động quá nhanh, v.v.
Cách xử lý:
- Kiểm tra giá trị MaxSpreadPoints. Lỗi này dễ xảy ra khi spread đang mở rộng
- Có thể bỏ qua nếu xảy ra ngay sau khi công bố chỉ số — đây là hành vi bình thường
- Nếu xảy ra thường xuyên, hãy tăng nhẹ MaxSpreadPoints
"Margin level too low"
Ví dụ thông báo: "Margin level too low. Skip signal."
Nguyên nhân: Với cài đặt UseMarginCheck = true trong EA, tỷ lệ ký quỹ đã xuống dưới MinMarginLevel (ví dụ: 200%) nên EA tự động dừng vào lệnh mới.
Cách xử lý:
- Đây là hành vi bảo vệ bình thường (không phải lỗi)
- EA sẽ tiếp tục vào lệnh khi tỷ lệ ký quỹ phục hồi
- Giải pháp căn bản: nạp thêm tiền hoặc giảm RiskPercent
"No signal on this bar" hoặc "Wait for next bar"
Đây không phải lỗi mà là thông tin debug.
"No signal. ATR=1245, EMA(50)=1998.23"
Đây là log bình thường khi EA đánh giá biểu đồ mỗi lần và xác định "lần này không đủ điều kiện vào lệnh".
Phân Loại Mức Độ Ưu Tiên của Lỗi
| Mức độ | Lỗi | Xử lý |
|---|---|---|
| 🚨 Khẩn cấp | ERR_NO_MONEY (134) | Nạp thêm ký quỹ ngay lập tức |
| 🚨 Khẩn cấp | ERR_TRADE_DISABLED (4109) | Bật tính năng AutoTrading |
| ⚠️ Chú ý | ERR_INVALID_STOPS (130) | Xem lại cài đặt SL |
| ⚠️ Chú ý | ERR_OFF_QUOTES (136) lặp lại nhiều | Kiểm tra môi trường kết nối |
| ✅ Bình thường | ERR_MARKET_CLOSED (132) chỉ cuối tuần | Bỏ qua, không cần xử lý |
| ✅ Bình thường | ERR_TRADE_TIMEOUT (128) xuất hiện thỉnh thoảng | Bỏ qua, không cần xử lý |
| ✅ Bình thường | Margin level too low | Hoạt động bình thường khi ký quỹ thấp |
Cách Kiểm Tra Log trong Tab Expert Hiệu Quả
Lọc Log
Trong tab Expert, nhấp chuột phải → "Filter" để chỉ hiển thị EA cụ thể hoặc lỗi cụ thể.
Vị Trí Lưu File Log
File log của MT5 được lưu tại:
C:\Users\[TênNgườiDùng]\AppData\Roaming\MetaQuotes\Terminal\[ID]\MQL5\Logs\
Các file được tạo tự động theo ngày. Khi điều tra lỗi, hãy mở thư mục này để kiểm tra.
Tóm Tắt
Hầu hết các lỗi EA đều thuộc một trong bốn nhóm sau:
- Thiếu ký quỹ: Giải quyết bằng cách nạp thêm tiền hoặc giảm khối lượng lệnh
- AutoTrading bị TẮT: Chỉ cần nhấp vào nút là xong
- Vấn đề kết nối: Khởi động lại MT5 hoặc kiểm tra mạng VPS
- Hoạt động bình thường: Bỏ qua (thị trường đóng cuối tuần, né tránh khi spread mở rộng, v.v.)
Hãy tập thói quen kiểm tra tab Expert hàng ngày để phát hiện nhanh các lỗi khẩn cấp (134 và 4109).
Câu Hỏi Thường Gặp
H: Tôi có thể tra cứu mã lỗi ở đâu?
Bạn có thể xem danh sách mã lỗi đầy đủ trong tài liệu chính thức của MQL5 (mql5.com). Ngoài ra, cũng có thể tìm kiếm trong phần trợ giúp MT5 (phím F1).
H: Khi có rất nhiều lỗi xuất hiện, tôi có nên dừng EA không?
Nếu chỉ xuất hiện rải rác ERR_MARKET_CLOSED (132) hay ERR_TRADE_TIMEOUT (128), bạn không cần dừng EA. Tuy nhiên, nếu ERR_NO_MONEY (134) xuất hiện liên tục, hãy tạm dừng EA, kiểm tra tình trạng ký quỹ rồi mới tiếp tục.
H: Tôi đang gặp lỗi "Invalid account".
Có thể thông tin đăng nhập MT5 (tên máy chủ, ID đăng nhập, mật khẩu) không chính xác. Hãy thử đăng nhập lại qua File → Open Account.
H: Không có lỗi nhưng EA vẫn không vào lệnh.
Nếu không có lỗi mà EA vẫn không vào lệnh, đây là trạng thái bình thường — có nghĩa là "chưa có tín hiệu". EA không vào lệnh ở mọi cây nến mà chỉ vào khi đủ điều kiện. Hãy chờ thêm một thời gian. Với EA khung H1, vào lệnh 1-3 lần mỗi ngày là hoàn toàn bình thường.
Liên quan
2026-05-22
Cách Đọc Báo Cáo Backtest MT5【Phiên Bản 2026】Giải Thích Đầy Đủ Ý Nghĩa Các Chỉ Số
2026-05-18
Cách Thiết Lập Giai Đoạn Kiểm Thử Demo Trước Khi Chạy EA Thật - 3 Tháng Cần Xác Nhận Những Gì
2026-05-18
Quản Lý Drawdown của EA MT5 - Cài Đặt Dừng Tự Động và Kiểm Soát Tâm Lý
2026-05-18
Vốn tối thiểu để chạy EA tự động là bao nhiêu? Ví dụ thực tế về ký quỹ và thiết kế lot
Khóa học Email 5 Ngày (Miễn phí)
Nhận một email mỗi ngày bao gồm các nguyên tắc cơ bản về giao dịch FX tự động, cách đọc backtest đúng cách và mẹo chọn môi giới.
* 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.