14 tháng Mười, 2026 · dữ liệu

Vì sao bạn cần sổ theo dõi cổ phiếu bị hủy niêm yết trong backtest

Vì sao bạn cần sổ theo dõi cổ phiếu bị hủy niêm yết trong backtest

Backtest cổ phiếu loại bỏ các công ty đã bị hủy niêm yết có thể báo mức lợi nhuận cao trong khi âm thầm xóa đi một số kết quả tệ nhất. Vấn đề thường bắt đầu từ một lựa chọn thực tế: tải danh sách mã hiện có rồi kiểm thử các mã đó trong 10 năm qua. Danh sách ấy đương nhiên chỉ gồm những công ty còn tồn tại.

Đưa các công ty đã biến mất trở lại tập hợp nghiên cứu đòi hỏi nhiều hơn việc thêm vài mã cổ phiếu cũ. Bạn cần biết từng chứng khoán tồn tại vào thời điểm nào, khi nào được niêm yết hoặc rời sàn, và giá trị của nó kết thúc ra sao. 3 lối tắt phổ biến làm mất lịch sử đó theo những cách khác nhau.

Sai lầm 1: Dùng thành phần hiện tại cho mọi năm

Hãy thử hình dung bạn kiểm thử chiến lược động lượng hàng tháng trên các thành phần hiện tại của S&P 500, bắt đầu từ năm 2010. Những công ty thất bại, sáp nhập hoặc bị loại khỏi chỉ số đều vắng mặt ở mọi kỳ tái cân bằng. Chiến lược của bạn không bao giờ có cơ hội mua một mã sau này thua lỗ, còn tập hợp lịch sử chỉ giữ lại những cái tên cuối cùng đã chứng tỏ đủ thành công để trụ lại.

Hệ quả thường là lợi nhuận trung bình bị thổi phồng, mức sụt giảm có vẻ nhẹ hơn và chiến lược dường như ưu tiên những yếu tố đơn giản như động lượng hoặc chất lượng. Các tín hiệu đó có thể là thật. Nhưng bài kiểm thử còn ngầm dành cho chúng một lợi thế: biết trước ai sẽ sống sót.

Dùng dữ liệu thành phần tại từng thời điểm. Ở mỗi kỳ tái cân bằng, tập hợp đủ điều kiện cần gồm các chứng khoán đáp ứng quy tắc dựa trên thông tin có sẵn vào lúc đó. Cần có ngày hiệu lực cho từng lần thay đổi thành phần, kể cả những thay đổi giữa các kỳ rà soát chỉ số theo lịch nếu chiến lược giao dịch trên một tập hợp rộng hơn.

Sai lầm 2: Coi mã không còn thấy là dữ liệu bị thiếu

Rất dễ bỏ qua một mã không có trong tệp dữ liệu hiện đại của nhà cung cấp. Bộ nạp dữ liệu không thấy các dòng gần đây, gắn nhãn mã là cũ rồi loại bỏ. Mã có thể ghi lại cảnh báo, nhưng backtest vẫn tiếp tục với bảng dữ liệu gọn gàng hơn và không lưu dấu vết các chứng khoán đã bị loại.

Một số chứng khoán biến mất do sáp nhập hoặc bị mua lại. Những chứng khoán khác bị hủy niêm yết sau khi gặp khó khăn tài chính, phá sản hoặc không đáp ứng quy định niêm yết. Giá đóng cửa thông thường cuối cùng của chúng không nhất thiết phản ánh giá trị mà nhà đầu tư thực nhận. Nếu cổ phiếu gặp khó khăn ngừng giao dịch ở mức $0.40 rồi sau đó bị hủy bỏ, giả định vị thế vẫn có giá $0.40 có thể khiến một khoản nắm giữ vô giá trị nằm mãi trong danh mục. Còn nếu loại bỏ nó, bạn có thể xóa sạch khoản lỗ.

Hãy duy trì danh mục thông tin chứng khoán, gồm ngày niêm yết và hủy niêm yết, mã lý do, cũng như chứng khoán kế nhiệm hoặc khoản thanh toán bằng tiền nếu có. Sự kiện hủy niêm yết cần đóng hoặc chuyển đổi vị thế theo đúng những gì người nắm giữ thực nhận. Chi tiết tùy thuộc vào sự kiện và công cụ; không thể dùng một quy tắc chung kiểu “giá cuối cùng” cho tất cả trường hợp.

