ForexBestRobots.comSo sánh EA →
VI

Hướng dẫn kỹ thuật · Kiến thức Forex

Các lỗi EA MetaTrader 4 thường gặp và cách khắc phục

Chẩn đoán EA MT4 không hoạt động hoặc không giao dịch, với cách xử lý thực tế cho AutoTrading, giấy phép, DLL, lỗi nhà môi giới, báo giá, khối lượng và VPS.

Đọc trong 18 phútĐược nhóm biên tập ForexBestRobots rà soát
Sơ đồ quyết định xử lý sự cố Expert Advisor MT4Hướng dẫn kỹ thuậtHướng dẫn thực tế, có lưu ý đến rủi ro

Hình minh họa gốc được tạo cho ForexBestRobots.com.

Khi Expert Advisor không giao dịch, hãy chẩn đoán theo từng lớp: cài đặt, quyền, điều kiện chiến lược rồi phản hồi chính xác của nhà môi giới. Đổi thông số ngẫu nhiên có thể che khuất nguyên nhân thật và tạo rủi ro mới.

Sơ đồ quyết định xử lý sự cố EA MT4
Bắt đầu từ quyền và môi trường trước khi diễn giải mã lỗi nhà môi giới.

Kiểm tra đầu tiên khi EA MT4 không hoạt động

  1. Xác nhận EA xuất hiện trong Navigator → Expert Advisors và được gắn vào đúng biểu đồ dự định.
  2. Xác nhận AutoTrading toàn cục và quyền Allow live trading của EA đều đã bật.
  3. Kiểm tra tài khoản, hậu tố mã giao dịch, khung thời gian, Magic Number, giờ thị trường và thông số.
  4. Mở Terminal → Experts và Journal; ghi toàn bộ thông báo cùng mã số lỗi.
  5. Thay đổi từng nguyên nhân một rồi kiểm tra lại nhật ký.

Lỗi → ý nghĩa → nguyên nhân → cách khắc phục

LỗiÝ nghĩa / nguyên nhânCách khắc phục
Không thấy EA trong NavigatorTệp nằm sai phần mềm hoặc thư mụcMở Data Folder từ đúng bản MT4; chuyển .ex4 vào MQL4/Experts; làm mới Navigator.
AutoTrading bị tắtQuyền toàn cục hoặc riêng của EA đang tắtBật nút trên thanh công cụ và Allow live trading trong thuộc tính EA.
Tài khoản / giấy phép không hợp lệThông tin đăng nhập, loại tài khoản hoặc giấy phép gắn tài khoản không khớpKiểm tra máy chủ nhà môi giới và quy tắc giấy phép; liên hệ nhà cung cấp, không vượt qua cơ chế cấp phép.
DLL không được phépEA gọi thư viện bên ngoài khi chưa có quyềnChỉ bật cho DLL đáng tin cậy và thực sự cần thiết; lưu trữ ảo MetaTrader không chạy được DLL.
Trade disabled · 133 — giao dịch bị vô hiệu hóaMáy chủ từ chối giao dịch cho tài khoản hoặc mã giao dịch.Kiểm tra quyền giao dịch của mã và hạn chế tài khoản với nhà môi giới. Chẩn đoán quyền phần mềm riêng biệt.
Market is closed · 132 — thị trường đóng cửaCông cụ được yêu cầu nằm ngoài giờ có thể giao dịchChờ phiên của nhà môi giới; kiểm tra ngày nghỉ và lịch giao dịch của mã.
Not enough money · 134 — không đủ tiềnKý quỹ khả dụng không đủ cho vị thế yêu cầuGiảm rủi ro/khối lượng; kiểm tra đòn bẩy, ký quỹ và mức phơi nhiễm hiện có.
Invalid stops · 130 — mức dừng không hợp lệGiá SL, TP hoặc lệnh chờ vi phạm quy tắc giá hoặc khoảng cách áp dụng.Kiểm tra Bid/Ask hiện tại, hướng lệnh, độ chính xác giá và Stops Level. Tính lại khối lượng vị thế nếu khoảng dừng thay đổi.
Invalid volume · 131 — khối lượng không hợp lệLot thấp hơn tối thiểu, cao hơn tối đa hoặc sai bướcDùng mức lot tối thiểu/tối đa/bước lot của nhà môi giới và chuẩn hóa khối lượng yêu cầu.
Trade context busy · 146 — ngữ cảnh giao dịch đang bậnMột thao tác giao dịch khác vẫn đang được xử lýTuần tự hóa yêu cầu, chờ ngắn rồi thử lại với giới hạn rõ ràng, không lặp liên tục.
Off quotes · 136 / requote · 138 — thiếu giá / báo giá lạiKhông có báo giá có thể khớp hoặc giá đã thay đổiKiểm tra kết nối/spread; làm mới giá; dùng logic xử lý trượt giá hợp lý.
Sự cố kết nối · 6Phần mềm mất kết nối với nhà môi giớiXác nhận máy chủ, internet, đăng nhập, tường lửa và trạng thái VPS; tránh gửi lệnh lặp lại trước khi kết nối được khôi phục.

EA tải đúng nhưng không mở giao dịch

Điều này không nhất thiết là lỗi. Nhiều EA chờ nến mới, phiên cụ thể, điều kiện spread tối đa hoặc sự đồng thuận của nhiều chỉ báo. Xác nhận mã giao dịch và khung thời gian trong tài liệu, rồi tìm thông báo nhật ký về bộ lọc spread, giờ giao dịch, số lệnh tối đa hoặc bộ lọc tin tức. Không nới lỏng mọi bộ lọc chỉ để buộc EA vào lệnh.

Phân biệt “chưa giao dịch” với “không thể giao dịch”

