21 tháng Mười, 2026 · nghiên cứu

Chiến lược của bạn đã trải qua 240 lần thử. Thực sự bạn đã chạy bao nhiêu backtest?

Chiến lược của bạn đã trải qua 240 lần thử. Thực sự bạn đã chạy bao nhiêu backtest?

Chúng tôi đã thử 240 bộ tham số. Bộ tốt nhất cho thấy tỷ lệ Sharpe là 2.1; trung vị là 0.1; và chỉ 17 bộ vượt mức 1.0. Những con số này nghe như một phát hiện cho đến khi bạn biết rằng ngay cả khi mọi chiến lược đều không có lợi thế thực sự, một cuộc tìm kiếm rộng như vậy vẫn có thể cho ra kết quả tốt nhất đầy hấp dẫn.

Con số đáng ngạc nhiên là 240. Báo cáo backtest thường xem chiến lược được chọn như thể nó xuất hiện đơn lẻ. Nghiên cứu không diễn ra như vậy. Mỗi lần chỉnh tham số, thay đặc trưng, đổi tập tài sản hay chạy lại sau một kết quả xấu đều cho nhiễu thêm một cơ hội để trông giống tín hiệu.

Vì sao thử nhiều chiến lược hơn lại làm Sharpe cao nhất tăng lên?

Hãy hình dung 240 chiến lược độc lập không có lợi thế thực sự, với các ước tính Sharpe nhiễu. Phần lớn ước tính sẽ quanh mức 0, nhưng giá trị lớn nhất thường dương. Càng xem xét nhiều ứng viên, giá trị lớn nhất đó càng có thể lệch xa sự thật.

Để minh họa sơ bộ, giả sử sai số chuẩn của Sharpe ước tính cho mỗi ứng viên là 0.5. Với 240 lần rút độc lập, ước tính lớn nhất có thể cao hơn trung bình khoảng 1.4 sai số chuẩn, tương đương Sharpe khoảng 0.7, chỉ do khâu lựa chọn. Các ứng viên chiến lược thực tế có tương quan với nhau, nên phép tính này không phải là một hiệu chỉnh bạn có thể đưa thẳng vào báo cáo. Nó cho thấy vì sao “ứng viên thắng vượt mức 0” là bằng chứng yếu sau một cuộc tìm kiếm rộng.

Và phạm vi tìm kiếm hiếm khi chỉ gói gọn trong lưới tham số. Có thể bạn đã thử ba nhóm tín hiệu, loại bỏ hai nhóm sau khi xem đường cong, thay đổi tập tài sản giao dịch, rồi chạy lại phương án còn lại với lịch tái cân bằng khác. Nếu hiệu suất ảnh hưởng đến những lựa chọn đó, chúng cần được ghi vào lịch sử nghiên cứu.

Thế nào được tính là một lần thử backtest?

Hãy tính một quyết định là một lần thử nếu kết quả của nó có thể ảnh hưởng đến việc bạn chọn chiến lược nào. Điều đó bao gồm cả những lần chạy bạn không công bố và các biến thể bạn dừng sớm vì đường cong vốn trông xấu. Lỗi biên dịch không phải là một lần thử hiệu suất; còn lần chạy cho ra Sharpe đáng thất vọng thì thường là có.

Hoạt động nghiên cứuThường được tính?Lý do
Đổi khoảng nhìn lại từ 20 thành 30 sau khi xem kết quảCóKết quả đầu tiên đã ảnh hưởng đến ứng viên tiếp theo
Chạy cùng một chiến lược cố định trên khoảng thời gian mới đã xác định trướcThường không phải lần thử lựa chọn mớiQuy tắc đã được cố định trước khi xem bằng chứng đó
Đổi tập tài sản sau khi thấy tài sản nào cho kết quả tốt nhấtCóViệc chọn tập tài sản có thể cải thiện kết quả bề ngoài
Sửa lỗi cú pháp rồi chạy lại đoạn mã không thay đổiKhôngKhông có quyết định nghiên cứu nào dựa trên hiệu suất

Ranh giới nằm ở chỗ bạn có dùng kết quả để đưa ra lựa chọn hay không. Việc nhớ lại điều đó có thể khó, vì vậy nhật ký thử nghiệm nên ghi lại giả thuyết, phiên bản mã hoặc cấu hình, khoảng dữ liệu, giả định về chi phí và kết quả của mỗi lần chạy.

Tôi có thể hiệu chỉnh cho việc kiểm định nhiều giả thuyết không?

Có những phương pháp ước tính thiên lệch do lựa chọn hoặc điều chỉnh mức ý nghĩa thống kê cho nhiều lần thử. Chúng có thể hữu ích, nhưng cần giả định về mối quan hệ giữa các ứng viên và đặc tính của lợi suất. Giá trị p danh nghĩa hay một ước tính Sharpe đã điều chỉnh đơn lẻ không thể cứu vãn cuộc tìm kiếm nếu bạn đã đánh mất lịch sử thực sự của nó.

Hãy bắt đầu từ những phần bạn kiểm soát được. Chốt đặc tả cuối cùng trước khi đánh giá một giai đoạn thực sự chưa từng được đụng đến. Giữ toàn bộ tập ứng viên trong tầm quan sát. Khi thử nhiều biến thể có liên quan, hãy nhóm chúng theo quyết định đã tạo ra chúng, thay vì giả vờ rằng mỗi biến thể là một phát hiện độc lập. Hãy báo cáo cả quá trình tìm kiếm bên cạnh ứng viên thắng cuộc: số lần thử, quy tắc lựa chọn và việc đánh giá cuối cùng có dẫn đến chỉnh sửa thêm hay không.

Một phép thử hữu ích: Nếu kết quả trên tập giữ lại khiến bạn thất vọng, bạn có thay đổi chiến lược rồi lại gọi chính giai đoạn đó là tập giữ lại không? Nếu có, giai đoạn đó giờ đã trở thành một phần của quá trình nghiên cứu. Bạn cần bằng chứng mới cho lần đánh giá tiếp theo.

Một tác nhân AI nghiên cứu nên ghi lại những gì?

Một tác nhân có thể tạo ứng viên nhanh hơn khả năng ghi nhớ tạm thời của con người. Vì vậy, việc theo dõi số lần thử phải là một phần của hệ thống nghiên cứu, chứ không phải việc phụ để làm báo cáo. Lưu từng ứng viên trước khi chạy, bao gồm thử nghiệm gốc và lý do tạo ra ứng viên đó. Giữ lại cả những lần chạy thất bại và bị loại. Ghi lại thời điểm con người hoặc tác nhân xem xét hiệu suất và quyết định tiếp theo là gì.

Sau đó, hãy làm cho quy trình lựa chọn có thể tái lập: với cùng tập ứng viên và cùng quy tắc, quy trình phải chọn cùng một ứng viên thắng cuộc. Nếu tác nhân liên tục thay đổi prompt, mục tiêu hoặc các ràng buộc sau khi xem kết quả, những thay đổi đó cũng thuộc phạm vi tìm kiếm.

Sharpe 2.1 có thể đáng để tìm hiểu. Ý nghĩa của nó phụ thuộc vào quá trình tạo ra con số đó. Khi nhật ký nghiên cứu cho biết 240 ứng viên đã cạnh tranh để giành vị trí nổi bật, bạn có thể đặt câu hỏi tiếp theo đúng trọng tâm: còn bằng chứng nào chưa bị những lựa chọn đó sử dụng hết?

kiểm định nhiều giả thuyếtbacktestkhớp quá mứcnghiên cứu chiến lược
← Tất cả bài viết