27/12/2025
540 lượt đọc
Trong algo trading, có một nghịch lý mà gần như ai cũng gặp ít nhất một lần: bạn có một ý tưởng nghe rất logic, backtest không quá đẹp nhưng đủ ổn để tin là có edge, thậm chí forward test vài tháng đầu còn kiếm được tiền. Nhưng rồi đến một lúc nào đó, chiến lược bắt đầu đi chệch khỏi kỳ vọng. Lỗ không phải kiểu “sai logic”, mà là lỗ dai, lỗ đều, khiến bạn nghi ngờ chính khả năng đánh giá hệ thống của mình. Khi nhìn lại, rất nhiều người mới nhận ra: vấn đề không nằm ở việc chiến lược có edge hay không, mà nằm ở việc mình đã tin vào kết quả test sai chỗ.
Backtesting về bản chất chỉ làm một việc: lấy một tập dữ liệu lịch sử, áp luật giao dịch vào, rồi tính xem nếu đã biết trước mọi thứ thì kết quả sẽ như thế nào. Vấn đề là, con người rất dễ đánh tráo mục tiêu. Ta không hỏi “chiến lược này có từng kiếm tiền không?”, mà vô thức hỏi “chiến lược này có đáng để mình tin không?”. Và backtest thì không được thiết kế để trả lời câu hỏi thứ hai.
Ví dụ rất thực tế: bạn xây một chiến lược breakout đơn giản, dùng high/low của 20 ngày. Bạn optimize thêm vài tham số như stop, take profit, filter volatility. Sau một hồi thử, bạn thấy có một vùng tham số cho kết quả ổn trên dữ liệu 2010–2020. Lúc này, điều bạn không nhìn thấy là: chiến lược đó ăn chủ yếu nhờ một số giai đoạn có trend kéo dài và biến động có cấu trúc rất “đẹp”. Bạn không cố tình gian lận, nhưng bạn đã vô tình điều chỉnh chiến lược cho phù hợp với lịch sử mà bạn đã nhìn thấy.
Backtest không cho bạn cảm giác rủi ro thật. Bạn không phải chịu chuỗi lỗ liên tiếp mà không biết bao giờ kết thúc. Bạn không phải đối mặt với việc “logic vẫn đúng nhưng P&L vẫn xấu”. Vì vậy, backtest rất dễ tạo ra một dạng tự tin giả: không phải vì số liệu bị làm đẹp, mà vì bạn đang đứng ngoài cuộc chơi khi đánh giá nó.
Forward testing thường được xem là “bước tiếp theo tự nhiên”: chạy chiến lược trên dữ liệu mới, không dùng để optimize. Trên lý thuyết, đây là bước rất tốt. Nhưng trên thực tế, forward test là nơi rất nhiều chiến lược chết theo cách âm thầm nhất.
Lý do là vì forward testing đặt bạn vào một trạng thái tâm lý rất khó: bạn đã đầu tư công sức vào chiến lược, đã thấy nó hoạt động trong backtest, và giờ bạn chờ nó chứng minh mình đúng. Khi kết quả không như kỳ vọng, phản xạ rất tự nhiên là can thiệp. Ban đầu chỉ là những điều chỉnh nhỏ: “market này hơi khác”, “volatility cao quá”, “giảm size chút cho an toàn”. Nhưng mỗi lần bạn chỉnh, bạn đang học từ dữ liệu forward, và như vậy forward test không còn là forward test nữa.
Một ví dụ rất phổ biến: một chiến lược mean reversion chạy tốt trong môi trường volatility thấp. Khi volatility tăng, chiến lược lỗ liên tục. Thay vì chấp nhận rằng edge của mình có giới hạn regime, người chạy chiến lược thêm filter để “tránh market xấu”. Kết quả: forward test sau đó nhìn có vẻ ổn hơn, nhưng thực chất bạn vừa fit chiến lược vào đúng giai đoạn đang chạy, và lần tới khi regime đổi nữa, vấn đề lại lặp lại.
Forward testing chỉ thực sự có giá trị nếu bạn chấp nhận một điều rất khó: để chiến lược thua đúng cách. Không sửa, không tối ưu, không biện minh. Điều này cực kỳ khó với con người, đặc biệt khi có tiền thật liên quan.
Walk-forward testing là phương pháp gần nhất với thực tế ra quyết định của con người trong trading. Bạn chỉ được phép dùng dữ liệu quá khứ để đưa ra tham số, rồi buộc phải sống với kết quả trong tương lai mà bạn không kiểm soát được. Điểm quan trọng không nằm ở con số lợi nhuận, mà ở hành vi của chiến lược qua nhiều giai đoạn khác nhau.
Khi làm walk-forward nghiêm túc, bạn sẽ thấy những thứ mà backtest không bao giờ cho thấy: có giai đoạn chiến lược hoạt động đúng như kỳ vọng, có giai đoạn edge gần như biến mất, có giai đoạn lỗ kéo dài dù logic không hề sai. Đây chính là bức tranh thực của trading: edge không bật/tắt rõ ràng, mà mờ dần rồi quay lại.
Một ví dụ rất đời: hai chiến lược có cùng CAGR trong backtest, nhưng khi walk-forward, một cái cho kết quả tương đối ổn định qua các window, cái còn lại phụ thuộc nặng vào một vài giai đoạn ngắn. Nếu chỉ nhìn backtest, bạn không phân biệt được. Nhưng walk-forward buộc bạn phải hỏi câu hỏi quan trọng hơn: “Nếu tôi bắt đầu chạy chiến lược này ở một thời điểm ngẫu nhiên trong tương lai, xác suất tôi gặp giai đoạn xấu là bao nhiêu?”
Điểm mạnh nhất của walk-forward không phải là “giảm overfitting”, mà là giảm ảo tưởng kiểm soát. Nó dạy bạn rằng một chiến lược tốt không phải là chiến lược thắng nhiều, mà là chiến lược thua theo cách bạn có thể chịu đựng và tồn tại.
Nếu chỉ rút ra một bài học sau tất cả các phương pháp test, thì đó là: đừng dùng test để chứng minh bạn đúng. Hãy dùng test để tìm ra tất cả những cách bạn có thể sai. Một chiến lược sống sót qua walk-forward không đảm bảo sẽ kiếm tiền, nhưng một chiến lược không sống sót qua walk-forward gần như chắc chắn sẽ làm bạn mất tiền khi chạy thật.
Trong algo trading, thứ nguy hiểm nhất không phải là chiến lược kém, mà là chiến lược trông có vẻ hợp lý đủ để bạn tin, nhưng không đủ bền để bạn sống sót khi market đổi mặt. Và chỉ khi bạn test theo cách khiến bản thân thấy khó chịu, mất tự tin và buộc phải đặt câu hỏi ngược lại, bạn mới đang đi đúng hướng.
0 / 5
Có một hiểu lầm rất phổ biến khi mới bước vào quant trading: cứ nghe đến “quant” là nghĩ ngay đến deep learning, transformers, reinforcement learning, foundation models, hay ít nhất cũng phải có một thứ gì đó đủ phức tạp để nghe giống phòng lab hơn là bàn giao dịch. Nhưng nếu nhìn vào cách nhiều tổ chức thật đang vận hành, bức tranh lại bớt hào nhoáng hơn nhiều.
Nếu nhìn theo kiểu tin tức, ngày đáo hạn phái sinh thường bị gắn với những cụm như rung lắc, kéo trụ, ép ATC. Nhưng với quant trading, cách hỏi như vậy vẫn còn cảm tính. Câu hỏi đúng hơn là: ngày đáo hạn có tạo ra một mẫu biến động lặp lại, đủ ổn định, đủ rõ, để mình đưa vào bộ lọc của hệ thống hay không. Đây là một câu hỏi rất hợp với thị trường Việt Nam, vì hợp đồng tương lai VN30 có lịch đáo hạn cố định vào thứ Năm lần thứ ba của tháng đáo hạn, nên bản thân nó đã là một event định kỳ, rất phù hợp để làm event study. Ngoài ra, hợp đồng VN30 hiện có hệ số nhân 100.000 đồng mỗi điểm chỉ số, nên đây không phải một sản phẩm quá nhỏ để bỏ qua khi nhìn hành vi của nhóm cổ phiếu trụ.
Một trong những lỗi phổ biến nhất của nhà đầu tư cá nhân ở Việt Nam là quyết định mua trước, rồi mới mở chart ra sau để tìm lý do xác nhận. Có thể là một mã được nhắc nhiều trong room chat, một câu chuyện đầu tư công đang nóng, một cổ phiếu bất động sản “đã giảm quá sâu”, hay một mã ngân hàng “nghe nói sắp vào sóng”. Cách ra quyết định như vậy nghe quen vì nó rất đời thường, nhưng chính nó làm nhiều người kẹt hàng hàng tháng trời. Mua xong thì chart không chạy. Hoặc tệ hơn, chart vẫn tiếp tục bleed xuống nhưng người cầm hàng cứ bấu víu vào câu chuyện vì không biết nhìn chart thế nào để thừa nhận rằng mình đang đứng sai phía.
Điều làm nhiều tài khoản lỗ nặng không phải là vì trader luôn nhìn sai thị trường. Nhiều khi họ nhìn đúng xu hướng, nhưng vẫn thua vì vào sai kích thước vị thế. Đây là lỗi rất phổ biến. Khi thị trường êm, họ đánh lớn vì thấy giá đi đẹp. Đến lúc thị trường rung mạnh hơn, họ vẫn giữ đúng size cũ. Kết quả là một giai đoạn biến động lớn có thể xóa sạch thành quả của nhiều tuần trước đó.
Sai lầm rất phổ biến của người mới là thấy chỉ số tăng mạnh một phiên rồi kết luận thị trường đã tạo đáy. Thực tế, một nhịp hồi kỹ thuật thường có 3 đặc điểm: giá bật lên sau chuỗi giảm sâu, tâm lý bớt hoảng loạn, nhưng khối lượng chưa thật sự cải thiện và chỉ số vẫn chưa vượt lại các vùng kỹ thuật quan trọng. Phiên ngày 17/03/2026 là ví dụ khá rõ. VN-Index tăng 17,08 điểm, đóng cửa ở 1.710,29 điểm, số mã tăng là 179 so với 147 mã giảm, nhưng giá trị khớp lệnh HoSE chỉ khoảng 20,9 nghìn tỷ đồng, vẫn dưới trung bình 20 phiên. Cùng lúc đó, phân tích kỹ thuật của AseanSC cho thấy VN-Index khi ấy vẫn đóng cửa dưới MA10, MA20 và MA50, tức là xu hướng ngắn hạn chưa thực sự đảo chiều, nên nhịp tăng này nghiêng nhiều hơn về một nhịp hồi kỹ thuật hơn là tín hiệu xác nhận tiền lớn quay lại.
Điều đầu tiên người mới cần nhớ là thị trường gần như luôn đi trước nền kinh tế thật một nhịp. Khi chu kỳ vĩ mô bắt đầu đổi pha, tiền không chờ đến lúc GDP, lợi nhuận doanh nghiệp hay tín dụng tăng rõ ràng rồi mới vào. Nó thường phản ứng ngay khi có dấu hiệu áp lực lãi suất bớt căng, thanh khoản dễ thở hơn, hoặc rủi ro hệ thống giảm xuống. Việt Nam năm 2023 là ví dụ rất dễ kiểm chứng. Trong năm đó, Ngân hàng Nhà nước giảm lãi suất điều hành 4 lần; Reuters ghi rõ lãi suất tái cấp vốn và tái chiết khấu đều giảm tổng cộng 150 điểm cơ bản. Cùng giai đoạn đó, VNDIRECT ghi nhận đến ngày 25/5/2023 VN-Index đã lên 1.064,6 điểm, tăng 5,7% từ đầu năm, và thanh khoản bình quân 3 sàn trong tháng 5 lên 13.905 tỷ đồng mỗi phiên, tăng 4,7% so với tháng trước. Nghĩa là tiền đã bắt đầu quay lại thị trường ngay khi điều kiện tài chính bớt xấu, dù nền kinh tế thực lúc đó vẫn còn khó.
Được nghiên cứu và phát triển bởi các chuyên gia từ QMTrade và cộng đồng nhà đầu tư chuyên nghiệp.
Truy cập ngay!