“Không tìm thấy thiết lập” là hành vi của chiến lược. Lỗi 133 hoặc quyền bị tắt là chặn thực hiện giao dịch. Cách khắc phục khác nhau.

Invalid Account và Invalid License

EA thương mại có thể gắn khóa với số tài khoản, nhà môi giới, nền tảng hoặc số lần kích hoạt tối đa. Kiểm tra tài khoản nhập vào có đúng tài khoản đăng ký với nhà cung cấp và máy chủ giấy phép có truy cập được không. Không tải tệp đã bẻ khóa hoặc tắt biện pháp bảo mật; yêu cầu nhà cung cấp đặt lại hoặc kích hoạt hợp lệ.

DLL không được phép

Một số EA dùng thư viện bên ngoài để cấp phép hoặc bổ sung chức năng. Chỉ cho phép nhập DLL nếu tệp đến từ nguồn đáng tin cậy và tài liệu chính thức yêu cầu. Lưu trữ ảo tích hợp của MetaTrader từ chối DLL, nên chỉ chuyển EA đó sang VPS thông thường tương thích được nhà cung cấp chấp thuận.

Lỗi mức dừng, khối lượng, ký quỹ và khớp lệnh

Lỗi 130 — Invalid stops

Giá dừng lỗ, chốt lời hoặc lệnh chờ có thể quá gần thị trường, sai phía hoặc chưa được chuẩn hóa đúng. Đọc thông số mã giao dịch và tính theo số chữ số của công cụ; không xử lý bằng cách bỏ bảo vệ.

Lỗi 131 — Invalid trade volume

Chuẩn hóa lot theo mức tối thiểu, tối đa và bước lot của nhà môi giới. Khối lượng tính ra 0.013 lot không hợp lệ khi bước là 0.01 nếu chưa làm tròn đúng; làm tròn lên có thể vượt rủi ro dự kiến.

Lỗi 136 và 138 — Off quotes và requote

Các lỗi này thường phản ánh giá không có sẵn hoặc đã thay đổi. Kiểm tra kết nối và spread, làm mới báo giá, dùng logic thử lại có giới hạn. Gửi lại liên tục ngay lập tức có thể khiến vấn đề nghiêm trọng hơn.

Lỗi 146 — Trade context busy

MT4 xử lý thao tác giao dịch theo trình tự. Hai biểu đồ hoặc quy trình có thể xung đột. EA nên chờ thao tác trước hoàn tất, kiểm tra lại thị trường và dừng thử lại khi đạt giới hạn được kiểm soát.

Đồng bộ VPS và vấn đề chạy trùng bản

Sau khi chuyển sang lưu trữ ảo MetaTrader, các thay đổi cấu hình không tự động được chuyển lại. Đồng bộ lại sau khi đổi biểu đồ hoặc thông số. Với VPS Windows, xác nhận phần mềm đang mở, đã đăng nhập và được đặt khởi động sau khi máy khởi động lại. Trong cả hai trường hợp, tránh giao dịch đồng thời cùng tài khoản/EA/Magic Number từ phần mềm cục bộ và từ xa.

Thông tin cần gửi bộ phận hỗ trợ

Toàn bộ nội dung và mã lỗi
Bản dựng MT4 và máy chủ nhà môi giới
Mã giao dịch, khung thời gian và loại tài khoản
Trích đoạn Experts và Journal
Phiên bản EA và bộ thông số
Thời điểm vấn đề bắt đầu

Xóa mật khẩu, khóa giấy phép và thông tin nhận dạng cá nhân trước khi chia sẻ ảnh chụp hoặc nhật ký.

Phân biệt hạn chế máy chủ với quyền phần mềm

Lỗi 4109 nghĩa là chương trình không được phép giao dịch: kiểm tra Allow live trading của EA và AutoTrading toàn cục. Lỗi 4112 nghĩa là máy chủ đã vô hiệu hóa giao dịch tự động. Lỗi 133 liên quan đến hạn chế giao dịch trên máy chủ. Đây là các kiểm tra khác nhau; bật nút trên thanh công cụ cục bộ không thể gỡ hạn chế của nhà môi giới.

Lỗi 65 là phản hồi tài khoản không hợp lệ từ máy chủ giao dịch. Thông báo “invalid license” của nhà cung cấp có thể đến từ cơ chế gắn tài khoản, thuê bao hoặc dịch vụ kích hoạt riêng. Ghi chính xác thông báo và nguồn trước khi chọn bên cần liên hệ.

Xử lý kết quả chưa rõ và quy tắc mức dừng động

Sau khi yêu cầu giao dịch hết thời gian chờ 128, kết quả có thể chưa xác định. Đối chiếu lệnh mở, lệnh chờ và lịch sử gần đây trước khi thử lại. Khớp thông tin ticket nếu có, rồi đến mã giao dịch, Magic Number, chiều, khối lượng và thời gian. Gửi lại ngay có thể tạo lệnh thứ hai nếu yêu cầu đầu đã thành công.

Stops Level bằng 0 có thể nghĩa là không có mức tối thiểu cố định hoặc máy chủ dùng quy tắc động; không bảo đảm mọi mức dừng đều được chấp nhận. Freeze Level quy định hạn chế sửa, hủy hoặc đóng lệnh gần thị trường. Kiểm tra riêng thông số này. Không nới mức dừng chỉ để làm mất Lỗi 130 mà chưa kiểm tra mức rủi ro tiền mới.

Mã lỗi MQL4 và thuộc tính mã giao dịch quy định những khác biệt này.

Tài liệu lỗi chính thức

Mô tả mã số dựa trên tài liệu mã lỗi MQL4 chính thức. Cách triển khai của nhà môi giới và thông báo riêng của EA có thể bổ sung điều kiện.