Backtest và paper trading là gì? Kiểm chứng chiến lược trước khi dùng tiền thật

· · Backtest & giao dịch thuật toán

Backtest và paper trading là gì? Kiểm chứng chiến lược trước khi dùng tiền thật

Backtest cho bạn biết một chiến lược đã từng hoạt động thế nào trên dữ liệu quá khứ. Paper trading cho bạn biết nó đang hoạt động thế nào trên thị trường thật, nhưng chưa dùng tiền thật. Hai bước này không thay thế nhau. Một chiến lược chỉ nên chạy bằng tiền thật khi đã qua cả hai.

Bài này giải thích từng bước, những lỗi khiến backtest đẹp mà chạy thật thua lỗ, và cách nối hai bước với nhau trên QuantVN.

![Tỷ lệ bot trên QuantVN được chạy paper trading, theo thị trường](https://quantvn.com/blog-assets/backtest-va-paper-trading/paper-trading-theo-thi-truong.png)

Hình 1: Tỷ lệ bot trên QuantVN có lịch sử paper trading. Dữ liệu nền tảng ngày 03/11/2026.

Backtest là gì?

Backtest là chạy một quy tắc giao dịch trên dữ liệu giá quá khứ, như thể bạn đã giao dịch theo nó từ trước. Kết quả là một đường lãi lỗ cộng dồn (equity curve) cùng các chỉ số như lợi nhuận trung bình, mức sụt giảm lớn nhất (drawdown) và Sharpe ratio.

Một backtest tốt trả lời được ba câu hỏi:

  1. Ý tưởng có lợi thế thật không, hay chỉ là may mắn trong một giai đoạn? Hãy nhìn số lần giao dịch và độ ổn định qua nhiều năm, không chỉ tổng lợi nhuận.
  2. Lợi thế còn lại bao nhiêu sau phí, thuế và trượt giá? Nhiều chiến lược có lời trên giấy nhưng lỗ khi trừ chi phí.
  3. Rủi ro lớn nhất là bao nhiêu? Drawdown cho bạn biết mình phải chịu đựng mức lỗ tạm thời nào trước khi chiến lược hồi lại.

Muốn đọc kết quả cho đúng, xem thêm cách đọc equity curve và drawdown là gì.

Những lỗi khiến backtest đẹp nhưng chạy thật thua lỗ

Phần lớn backtest sai không phải vì code lỗi, mà vì cách đặt bài toán. Đây là những lỗi gặp nhiều nhất:

  • Overfitting (khớp quá mức): chỉnh tham số đến khi đường lãi lỗ thật đẹp. Kết quả lúc đó mô tả quá khứ chứ không dự báo tương lai. Dấu hiệu dễ thấy: đổi tham số một chút là kết quả sụp. Xem thêm overfitting trong quant trading.
  • Look-ahead bias (nhìn trước tương lai): dùng thông tin mà lúc ra quyết định chưa có, ví dụ dùng giá đóng cửa hôm nay để đặt lệnh ngay trong phiên hôm nay.
  • Survivorship bias (thiên lệch sống sót): chỉ kiểm định trên những mã còn tồn tại hôm nay. Rổ VN30 hiện tại là những công ty đã thành công, nên kiểm định ngược trên rổ này dễ cho kết quả đẹp hơn thực tế.
  • Bỏ qua chi phí giao dịch: phí, thuế bán và trượt giá ăn mòn lợi thế, nhất là với chiến lược giao dịch nhiều. Xem mô hình slippage trong backtest.
  • Quá ít giao dịch: 20 lệnh thắng 15 nghe ấn tượng nhưng chưa đủ để phân biệt lợi thế với may mắn.

Cách phòng tránh hiệu quả nhất là giữ lại một phần dữ liệu không dùng khi xây chiến lược, rồi kiểm tra trên phần đó sau cùng (kiểm định out-of-sample). Phương pháp walk-forward optimization làm việc này lặp đi lặp lại theo thời gian.

Paper trading là gì?

Paper trading là chạy chiến lược trên dữ liệu thị trường thật, theo thời gian thực, nhưng lệnh chỉ được ghi nhận chứ không khớp bằng tiền thật. Nó lấp khoảng trống mà backtest không lấp được:

  • Dữ liệu mới hoàn toàn. Không ai có thể vô tình tối ưu chiến lược cho những phiên chưa diễn ra.
  • Lỗi vận hành lộ ra. Dữ liệu đến trễ, lệnh sai khung giờ, tín hiệu bị trùng: những lỗi này hiếm khi xuất hiện trong backtest nhưng rất hay gặp khi chạy thật.
  • Kiểm tra tâm lý. Nhìn chiến lược lỗ năm phiên liền trên màn hình khác rất nhiều so với đọc con số drawdown trong báo cáo.

Paper trading không chứng minh được chiến lược sẽ có lời. Nó chỉ cho bạn biết chiến lược có hành xử giống với kỳ vọng từ backtest hay không. Nếu kết quả paper trading lệch xa backtest, hãy tìm nguyên nhân trước khi dùng tiền thật.

Nên paper trading bao lâu?

Không có con số cố định. Thời gian đủ dài là khi chiến lược đã có đủ số lệnh để so sánh với backtest, và đã đi qua ít nhất một giai đoạn thị trường khác với lúc bạn xây nó. Với chiến lược giao dịch trong ngày, vài tuần có thể đủ. Với chiến lược nắm giữ nhiều phiên, thường cần vài tháng.

Hãy viết ra trước những gì sẽ khiến bạn dừng: ví dụ drawdown vượt mức lớn nhất trong backtest, hoặc tỷ lệ thắng thấp hơn hẳn. Quyết định trước sẽ khách quan hơn quyết định khi đang lỗ.

Từ ý tưởng đến tiền thật: quy trình bốn bước

  1. Đặt giả thuyết rõ ràng. Ví dụ: "VN30F1M sau một phiên giảm mạnh thì phiên kế tiếp hay hồi". Một giả thuyết có thể sai mới kiểm định được.
  2. Backtest trên dữ liệu quá khứ, tính đủ chi phí, rồi kiểm tra lại trên phần dữ liệu đã giữ riêng.
  3. Paper trading trên thị trường thật cho đến khi kết quả đủ để so với backtest.
  4. Chạy tiền thật với quy mô nhỏ, rồi tăng dần nếu kết quả vẫn khớp.

Trên QuantVN, mỗi bot đi qua đúng các bước này: kiểm định trên dữ liệu lịch sử, kiểm tra ngoài mẫu, rồi chạy paper trading trước khi bạn quyết định dùng tiền thật. Hiện có 1.786 bot đã được tạo trên nền tảng, và 549 bot trong số đó (30,7%) đã được chạy paper trading. Với bot cổ phiếu Việt Nam, tỷ lệ này là 34,3%. Với bot crypto, chỉ 2,7%.

Ví dụ: kiểm định một lời đồn trên VN30F1M

Đội ngũ QuantVN đã kiểm định một số "lời đồn" phổ biến trên thị trường phái sinh bằng đúng quy trình trên. Mỗi bài đều công bố dữ liệu, phương pháp và đoạn code đã chạy:

Điểm chung của các bài này: nhiều lời đồn chỉ đúng một phần, và phần lợi thế còn lại sau chi phí thường mỏng hơn nhiều so với cảm nhận.

Câu hỏi thường gặp

Backtest có lời thì chắc chắn chạy thật có lời không? Không. Backtest chỉ cho biết chiến lược từng hoạt động thế nào. Thị trường thay đổi, chi phí thực tế có thể cao hơn, và backtest có thể đã bị overfitting. Đó là lý do cần paper trading.

Paper trading có cần thiết nếu backtest đã kiểm tra ngoài mẫu? Có. Kiểm tra ngoài mẫu vẫn dùng dữ liệu quá khứ. Paper trading là lần đầu chiến lược gặp dữ liệu mà chưa ai nhìn thấy, và là lần đầu toàn bộ hệ thống chạy theo thời gian thực.

Tôi không biết code thì có backtest được không? Có. Trên QuantVN bạn có thể tạo bot từ các mẫu chiến lược có sẵn, chạy backtest và paper trading mà không cần tự viết code. Bắt đầu tại trang tạo bot.