Giới Thiệu Thuật Toán Di Truyền Trong Tối Ưu Hóa EA trên MT5
Mục lục
- Quy Trình Tối Ưu Hóa (Tổng Quan)
- Thuật Toán Di Truyền Là Gì?
- Khi Nào Dùng Toàn Diện, Khi Nào Dùng Thuật Toán Di Truyền?
- Cấu Hình Trên Strategy Tester
- Thực Hiện Tối Ưu Hóa Bằng Thuật Toán Di Truyền
- Tránh Quá Khớp (Overfitting)
- Tận Dụng Tối Ưu Hóa Song Song
- Thu Hẹp Đối Tượng Tối Ưu Hóa
- Tải EA Miễn Phí
- Broker Được Khuyến Nghị
Giới Thiệu Thuật Toán Di Truyền Trong Tối Ưu Hóa EA trên MT5
Khi tinh chỉnh các tham số của EA, Strategy Tester trong MT5 cung cấp hai chế độ tối ưu hóa: toàn diện (thử tất cả mọi tổ hợp tham số) và thuật toán di truyền (GA).
Để khám phá không gian tham số khổng lồ trong thời gian thực tế, thuật toán di truyền là lựa chọn tiêu chuẩn. Bài viết này giải thích những nguyên tắc cơ bản của tối ưu hóa bằng thuật toán di truyền cùng các điểm mấu chốt cần lưu ý khi áp dụng thực tế.
Điểm chính của bài viết
- Nếu số tổ hợp vượt quá vài chục nghìn, hãy tìm kiếm bằng thuật toán di truyền (GA) thay vì tối ưu hóa toàn diện
- Chọn recovery factor hoặc Sharp ratio làm chỉ số đánh giá, và loại trừ các nghiệm có quá ít giao dịch
- Quyết định giá trị áp dụng không dựa trên 1 nghiệm có điểm cao nhất, mà dựa trên mức độ tập trung của 10–20 nghiệm hàng đầu, độ nhạy tham số và kiểm tra phân chia giai đoạn
Quy Trình Tối Ưu Hóa (Tổng Quan)
| Bước | Việc cần làm | Giải thích chi tiết |
|---|---|---|
| 1 | Thu hẹp tham số cần tối ưu về một số ít tham số cốt lõi của logic | Thu Hẹp Đối Tượng Tối Ưu Hóa |
| 2 | Xem số tổ hợp để quyết định dùng toàn diện hay GA | Khi Nào Dùng Toàn Diện, Khi Nào Dùng Thuật Toán Di Truyền? |
| 3 | Trong tester, đặt "Nhanh dựa trên thuật toán di truyền" và chỉ số đánh giá | Cấu Hình Trên Strategy Tester |
| 4 | Chạy tối ưu hóa và theo dõi quá trình hội tụ trong tab "Kết quả tối ưu hóa" | Thực Hiện Tối Ưu Hóa Bằng Thuật Toán Di Truyền |
| 5 | Loại bỏ quá khớp bằng phân chia giai đoạn, so sánh các nghiệm hàng đầu và kiểm tra độ nhạy | Tránh Quá Khớp (Overfitting) |
| 6 | Nếu mất nhiều thời gian, rút ngắn bằng agent song song hoặc đám mây | Tận Dụng Tối Ưu Hóa Song Song |
Thuật Toán Di Truyền Là Gì?
Thuật toán di truyền (Genetic Algorithm: GA) là phương pháp tối ưu hóa mô phỏng quá trình tiến hóa sinh học. Quy trình hoạt động như sau:
- Tạo ngẫu nhiên nhiều bộ tham số (cá thể)
- Chạy backtest với từng cá thể, chấm điểm theo chỉ số đánh giá (PF, recovery factor, v.v.)
- Chọn các cá thể có điểm cao nhất làm "cha mẹ", tạo thế hệ tiếp theo thông qua lai ghép và đột biến
- Lặp lại quá trình này — càng nhiều thế hệ, tham số càng hội tụ về vùng hiệu suất cao hơn
Trong khi tối ưu hóa toàn diện "quét sạch mọi tổ hợp", GA "tập trung tìm kiếm vào những vùng có triển vọng" — giúp rút ngắn thời gian tính toán hàng bậc độ lớn.
Khi Nào Dùng Toàn Diện, Khi Nào Dùng Thuật Toán Di Truyền?
| Toàn diện | Thuật toán di truyền (GA) | |
|---|---|---|
| Cách tìm kiếm | Quét sạch mọi tổ hợp | Tập trung tìm kiếm vào những vùng có triển vọng |
| Quy mô phù hợp | Ít tham số, tổng số tổ hợp dưới vài nghìn | Nhiều tham số, tổng số tổ hợp từ hàng chục nghìn trở lên |
| Thời gian tính toán | Tăng tỷ lệ thuận với số tổ hợp | Ngắn hơn hàng bậc độ lớn |
Ví dụ: 3 tham số mỗi tham số có 10 bước = 1.000 tổ hợp — toàn diện là đủ. Nhưng 5 tham số mỗi tham số có 20 bước = 3,2 triệu tổ hợp — lúc này thuật toán di truyền là bắt buộc.
Cấu Hình Trên Strategy Tester
Để bật tối ưu hóa, hãy thiết lập các mục sau trong giao diện Strategy Tester:

