Thuật ngữ

Expert advisor (EA)

Chương trình giao dịch tự động chạy trên các nền tảng MetaTrader.

10 phút đọc

Expert advisor (EA) là gì

Expert advisor, thường viết tắt là EA, là một chương trình giao dịch tự động trên nền tảng MetaTrader. Nó theo dõi thị trường, áp dụng các quy tắc được viết sẵn bên trong và có thể mở, sửa và đóng lệnh mà bạn không cần nhấp chuột. EA được viết bằng MQL, ngôn ngữ lập trình kịch bản của MetaTrader 4 (MQL4) và MetaTrader 5 (MQL5), và chạy bên trong terminal giao dịch, gắn vào một biểu đồ.

Cái tên này hơi gây hiểu lầm. EA không "tư vấn" theo nghĩa đưa ra ý kiến. Nó thực thi một tập hợp chỉ dẫn cố định, và những gì nó làm hoàn toàn phụ thuộc vào cách nó được lập trình và cấu hình. Một số EA rất đơn giản, chẳng hạn đặt một lệnh chờ vào đầu phiên giao dịch. Số khác quản lý nhiều vị thế, tăng và giảm quy mô vị thế, và điều chỉnh rủi ro theo quy mô tài khoản.

Người dùng gồm nhiều nhóm: từ các nhà giao dịch cá nhân muốn loại bỏ yếu tố cảm xúc và sự lặp đi lặp lại khỏi một phương pháp dựa trên quy tắc, đến các lập trình viên xây dựng và kiểm thử hệ thống, cho tới những người mua hoặc thuê EA làm sẵn từ các chợ ứng dụng. Hiểu rõ EA có thể và không thể làm gì là điều quan trọng vì danh xưng này thu hút rất nhiều quảng cáo phóng đại.

Cách hoạt động

EA được gắn vào biểu đồ của một mã giao dịch và khung thời gian cụ thể. Sau đó terminal gọi mã của EA mỗi khi có một tick giá mới, một thanh nến mới mở ra hoặc một bộ hẹn giờ kích hoạt. Mã sẽ đánh giá các điều kiện, chẳng hạn giá trị chỉ báo, thời gian trong ngày hoặc số lệnh đang mở, rồi gửi yêu cầu giao dịch đến máy chủ của sàn môi giới.

Các thành phần thường gặp là:

  1. Tham số đầu vào (inputs): các thông số bạn có thể thay đổi, như khối lượng lot, khoảng cách lệnh cắt lỗ và chu kỳ của chỉ báo.
  2. Logic tín hiệu: quy tắc quyết định khi nào vào hoặc thoát lệnh.
  3. Quản lý lệnh: đặt lệnh, thiết lập lệnh cắt lỗ (stop-loss) và lệnh chốt lời (take-profit), lệnh dừng lỗ động (trailing stop), đóng vị thế.
  4. Kiểm soát rủi ro: số lệnh mở tối đa, chênh lệch giá (spread) tối đa cho phép, giới hạn lỗ trong ngày.
  5. Nhận diện: một magic number, để EA phân biệt được lệnh của mình với lệnh đặt thủ công.

Từ đó phát sinh hai yêu cầu thực tế. Terminal phải luôn được kết nối và hoạt động, đó là lý do nhiều người dùng thuê máy chủ ảo riêng (VPS). Và EA chịu cùng các điều kiện khớp lệnh như bất kỳ lệnh nào: chênh lệch giá, trượt giá (slippage), báo giá lại (requote) và các quy định của nền tảng vẫn áp dụng.

MetaTrader có trình kiểm thử chiến lược (strategy tester) phát lại dữ liệu lịch sử, giúp bạn xem các quy tắc sẽ hoạt động ra sao. Nó cũng hỗ trợ tối ưu hóa, trong đó trình kiểm thử thử nhiều tổ hợp tham số đầu vào.

Một ví dụ minh họa