Sự kiệnKhoản nắm giữ có thể chuyển thànhCách xử lý cần xem xét trong backtest
Mua lại bằng tiền mặtTiền mặt theo điều khoản giao dịchGhi nhận tiền thu được vào ngày hiệu lực
Sáp nhập bằng cổ phiếuCổ phiếu của công ty kế nhiệmÁp dụng tỷ lệ hoán đổi và tiếp tục theo dõi chứng khoán kế nhiệm
Hủy cổ phiếu do phá sảnGiá trị thu hồi được rất thấp hoặc bằng 0Xử lý vị thế dựa trên hồ sơ phân phối hoặc hủy cổ phiếu tương ứng

Sai lầm 3: Sửa tập hợp nhưng bỏ qua cách tính lợi nhuận

Bổ sung thành phần lịch sử chỉ khắc phục vấn đề lựa chọn. Nếu chuỗi lợi nhuận của bạn dừng ở giá đóng cửa thông thường cuối cùng, nó vẫn có thể bỏ sót lợi nhuận khi hủy niêm yết. Nếu thêm lợi nhuận hủy niêm yết nhưng áp dụng vào chuỗi giá đã bao gồm sự kiện cuối cùng, bạn có thể tính khoản lỗ 2 lần. Quy ước của các nhà cung cấp khác nhau, và chỉ nhìn tên trường chưa chắc đã biết tệp dùng quy ước nào.

Giả sử một cổ phiếu giảm từ $10 xuống $1, rồi bị hủy niêm yết với lợi nhuận cuối kỳ được báo cáo là −80%. Nếu trước tiên bạn tính mức lỗ giá 90%, rồi nhân thêm lợi nhuận hủy niêm yết −80%, tổng mức lỗ sẽ thành 98%, một kết quả khó tin. Sai lầm nằm ở việc kết hợp 2 phép đo chồng lấn một phần trên cùng diễn biến giá.

Trước khi tính lợi nhuận danh mục, hãy ghi rõ liệu lợi nhuận thông thường có bao gồm các khoản phân phối và kết quả hủy niêm yết hay không, cũng như khoảng thời gian mà mỗi mức lợi nhuận bao quát. Đối chiếu một số hành động doanh nghiệp đã biết, từ quan sát dữ liệu thô đến giá trị cuối cùng của danh mục. Hãy đưa vào các vị thế còn nắm giữ khi sự kiện xảy ra; biểu đồ ở cấp chứng khoán có thể trông hợp lý trong khi sổ danh mục lại ghi nhận tiền thu được sai ngày.

Khi một mã biến mất, hãy coi đó là một sự kiện cần được giải thích. Đừng suy luận rằng công ty không còn quan trọng chỉ vì tệp dữ liệu ngừng ghi nhận công ty ấy.

Cách kiểm tra backtest có tính đến hủy niêm yết

Hãy bắt đầu bằng số lượng và độ bao phủ trước khi so sánh Sharpe. Với mỗi năm, báo cáo có bao nhiêu chứng khoán đủ điều kiện, bao nhiêu mã bị hủy niêm yết và bao nhiêu mã bị loại vì dữ liệu chưa được xử lý. Sau đó kiểm tra một mẫu các mã rời sàn vì những nguyên nhân khác nhau và lần theo từng vị thế đến giá trị cuối cùng trong danh mục.

Chạy cùng một chiến lược có và không có các mã đã bị hủy niêm yết, nhưng hãy xem chênh lệch là công cụ chẩn đoán chất lượng dữ liệu, chứ không tự nó là ước tính hiệu suất đã hiệu chỉnh. Quy tắc tập hợp, quy ước lợi nhuận và thời điểm sự kiện đều phải phù hợp với câu hỏi bạn muốn trả lời. Kết quả đáng tin cậy đến từ một sổ theo dõi có thể giải thích mọi khoản nắm giữ đã tham gia, mọi hành động doanh nghiệp mà nó trải qua và giá trị còn lại khi kết thúc.

thiên lệch sống sótcổ phiếu bị hủy niêm yếtdữ liệu tại thời điểm phát sinhbacktest
← Tất cả bài viết