- Tối ưu hóa: Chọn "Nhanh dựa trên thuật toán di truyền"
- Kết quả: Chọn chỉ số đánh giá như "Lợi nhuận tối đa", "Giá trị tùy chỉnh tối đa", "Recovery factor tối đa", v.v.
- Tab Tham số đầu vào: Tích vào tham số muốn tối ưu, rồi đặt giá trị bắt đầu, kết thúc và bước nhảy
Cách Chọn Chỉ Số Đánh Giá
Bạn định nghĩa "tốt" theo tiêu chí nào sẽ quyết định kết quả nhận được. Dưới đây là các chỉ số phổ biến và đặc điểm của chúng:
| Chỉ số | Nội dung | Đặc điểm |
|---|---|---|
| Lợi nhuận tối đa | Chỉ tối đa hóa lợi nhuận | Bỏ qua rủi ro — dễ rơi vào quá khớp |
| Recovery factor | Lợi nhuận ròng ÷ DD tối đa | Cân bằng giữa lợi nhuận và rủi ro |
| Sharp ratio | Xem xét tính ổn định của lợi nhuận | Chú trọng tính ổn định |
| Giá trị tùy chỉnh tối đa | Tự do định nghĩa trong mã EA (ví dụ: PF × số giao dịch) | Có thể thiết kế theo mục đích |
Sử dụng recovery factor hoặc Sharp ratio là cách thực tế nhất để tìm được tham số tốt mà vẫn tránh được quá khớp.
Thực Hiện Tối Ưu Hóa Bằng Thuật Toán Di Truyền
Khi bắt đầu tối ưu hóa, các tham số có điểm đánh giá cao nhất sẽ dần xuất hiện trong tab "Kết quả tối ưu hóa" theo từng thế hệ.
Thuật toán di truyền MT5 tự động chạy qua hàng trăm thế hệ và hội tụ về những nghiệm tốt nhất.