Các con số dưới đây chỉ mang tính minh họa. Hãy hình dung một tài khoản tính bằng USD với 10.000 USD và một EA đơn giản mua EUR/USD khi đường trung bình động 20 kỳ cắt lên trên đường 50 kỳ, với lệnh cắt lỗ cách 40 pip. Đây chỉ là mô tả cách một EA được cấu hình, không phải khuyến nghị giao dịch theo quy tắc đó.

  1. Rủi ro mỗi lệnh do người dùng chọn: 1% của 10.000 = 100 USD.
  2. Khoảng cách cắt lỗ: 40 pip.
  3. Giá trị pip cho 1 lot tiêu chuẩn EUR/USD: khoảng 10 USD mỗi pip.
  4. Khoản lỗ cho mỗi lot nếu bị cắt lỗ: 40 x 10 = 400 USD.
  5. Quy mô vị thế: 100 / 400 = 0,25 lot.

EA có thể tự tính toán điều này mỗi lần. Bây giờ đến kết quả backtest: giả sử trình kiểm thử báo cáo 400 lệnh trong năm năm, 45% thắng, với mức thắng trung bình là 60 USD so với mức thua trung bình là 40 USD. Kỳ vọng mỗi lệnh là 0,45 x 60 - 0,55 x 40 = 27 - 22 = 5 USD. Con số này trông có vẻ dương, nhưng nếu chênh lệch giá thực tế rộng hơn 0,5 pip so với trong lần kiểm thử, chi phí mỗi lệnh có thể ăn mất phần lớn 5 USD đó. Một lợi thế nhỏ trong kiểm thử có thể biến mất trong điều kiện giao dịch thực.

Vì sao điều này quan trọng

Tự động hóa mang lại sự nhất quán: EA tuân theo quy tắc của nó lúc ba giờ sáng và cả sau một chuỗi thua lỗ. Nó có thể theo dõi nhiều thị trường cùng lúc và phản ứng trong vài mili giây, điều mà con người không thể làm một cách đáng tin cậy.

Nhưng tự động hóa cũng khuếch đại sai lầm. Một lỗi phần mềm, khối lượng lot sai hoặc một quy tắc không còn phù hợp với thị trường có thể gây thua lỗ lặp đi lặp lại và rất nhanh. Chi phí càng quan trọng hơn với các EA giao dịch thường xuyên, vì chênh lệch giá, hoa hồng và swap phải trả cho mỗi lệnh. Mô hình khớp lệnh, vị trí máy chủ và độ ổn định của nền tảng đều ảnh hưởng đến kết quả. Một số sàn môi giới hạn chế một số hành vi của EA, chẳng hạn giao dịch lướt sóng tần suất rất cao (scalping), hedging hoặc giao dịch theo tin tức, và quy định khác nhau tùy loại tài khoản.

Cách sử dụng trong thực tế

  1. Đọc mã hoặc tài liệu, hoặc ít nhất hiểu quy tắc bằng ngôn ngữ thông thường, trước khi chạy bất kỳ EA nào.
  2. Kiểm thử trên tài khoản demo trước, sau đó dùng khối lượng thật rất nhỏ.
  3. Dùng chênh lệch giá, hoa hồng và trượt giá thực tế trong backtest. Kiểm tra chất lượng của dữ liệu lịch sử được dùng.
  4. Kiểm tra điều khoản của sàn môi giới về các hạn chế đối với giao dịch tự động.
  5. Đặt các giới hạn cứng: khối lượng lot tối đa, số lệnh mở tối đa, mức lỗ tối đa trong ngày.
  6. Lên kế hoạch lưu trữ. VPS làm giảm nguy cơ mất kết nối, nhưng bạn vẫn cần giám sát.
  7. Xem xét kết quả định kỳ và dừng EA nếu hành vi thực tế lệch khỏi những gì bản kiểm thử gợi ý.

Những sai lầm và quan niệm sai thường gặp

  • Tin vào một bản backtest hoàn hảo. Việc khớp đường cong (curve fitting), tức tinh chỉnh tham số đầu vào cho đến khi quá khứ trông thật đẹp, thường thất bại trên dữ liệu mới. Hãy kiểm thử trên một giai đoạn mà quá trình tối ưu hóa chưa từng thấy.
  • Mua EA vì ảnh chụp màn hình quảng cáo. Sao kê giao dịch thực đã được xác minh trong thời gian dài mang nhiều thông tin hơn một trang bán hàng.
  • Tin rằng EA loại bỏ rủi ro. Nó chỉ thực thi quy tắc; quy tắc vẫn có thể thua lỗ.
  • Bỏ qua chi phí. Một chiến lược có lợi nhuận rất nhỏ trên mỗi lệnh có thể bị xóa sạch bởi chênh lệch giá rộng hơn.
  • Chạy hệ thống martingale hoặc grid mà không hiểu rủi ro đuôi. Chúng có thể cho chuỗi thắng dài, sau đó là một khoản thua lớn.
  • Quên mất nền tảng. Bản cập nhật terminal, thay đổi máy chủ của sàn môi giới hoặc mất kết nối có thể làm hỏng EA.

