XAUXXNhật ký
← Quay lại nhật ký

Đường cong backtest EA đẹp, trước tiên hãy kiểm tra các điều kiện kiểm thử này

Phân biệt phương pháp mô hình hóa với dữ liệu từng tick thật, ghi lại giả định spread, lọc tham số và giai đoạn kiểm tra độc lập, để kết luận kiểm thử EA có thể được rà soát lại.

Thomas · Đã cập nhật 2026-10-06

Tác giả: Thomas|EA và thực hành nền tảng|6 tháng 10 năm 2026

Một đường cong backtest đi lên không thể cho biết chương trình đã chạy trong điều kiện nào, càng không thể trực tiếp đại diện cho hiệu suất giao dịch thật. Khi so sánh EA vàng, trước tiên hãy đối chiếu các điều kiện kiểm thử, rồi mới đọc kết quả, sẽ hữu ích hơn là chỉ chọn một báo cáo có lợi nhuận ròng cao nhất. Bài viết này thảo luận về trình kiểm thử MT4 thông thường, không gộp chung chức năng của MT5 hoặc công cụ kiểm thử bên thứ ba vào một phạm trù.

Trước tiên hãy lưu một bản ghi kiểm thử có thể rà soát lại

Trước khi chạy kiểm thử, hãy lưu phiên bản EA, tệp tham số, tên đầy đủ của công cụ, khung thời gian biểu đồ, khoảng ngày, vốn ban đầu và đơn vị tiền tệ, cũng như nguồn dữ liệu và phiên bản terminal. Mỗi lần sửa tham số hoặc điều kiện, đều ghi lại lý do, không chỉ lưu lại lần tốt nhất sau khi đã xem kết quả.

Mục đích của những bản ghi này không phải để tăng số trang báo cáo, mà để người khác có thể biết bài kiểm thử đã so sánh những gì. Hai đường cong dù trông gần giống nhau, chỉ cần điều kiện hợp đồng, khối lượng hoặc cách xác định vốn khác nhau, thì có thể không có tính so sánh trực tiếp. Những điều kiện bị thiếu trong báo cáo nên được ghi là chưa biết, không được đoán để bù vào.

Phương pháp mô hình hóa cần tương ứng với logic của chương trình

Trợ giúp chính thức của MT4 liệt kê các phương pháp mô hình hóa lịch sử khác nhau. Kiểm thử chỉ theo giá mở cửa và chương trình dựa vào biến động giá trong nến có thể không phản ánh cùng một quá trình kích hoạt. Khi chọn phương pháp, trước tiên nên xác nhận EA phán đoán sau khi nến hoàn chỉnh được hình thành, hay phụ thuộc vào giá, lệnh thoát và thay đổi lệnh bên trong cùng một nến.

Chế độ Every tick trong hướng dẫn chính thức cũng sử dụng dữ liệu khung thời gian nhỏ hơn và nội suy để tạo ra biến động giá, và không tự động đồng nghĩa với bản ghi giao dịch từng tick thật đầy đủ trong lịch sử. Không thể chỉ thấy chữ “mỗi tick” mà cho rằng đã tái hiện toàn bộ chi tiết thị trường. Nếu sử dụng dữ liệu bên thứ ba hoặc công cụ bổ sung, cần nêu rõ nguồn và phương pháp của chúng.

Giả định spread không đồng nghĩa với môi trường khớp lệnh lịch sử

Theo hướng dẫn chính thức của MT4, trình kiểm thử thông thường mặc định sử dụng spread hiện tại của công cụ tại thời điểm bắt đầu kiểm thử để mô phỏng Ask, và cũng có thể đặt giá trị tùy chỉnh trong trường Spread. Điều này có nghĩa là giả định spread của bài kiểm thử cần được ghi lại rõ ràng, không thể coi giả định cố định là spread thả nổi thật trong toàn bộ giai đoạn lịch sử.

Điều kiện khớp lệnh trong thời điểm công bố dữ liệu, thay đổi thanh khoản hoặc giai đoạn bất thường không chắc có thể được một nhóm cài đặt cố định thể hiện đầy đủ. Hoa hồng, phí qua đêm và các ảnh hưởng thực thi khác cũng nên được đối chiếu xem báo cáo và công cụ cụ thể có xem xét hay không, áp dụng cách tính nào. Phần không được mô phỏng phải được nêu rõ, không dùng “backtest đã đạt” để thay thế những kiểm tra này.

