Tối ưu hóa quá mức (Overfitting)
Hãy hình dung một học sinh học thuộc lòng nguyên đáp án đề thi cũ. Thi lại đúng đề cũ thì được 100 điểm, nhưng đề mới chỉ đổi một chút là trượt. Quy tắc giao dịch bị tối ưu hóa quá mức đúng y như vậy: khớp hoàn hảo với "đề cũ" là biểu đồ quá khứ, nhưng bất lực trước "đề mới" là tương lai.
Nhìn bằng con số, chuyện xảy ra thế này. Quy tắc "RSI dưới 30 thì mua" xuất hiện 500 lần trong quá khứ với tỷ lệ thắng 52%. Thấy điểm số chưa đã, bạn thêm điều kiện — "chỉ vào thứ Tư", "chỉ lúc rạng sáng", "chỉ khi RSI dưới đúng 28.3". Cứ thế, bạn tạo ra được một quy tắc 5 lần xuất hiện trong quá khứ, thắng cả 5, tỷ lệ thắng 100%. Nhưng đó không phải là tìm ra quy luật thị trường — đó chỉ là truy ngược những khoảnh khắc quá khứ tình cờ tăng cả 5 lần rồi bọc điều kiện quanh chúng.
Vì sao chuyện này xảy ra? Vì nếu thử hàng trăm, hàng nghìn tổ hợp điều kiện và con số, thế nào cũng có vài cái khớp đẹp với quá khứ hoàn toàn do ngẫu nhiên. Cho 1.000 người tung đồng xu thì sẽ có người ra mặt ngửa 10 lần liên tiếp. Người đó không phải cao thủ tung xu — tương tự, quy tắc đứng nhất bảng điểm quá khứ giữa hàng nghìn tổ hợp rất có thể là nhà vô địch của sự ngẫu nhiên chứ không phải của thực lực.
Có những dấu hiệu giúp nhận ra tối ưu hóa quá mức: số trường hợp quá ít (chưa đến vài chục lần), điều kiện cụ thể một cách kỳ quặc (không giải thích được vì sao lại đúng 28.3), chỉnh nhẹ con số là thành tích đổ sập (RSI 28 thì thắng đậm mà 30 thì thua lỗ), chỉ khớp trong một giai đoạn nhất định — dính một trong số này thôi cũng nên nghi ngờ.
Cách giảm thiểu thì chẳng hào nhoáng gì: giữ quy tắc đơn giản, gom đủ nhiều trường hợp, chia dữ liệu theo từng giai đoạn để kiểm tra xem có hoạt động tương đối đều ở mọi giai đoạn không, và nhất định phải tính cả phí giao dịch. Quy tắc càng tốt thì thường giải thích gọn trong một câu là xong.
What the data actually shows
Baro đặt hai chốt chặn để tránh cái bẫy này. Thứ nhất, những tổ hợp có ít hơn 40 trường hợp trong quá khứ sẽ không được công bố — vì trường hợp càng ít, xác suất ngẫu nhiên trông giống thực lực càng cao. Thứ hai, Baro cũng không giấu sự thật rằng chỉ cần thu hẹp mục tiêu chốt lời là có thể làm tỷ lệ thắng trông như 90%. Quá trình tỷ lệ thắng tăng lên nhưng lãi lỗ kỳ vọng lật sang âm được hiển thị nguyên dạng bằng đường cong trên trang của từng tín hiệu trong danh mục setup. Ở đâu đó gặp chiến lược khoe tỷ lệ thắng cao, hãy nhớ đến đường cong này.Common misconceptions
"Điều kiện càng nhiều, càng tinh vi thì chiến lược càng tốt" — ngược lại mới đúng. Mỗi điều kiện thêm vào là rủi ro "chỉ khớp với quá khứ" lại tăng lên. Những quy tắc sống lâu thường đơn giản.
"Tỷ lệ thắng 90% trong quá khứ nghĩa là đã được kiểm chứng" — hãy hỏi trước xem đó là bao nhiêu lần. 9 trên 10 lần vẫn nằm trong phạm vi ngẫu nhiên. Hơn nữa, tỷ lệ thắng có thể được bơm lên một cách nhân tạo chỉ bằng cách thu hẹp mục tiêu chốt lời, nên riêng tỷ lệ thắng không kiểm chứng được điều gì cả.
FAQ
Q. Làm sao biết chiến lược của tôi có bị tối ưu hóa quá mức không?
Không có cách nào hoàn hảo, nhưng hãy kiểm tra ba điều: số trường hợp có đủ nhiều không (ít nhất vài chục lần), điều kiện có đơn giản đến mức giải thích được trong một câu không, và chỉnh nhẹ các con số trong quy tắc thì thành tích có sụp đổ không. Chỉ cần một trong ba không đạt là nên nghi ngờ đây là quy tắc chỉ đúng với quá khứ.
Q. Mấy bảng lợi nhuận quá khứ hoành tráng mà các phòng "phím lệnh" khoe cũng là tối ưu hóa quá mức à?
Có khả năng đó là quy tắc được ép khớp với biểu đồ quá khứ, hoặc là cherry-picking — chỉ chọn khoe những kết quả đẹp. Tiêu chí phân biệt chỉ có một: họ có công khai toàn bộ hồ sơ gồm cả lần đúng lẫn lần sai, kèm điều kiện cụ thể không. Bảng điểm không cho xem toàn bộ phân phối thì không phải bảng điểm.