Cách backtest EA hiệu quả trên MT4
Backtest là một trong các phương pháp quan trọng nhất khi phát triển một chiến lược hay một hệ thống giao dịch mới. Việc thực hiện backtest có thể giúp các nhà giao dịch lựa chọn được những thiết lập tốt nhất để áp dụng cho chiến lược của mình.
Để bắt đầu backtest EA, tất nhiên anh em cần có một EA trước. Trên thị trường hiện nay có rất nhiều loại EA khác nhau hỗ trợ anh em giao dịch tự động theo các chiến lược khác nhau, và việc kiểm tra hiệu quả của các EA này trước khi sử dụng là điều vô cùng quan trọng.
Có một điều anh em cần lưu ý, đó là chúng ta đang nói đến việc backtest EA với các công cụ miễn phí, tuy nhiên các EA tốt thì không hề miễn phí. Anh em nên tìm hiểu và cân nhắc kỹ trước khi đưa ra quyết định lựa chọn một EA phù hợp nhất, và thực hiện backtest để kiểm tra xem nó hoạt động tốt như thế nào.
Nếu như anh em đã có sẵn một EA trong MT4, hãy thực hiện việc backtest với công cụ Strategy Tester có sẵn trong MT4 qua một vài bước cơ bản sau đây:
Bước 1: Mở bảng điều khiển Strategy Tester bằng cách chọn View/ Strategy Tester
Giao diện bảng điều khiển Strategy Tester có dạng như sau:
Bước 2: Thực hiện theo hướng dẫn với các số được đánh dấu trong ảnh như sau:
- Chọn EA muốn backtest tại mục 1
- Tại mục 2: anh em chọn cặp tiền tệ ở ô Symbol, đồng thời chọn khung thời gian muốn sử dụng tại ô Period.
- Trong mục 3 – Model: chúng ta sẽ chọn chế độ thực hiện backtest. Có 3 lựa chọn bao gồm Every Tic (đọc từng chuyển động của giá), Open Close Only (chỉ đọc giá đóng cửa và mở cửa) và Control Point. Anh em nên lựa chọn Open Close Only sẽ phù hợp nhất với các giao dịch thông thường.
- Ở mục 4 – Spread: Spread ở mỗi sàn là khác nhau và nó ảnh hưởng khá nhiều đến kết quả backtest, do đó ở mục này anh em lựa chọn Spread theo đúng sàn giao dịch và cặp tiền tệ đang sử dụng. Anh em cũng có thể chọn mức Spread cao hơn để an toàn hơn.
- Các mục 5 và 6 anh em nên bỏ chọn nếu như thực hiện backtest lần đầu.
Bước 3: Nhấn Start để quá trình backtest bắt đầu diễn ra.
Sau khi quá trình backtest hoàn tất, anh em sẽ nhận được một bảng chi tiết các thông số kết quả của EA trong phạm vi backtest đã lựa chọn như ví dụ dưới đây. Anh em có thể xem qua tất cả 5 cửa sổ Setting, Results, Garph, Report và Journal để biết kết quả backtest.
Một số lưu ý trong quá trình backtest:
- Nếu anh em sử dụng khung thời gian quá nhỏ, có thể kết quả sẽ sai lệnh rất nhiều so với giao dịch thực tế vì khung thời gian nhỏ có quá nhiều tín hiệu nhiễu
- Càng nhiều dữ liệu thì kết quả backtest càng chính xác
- Anh em nên sử dụng các khung thời gian lớn vì nó vừa có các tín hiệu chính xác và vừa backtest được trong khoảng thời gian dài hơn.
Làm sao để có kết quả backtest một cách chính xác nhất
Trên thực tế, có nhiều nhà giao dịch backtest một chiến lược hay một mô hình giá và nhận được kết quả rất tốt. Tuy nhiên, khi áp dụng các chiến lược đó vào giao dịch thực tế lại nhận được kết quả thảm hại.
Lý giải cho tình trạng này, có lẽ yếu tố quan trọng nhất chính là việc các nhà giao dịch thường thiếu khách quan khi thực hiện backtest.
Khi nhìn vào biểu đồ để kiểm tra một chiến lược, chúng ta có xu hướng bị thu hút bởi những thiết lập thành công nhiều hơn so với những lần chúng thất bại. Điều đó có nghĩa là có nhiều tín hiệu đúng với chiến lược nhưng lại bị bỏ qua khiến cho kết quả backtest thiếu chính xác, cụ thể là có tỷ lệ thành công cao hơn so với thực tế.
Ngoài ra, có đôi lúc chúng ta cũng thiếu nghiêm khắc trong khi thực hiện việc kiểm tra. Ví dụ anh em đang backtest một chiến lược với mức cắt lỗ 100pips. Trong quá trình kiểm tra anh em thấy một thiết lập mà giá đi ngược tới 120 pips rồi mới trở lại đúng hướng. Nếu không đủ nghiêm khắc, anh em sẽ nghĩ rằng “có thể lúc giao dịch mình sẽ dịch stoploss và lệnh này vẫn thắng”. Điều này đã biến một lệnh sai thành một lệnh đúng và ảnh hưởng đến kết quả backtest.
Để khắc phục được vấn đề này, anh em chỉ cần thực hiện backtest một cách công tâm, khách quan và nghiêm khắc. Nghe có vẻ đơn giản nhưng thực tế để làm được như vậy không phải điều dễ dàng, đòi hỏi rất nhiều sự cố gắng từ anh em.
Một vấn đề khác khiến cho kết quả backtest thường tốt hơn thực tế là một số thiết lập có thể thành công một cách rất ngẫu nhiên trong một số điều kiện thị trường. Điều này thường xảy ra khi anh em thực hiện backtesting với quá ít dữ liệu hoặc trong một điều kiện thị trường hạn chế.
Để khắc phục, hãy cố gắng thống kê được càng nhiều dữ liệu càng tốt, và kiểm tra trên nhiều điều kiện thị trường khác nhau. Điều đó sẽ làm giảm tỷ lệ của những thiết lập thành công một cách ngẫu nhiên, từ đó phản ánh đúng nhất hiệu quả của chiến lược trong mọi điều kiện thị trường.
5. Tổng kết
Backtest là một bước vô cùng quan trọng trước khi bắt đầu bất cứ một chiến lược giao dịch mới nào. Tuy nhiên, trên thực tế giai đoạn này lại bị nhiều người bỏ qua vì cho rằng nó mất nhiều thời gian và công sức.
Tất nhiên, sự thật đúng là chúng ta cần nhiều thời gian và công sức, nhưng anh em cần nhớ rằng ở trên thị trường này không có phần thưởng nếu như không nỗ lực. Anh em bỏ công sức ra bao nhiêu thì sẽ nhận lại kết quả xứng đáng bấy nhiêu, do đó hy vọng anh em sẽ dành thời gian backtesting bất cứ một chiến lược hay mô hình giá nào trước khi sử dụng.
Sau khi đã tìm kiếm được chiến lược có hiệu quả tốt, anh em vẫn nên thử áp dụng với tài khoản demo để đảm bảo nó hoạt động tốt trước khi giao dịch với tài khoản thật nhé. Hãy bảo vệ tài khoản của mình thật tốt trước khi nghĩ đến lợi nhuận, đó chính là cách làm tốt nhất để tồn tại lâu dài trên thị trường.