Rủi ro và hạn chế

EA giao dịch các sản phẩm có đòn bẩy như ngoại hối và CFD, vốn có rủi ro thua lỗ nhanh ở mức cao. Kết quả kiểm thử trong quá khứ không dự báo kết quả tương lai. Điều kiện thị trường thay đổi, và một cách tiếp cận phù hợp với giai đoạn này có thể thất bại ở giai đoạn khác. Sự cố kỹ thuật, mất kết nối và khác biệt về khớp lệnh giữa tài khoản demo và tài khoản thật là có thật. Khi EA được bán như một sản phẩm, quy định về quảng bá khác nhau theo từng quốc gia, và những người bán không được cấp phép không nằm trong bất kỳ chương trình bồi thường nào.

Cách Brokeli nhìn nhận vấn đề

Trong nghiên cứu về sàn môi giới, EA quan trọng vì những gì sàn môi giới cho phép và cách họ khớp lệnh. Chúng tôi xem xét có hỗ trợ MetaTrader hay không, giao dịch tự động có được phép hay không, mô hình khớp lệnh và biểu phí chênh lệch giá cùng hoa hồng đã công bố. Những thông tin này được ghi lại từ các bản dữ liệu nghiên cứu đã công bố theo quốc gia và loại tài khoản. Chúng tôi không xếp hạng hay chứng thực từng EA riêng lẻ.

Câu hỏi thường gặp

Expert advisor trong MetaTrader là gì?

Đó là một chương trình viết bằng MQL4 hoặc MQL5, gắn vào biểu đồ và giao dịch tự động theo các quy tắc đã đặt sẵn. Nó có thể mở, sửa và đóng lệnh, quản lý rủi ro và chạy suốt ngày đêm khi terminal còn kết nối, nhưng chỉ làm đúng những gì mã và thiết lập của nó chỉ định.

Expert advisor có đảm bảo lợi nhuận không?

Không. EA chỉ tốt bằng các quy tắc của nó, mà thị trường thì thay đổi. Backtest có thể trông rất ấn tượng vì các tham số đã được tinh chỉnh theo quá khứ. Kết quả thực tế chịu ảnh hưởng của chênh lệch giá, trượt giá và việc khớp lệnh. Bất kỳ ai hứa hẹn lợi nhuận chắc chắn từ một EA đều cần được đề phòng.

Tôi có cần VPS để chạy EA không?

Không bắt buộc, nhưng terminal phải luôn mở và kết nối thì EA mới hoạt động. VPS là một máy tính từ xa chạy 24 giờ, giúp giảm khả năng bỏ lỡ lệnh do mất điện hoặc mất kết nối internet tại nhà. Nó phát sinh một khoản chi phí hằng tháng nhỏ.

Tôi có thể kiểm thử EA trước khi dùng tiền thật không?

Có. MetaTrader có trình kiểm thử chiến lược để mô phỏng dữ liệu lịch sử, và hầu hết sàn môi giới cung cấp tài khoản demo để kiểm thử tiến tới trong điều kiện thị trường thực. Hãy dùng chi phí thực tế, và nhớ rằng tài khoản demo không tái tạo được mọi hiệu ứng khớp lệnh ngoài đời thực.

Tất cả sàn môi giới có cho phép expert advisor không?

Không. Nhiều sàn môi giới trên MetaTrader cho phép, nhưng một số hạn chế các phong cách nhất định như scalping rất thường xuyên, hedging hoặc giao dịch quanh thời điểm công bố tin tức. Khả năng cung cấp nền tảng cũng khác nhau theo quốc gia và loại tài khoản, vì vậy hãy kiểm tra điều khoản và điều kiện của sàn môi giới trước khi dựa vào một EA.

Expert advisor (EA) — Brokeli glossary · Brokeli