Kết quả tối ưu chỉ là xếp hạng trong các điều kiện cụ thể

Kết quả tối ưu MT4 có thể hiển thị các mục thống kê như lợi nhuận, số giao dịch, mức sụt giảm và lợi nhuận kỳ vọng của các tổ hợp tham số khác nhau. Xếp thứ nhất nghĩa là tổ hợp đó đã đạt chỉ số tương ứng trong khoảng và điều kiện đã chọn, không có nghĩa là trong tương lai nó vẫn xếp thứ nhất.

Khi phân tích, không chỉ nhìn vào dòng tốt nhất, mà còn phải quan sát liệu các tham số lân cận thay đổi một chút có xuất hiện kết quả hoàn toàn khác hay không. Nếu hiệu suất chỉ tập trung ở một tổ hợp rất hẹp, điều đó cho thấy kết luận có thể nhạy cảm với cài đặt, nhưng không thể chỉ dựa vào hiện tượng này để kết luận chương trình chắc chắn mất hiệu lực. Cần tiếp tục đối chiếu logic, dữ liệu và điều kiện kiểm thử, giữ lại cả kết quả thuận lợi lẫn bất lợi.

Để dành dữ liệu chưa dùng để chỉnh tham số, rồi mới kiểm tra

Có thể chia trước giai đoạn dùng để điều chỉnh tham số, và giai đoạn kiểm tra độc lập không tham gia chỉnh tham số. Cách chia và chỉ số đánh giá nên được xác định trước khi xem kết quả kiểm tra. Nếu sau khi kiểm tra lại liên tục dùng cùng một đoạn dữ liệu để sửa tham số, thì đoạn dữ liệu này không còn là kiểm nghiệm hoàn toàn độc lập nữa.

Đây là một cách sắp xếp nghiên cứu, không phải quy trình chứng nhận đảm bảo lợi nhuận. Số lượng mẫu, mức độ phơi nhiễm vị thế và khác biệt kết quả trong các trạng thái thị trường khác nhau vẫn cần được ghi lại; không thể vì một lần kiểm tra độc lập có lợi nhuận mà bỏ qua vấn đề thiếu mẫu hoặc chỉ bao phủ một môi trường duy nhất.

Khi điều kiện thay đổi, giữ lại đối chiếu trước và sau

Trong khi giữ các điều kiện khác giống nhau, thay đổi một giả định rõ ràng và so sánh kết quả có thể giúp phát hiện mức độ nhạy cảm của chương trình với điều kiện. Nên ghi lại thay đổi, căn cứ, kết quả kiểm thử và những giới hạn chưa được bao phủ, thay vì chỉ đưa ra đánh giá khó kiểm chứng như “ổn định hơn”.

Chạy mô phỏng có thể dùng để kiểm tra quy trình của chương trình và ghi lại môi trường báo giá thực tế, nhưng khớp lệnh mô phỏng vẫn không tương đương với tài khoản thật. Trước khi bước vào bất kỳ giai đoạn vận hành nào, cần xác định rõ quy trình kiểm tra khi có lệnh bất thường, mất kết nối, vị thế lệch và tổn thất đạt giới hạn; không được tạm thời nới lỏng quy tắc để duy trì đường cong backtest.

Cuối cùng, hãy viết kết luận dưới dạng câu điều kiện

Một bản tóm tắt rõ ràng nên ghi rõ: dưới dữ liệu, tham số và giả định chi phí nào, đã quan sát được kết quả gì; những rủi ro nào chưa được bao phủ; còn cần xác minh điều gì. Giữ lại những điều chưa biết sẽ giúp việc rà soát sau này tốt hơn so với việc đóng gói kết quả nghiên cứu thành cam kết lợi nhuận.

Giao dịch đòn bẩy có thể gây tổn thất lớn. Bài viết này dùng để giải thích phương pháp kiểm thử EA và nghiên cứu, không cấu thành lời khuyên mua chương trình, giao dịch hoặc vị thế. Kết quả backtest, mô phỏng và tối ưu đều không thể đảm bảo an toàn tài khoản thật hoặc lợi nhuận trong tương lai.

Cảnh báo rủi ro: giao dịch đòn bẩy có thể gây thua lỗ đáng kể. Nội dung chỉ nhằm mục đích nghiên cứu và giáo dục, không đảm bảo lợi nhuận. Hiệu suất trong quá khứ không dự báo kết quả tương lai.