Những Bẫy Thường Gặp
| Triệu chứng | Nguyên nhân có thể |
|---|---|
| Hội tụ quá nhanh | Phạm vi tìm kiếm tham số có thể quá hẹp |
| Không hội tụ được | Chỉ số đánh giá không phù hợp, hoặc quá nhiều nhiễu |
| Hội tụ về giá trị bất thường | Chưa loại trừ các nghiệm có quá ít giao dịch |
Tích hợp bộ lọc như "loại kết quả có dưới 50 giao dịch" vào hàm đánh giá sẽ giúp loại bỏ các nghiệm nhiễu với mẫu thống kê quá nhỏ.
Tránh Quá Khớp (Overfitting)
Càng tối ưu hóa nhiều, EA càng "hoàn hảo với dữ liệu quá khứ nhưng thất bại với dữ liệu tương lai". Dưới đây là 4 nguyên tắc thực tiễn để tránh điều này:
| Nguyên tắc | Điều cần kiểm tra |
|---|---|
| 1. Phân chia giai đoạn | Kết quả có sụp đổ trong giai đoạn out-of-sample phía sau không |
| 2. So sánh 10–20 nghiệm hàng đầu | Các nghiệm hàng đầu có tập trung trong một vùng tương tự không |
| 3. Kiểm tra độ nhạy tham số | Thay đổi ±10–20% thì kết quả có sụp đổ nghiêm trọng không |
| 4. Giữ lại một số tham số không tối ưu hóa | Có giữ lại các giá trị cố định tự nhiên về mặt logic không |
1. Phân Chia Giai Đoạn
Với dữ liệu 10 năm, hãy tối ưu hóa trên 7 năm đầu và kiểm tra out-of-sample (OOS) trên 3 năm sau. Nếu kết quả sụp đổ trong 3 năm sau, EA đã quá khớp với 7 năm đầu.
2. So Sánh 10–20 Nghiệm Hàng Đầu
Chỉ lấy một nghiệm điểm cao nhất là nguy hiểm.
Hãy kiểm tra xem các nghiệm hàng đầu có tập trung trong một vùng tham số tương tự không — nếu có, hãy chọn tham số gần trung tâm vùng đó.
3. Kiểm Tra Độ Nhạy Tham Số
Thử thay đổi tham số ứng viên ±10–20% và xem kết quả có sụp đổ nghiêm trọng không. Nếu có, nghiệm đó đang quá khớp với một "đỉnh tối ưu nhọn".
4. Giữ Lại Một Số Tham Số Không Tối Ưu Hóa
Luôn duy trì "các giá trị cố định tự nhiên không qua tối ưu hóa" để giảm rủi ro quá khớp.
Ví dụ: tối ưu hóa chu kỳ EMA nhưng để hệ số ATR là giá trị cố định.
Tận Dụng Tối Ưu Hóa Song Song
MT5 hỗ trợ tối ưu hóa song song sử dụng nhiều lõi CPU. Tăng số lượng agent sử dụng trong "Tester" → "Cài đặt" sẽ giúp rút ngắn thời gian tính toán đáng kể.
Hơn nữa, nếu dùng MQL5 Cloud Network, bạn có thể tận dụng các agent từ khắp nơi trên thế giới để chạy tối ưu hóa quy mô lớn — nhưng sẽ mất phí. Do đó, cách hiệu quả nhất là thu hẹp phạm vi tham số ở máy cục bộ trước, rồi mới chuyển lên đám mây.
Thu Hẹp Đối Tượng Tối Ưu Hóa
Nguyên tắc cơ bản là chỉ tối ưu hóa một số ít tham số cốt lõi của logic, như chu kỳ dùng để xác định điểm vào lệnh hay biên độ cắt lỗ.
Các tham số còn lại được cố định bằng "giá trị tự nhiên" sẽ giúp ngăn ngừa quá khớp dễ dàng hơn.
PF trong backtest có thể tăng bao nhiêu cũng được nếu tối ưu hóa thêm — nhưng đồng thời khả năng không hoạt động được trong thị trường tương lai cũng tăng lên. "Chọn những con số bình thường và vận hành lâu dài" mới là giải pháp thực tế trong vận hành thực tế.
Tải EA Miễn Phí
EA miễn phí DONCHIAN ENGINE (USDJPY H1) của trang web này, trong backtest USDJPY H1 · 9,4 năm (2017-2026, tick thực Dukascopy), đạt PF 1,50, tỷ lệ thắng 34,5%, DD tối đa 10,8%, số giao dịch 631 lần.
Xem EA miễn phí DONCHIAN ENGINE
Broker Được Khuyến Nghị
Để đảm bảo kết quả backtest và tối ưu hóa được tái hiện trung thực trong vận hành thực tế, chúng tôi khuyến nghị các broker được chọn lọc dựa trên chất lượng khớp lệnh.
Liên quan
📧 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ý
Ngay sau khi đăng ký, bạn nhận được liên kết tải gói dành riêng cho người đăng ký gồm 13 chỉ báo MT5 của chúng tôi: tệp đã biên dịch (.ex5), mã nguồn và hướng dẫn cài đặt. Sau đó là 8 email về nền tảng giao dịch tự động, cách đọc backtest đúng và cách chọn sàn (mỗi ngày một email trong 5 ngày đầu, sau đó vào ngày thứ 7, 14 và 30 kể từ khi đăng ký). Bạn cũng được báo trước mỗi lần tăng giá của các phiên bản bán trên MQL5 Market (giá ra mắt tăng dần theo doanh số). Trên trang này, EA của chúng tôi miễn phí khi có tài khoản thật tại sàn đối tác.
* 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 ↗