Hướng dẫn backtest EA
Hướng Dẫn
Backtest EA
Backtest là bước kiểm tra hiệu quả của EA trên dữ liệu giá lịch sử trước khi chạy thật. Đây là bước bắt buộc để đánh giá EA có phù hợp với cặp tiền và thông số bạn chọn hay không.
Backtest (kiểm thử lịch sử) là quá trình cho EA chạy mô phỏng trên dữ liệu giá trong quá khứ để xem nó sẽ giao dịch như thế nào. MetaTrader có sẵn công cụ này gọi là Strategy Tester.
✅ Lợi ích của Backtest
- Biết EA hoạt động tốt hay kém trên cặp tiền đó
- Tìm được bộ thông số tối ưu trước khi dùng tiền thật
- Ước tính mức drawdown tối đa có thể xảy ra
- So sánh hiệu quả giữa các chiến lược khác nhau
- Hoàn toàn không tốn tiền — chạy trên dữ liệu ảo
⚠ Giới hạn của Backtest
- Kết quả trong quá khứ không đảm bảo tương lai
- Không mô phỏng được slippage và requote thực tế
- Chất lượng phụ thuộc vào độ chính xác của dữ liệu lịch sử
- Thị trường thay đổi — EA hoạt động tốt năm ngoái chưa chắc tốt năm nay
Backtest là công cụ tham khảo, không phải bảo đảm. Kết quả backtest tốt là điều kiện cần, nhưng chưa đủ để quyết định chạy live. Hãy luôn bắt đầu với tài khoản demo hoặc khối lượng nhỏ nhất.
Backtest cho kết quả chính xác khi dữ liệu lịch sử đủ và EA đã được kích hoạt. Làm 2 việc sau trước khi bắt đầu:
Kích hoạt License Key trước
EA của HoangTrong.com yêu cầu được kích hoạt trên tài trước khi có thể chạy backtest. Nếu chưa kích hoạt, Strategy Tester sẽ hiển thị thông báo yêu cầu kích hoạt và không chạy được.
Xem bài Hướng dẫn cài đặt EA để biết cách kích hoạt Key.
Tải đủ dữ liệu lịch sử
Backtest chỉ chính xác khi MT4/MT5 có đủ dữ liệu nến lịch sử cho cặp tiền bạn muốn test. Để tải:
Vào Tools → History Center (MT4) hoặc mở chart của cặp tiền đó rồi kéo biểu đồ về tận cùng bên trái để MT5 tự tải thêm dữ liệu.
Nên có ít nhất 1–2 năm dữ liệu lịch sử để kết quả backtest đủ có giá trị tham khảo. Dữ liệu càng nhiều, đánh giá càng đáng tin cậy.
Mở Strategy Tester
Nhấn Ctrl + R hoặc vào menu View → Strategy Tester. Cửa sổ Strategy Tester xuất hiện ở phía dưới màn hình.
Cài đặt các thông số backtest
Trong tab Settings của Strategy Tester, điền các thông số sau:
Điều chỉnh thông số EA
Nhấn nút Properties (hoặc tab Inputs) để mở cửa sổ thông số EA. Đây là nơi bạn điền các giá trị muốn test — Chu Kỳ MA, Khối Lượng Lệnh, Stop Loss, Take Profit…
Hãy đặt Khối Lượng Lệnh = 0.01 khi backtest để dễ quan sát tỷ lệ lời/lỗ. Sau khi tìm được thông số tốt, bạn có thể nhân hệ số lên tương ứng với vốn thực tế.
Nhấn Start để bắt đầu
Nhấn nút Start. Strategy Tester bắt đầu chạy — thanh tiến trình hiển thị phần trăm hoàn thành. Tùy khoảng thời gian test và cặp tiền, quá trình có thể mất từ vài giây đến vài phút.
Bạn có thể theo dõi lệnh được mở/đóng theo thời gian thực trong tab Graph.
Đọc kết quả
Sau khi chạy xong, chuyển sang tab Results và Report để xem báo cáo chi tiết.
Các bước tương tự MT5, chỉ khác ở một số điểm:
⚙ Mở Strategy Tester
Nhấn Ctrl + R hoặc vào View → Strategy Tester — giống MT5.
Model (chế độ mô phỏng)
MT4 không có "Every tick based on real ticks". Chọn Every tick để có độ chính xác cao nhất trong MT4.
Tải dữ liệu lịch sử MT4
Vào Tools → History Center, chọn cặp tiền và khung thời gian, nhấn Download để tải dữ liệu từ server về.
⚠ Chất lượng dữ liệu MT4
MT4 thường hiển thị Modelling quality — con số này càng gần 90% thì kết quả backtest càng đáng tin cậy.
Báo cáo backtest có nhiều chỉ số. Dưới đây là các chỉ số quan trọng nhất cần chú ý:
| Chỉ số | Tốt khi nào | Cần lo khi nào |
|---|---|---|
| Profit Factor Tổng lời / Tổng lỗ | Lớn hơn 1.3 trở lên | Dưới 1.0 = thua lỗ; 1.0–1.1 = quá mỏng |
| Max Drawdown Mức sụt giảm tối đa từ đỉnh xuống đáy | Dưới 20% vốn | Trên 30% — rủi ro cháy tài khoản cao |
| Win Rate Tỷ lệ % số lệnh có lời | Không nhất thiết phải cao — phụ thuộc RR ratio | Win Rate thấp nhưng Profit Factor cũng thấp = vấn đề |
| Total Trades Tổng số lệnh trong kỳ test | Từ 100 lệnh trở lên — đủ mẫu thống kê | Dưới 30 lệnh — kết quả không có giá trị thống kê |
| Expected Payoff Lợi nhuận trung bình mỗi lệnh | Dương — mỗi lệnh trung bình có lời | Âm hoặc gần 0 — EA không hiệu quả |
Cảnh báo Overfitting: Nếu bạn chỉnh thông số cho đến khi backtest cho kết quả "hoàn hảo", EA đó đang được tối ưu hóa cho quá khứ nhưng có thể sẽ thất bại trong tương lai. Hãy test trên ít nhất 2–3 giai đoạn thị trường khác nhau (tăng mạnh, giảm mạnh, sideway) để kiểm chứng.
MT5 cung cấp 3 chế độ mô phỏng. Chế độ bạn chọn ảnh hưởng trực tiếp đến độ chính xác của kết quả và thời gian chạy:
| Chế độ | Độ chính xác | Tốc độ | Nên dùng khi |
|---|---|---|---|
| Every tick based on real ticks | Cao nhất ★★★ | Chậm nhất | Đánh giá chính xác trước khi chạy live |
| Every tick | Trung bình ★★ | Trung bình | Test nhanh khi không có real tick data |
| Open prices only | Thấp nhất ★ | Nhanh nhất | Khảo sát sơ bộ, lọc nhanh thông số xấu |
Quy trình hiệu quả: dùng Open prices only để lọc nhanh các bộ thông số không tiềm năng, sau đó chạy lại Every tick based on real ticks cho các bộ thông số tốt nhất để có kết quả chính xác trước khi quyết định.
Backtest cho kết quả tốt chỉ là bước khởi đầu. Trước khi chạy tài khoản thực với số tiền lớn, hãy thực hiện theo thứ tự sau:
Chạy thử trên tài khoản Demo
Gắn EA với thông số vừa tìm được lên tài khoản Demo của broker. Để chạy ít nhất 2–4 tuần trong điều kiện thị trường thực tế (giá thật, spread thật) để xác nhận kết quả.
Chạy live với khối lượng tối thiểu
Nếu Demo cho kết quả nhất quán với backtest, chuyển sang tài khoản thật nhưng bắt đầu với khối lượng nhỏ nhất (0.01 lot). Theo dõi thêm 2–4 tuần trước khi tăng khối lượng.
Tăng khối lượng có kiểm soát
Chỉ tăng khối lượng khi kết quả live ổn định và drawdown thực tế không vượt quá mức backtest dự báo. Không bao giờ tăng đột ngột chỉ vì vài lệnh thắng liên tiếp.
Không bỏ qua bước Demo: Sự chênh lệch giữa backtest và thực tế thường đến từ spread thực tế cao hơn, slippage khi vào lệnh, và điều kiện thị trường thay đổi. Tài khoản Demo giúp bạn phát hiện những chênh lệch này trước khi chúng ảnh hưởng đến tiền thật.