
Backtest trong giao dịch: Cách backtest chiến lược giao dịch và tránh tự lừa dối bản thân
Backtest trong giao dịch — hướng dẫn đầy đủ: backtest là gì, cách thực hiện từng bước, những chỉ số nào cần phân tích và 7 sai lầm khiến bài kiểm tra cho thấy lợi nhuận trong khi giao dịch thực tế lại thua lỗ. Kèm ví dụ và ảnh chụp màn hình từ chiến lược thực tế.
Backtest là gì và tại sao bạn cần nó
Backtest (từ tiếng Anh “testing backward” — kiểm tra ngược) là mô phỏng một chiến lược giao dịch trên dữ liệu thị trường lịch sử. Nhà giao dịch xác định một bộ quy tắc: điều kiện vào lệnh, điều kiện thoát lệnh, mức cắt lỗ và chốt lời, kích thước vị thế. Phần mềm chạy các quy tắc này trên kho lưu trữ giá và tạo báo cáo: bao nhiêu giao dịch được thực hiện, bao nhiêu phần trăm có lãi, mức sụt giảm tối đa và lợi nhuận tổng thể.
Giá trị của backtest không nằm ở việc dự đoán tương lai. Thị trường không có nghĩa vụ lặp lại quá khứ. Giá trị nằm ở chỗ khác: backtest lọc ra những chiến lược rõ ràng không hoạt động. Nếu một thuật toán không thể kiếm tiền trên dữ liệu mà mọi biến động giá đã được biết trước, thì việc kỳ vọng lợi nhuận trong điều kiện thị trường thực là vô nghĩa.
Backtest trong giao dịch giải quyết đồng thời nhiều vấn đề thực tiễn. Chúng cho phép bạn đánh giá một giả thuyết trước khi cam kết tiền thật. Giúp tinh chỉnh các tham số chiến lược — độ dài đường trung bình động, ngưỡng chỉ báo, độ rộng stop. Cung cấp bức tranh khách quan về rủi ro: không phải “tôi nghĩ mức sụt giảm sẽ nhỏ”, mà là con số cụ thể về mức giảm vốn tối đa trong kỳ kiểm tra.
Các loại backtest
Backtest thủ công
Nhà giao dịch mở biểu đồ lịch sử, cuộn ngược thời gian và xác định thủ công các điểm vào và thoát theo quy tắc của mình. Kết quả mỗi giao dịch được ghi vào bảng tính.
Phương pháp này ai cũng có thể tiếp cận — không cần lập trình hay phần mềm chuyên dụng. Tuy nhiên, nó tốn nhiều thời gian, bị giới hạn về khối lượng dữ liệu (thực tế chỉ xử lý được 50-100 giao dịch) và dễ mắc phải thiên kiến nhận thức, sẽ được thảo luận chi tiết bên dưới.
Backtest tự động
Các tham số chiến lược được nhập vào nền tảng chuyên dụng, nền tảng tự chạy chúng trên dữ liệu lịch sử và tạo báo cáo. Kiểm tra hàng trăm giao dịch chỉ mất vài phút thay vì vài ngày.
Ví dụ tại Skyrexio, quy trình như sau: bạn đặt tên chiến lược, chọn tài sản cơ sở, chỉ định phí sàn giao dịch và kỳ kiểm tra, sau đó khởi chạy mô phỏng.

Trong vài phút, nền tảng cung cấp báo cáo chi tiết với hàng chục chỉ số, biểu đồ đường equity và thống kê từng giao dịch.
Backtest thuật toán
Chiến lược được mô tả bằng ngôn ngữ lập trình — Python, R hoặc Pine Script (TradingView). Mã thực hiện tất cả tính toán tự động. Phương pháp này mang lại sự linh hoạt tối đa nhưng đòi hỏi kỹ năng lập trình và thường là quá mức cần thiết cho hầu hết nhà giao dịch.
Các chỉ số cần phân tích trong kết quả
Nhận báo cáo backtest chỉ là bước khởi đầu. Điều quan trọng là biết cách đọc nó đúng cách. Hãy phân tích các chỉ số thiết yếu bằng bài kiểm tra thực tế của chiến lược EMA+SuperTrend trên BTC/USDT (giao ngay, hai năm, 166 giao dịch).

Lợi nhuận ròng và so sánh với benchmark
Lợi nhuận của chiến lược đạt +144,67%. Tuy nhiên, con số này tự nó nói lên rất ít. Bối cảnh mới quan trọng: trong cùng kỳ, chiến lược mua và giữ BTC cho thấy -22,46%. Khoảng cách 167 điểm phần trăm chứng minh rằng quản lý chủ động đã vượt trội đáng kể so với nắm giữ thụ động trong giai đoạn này.

Lưu ý dòng “Phí: 90,99 USDT”. Đây là chi phí thực đã được tính vào kết quả cuối cùng. Nếu không tính, lợi nhuận sẽ cao hơn đáng kể — và lạc quan một cách lừa dối.
Hệ số lợi nhuận (Profit Factor)
Tỷ lệ lợi nhuận gộp trên tổng lỗ. Trong ví dụ của chúng ta: lợi nhuận gộp 1.008,02 USDT, tổng lỗ 326,15 USDT. Profit Factor = 3,09 — mỗi đô la mất đi, chiến lược kiếm được ba đô la.
Chuẩn tham chiếu: giá trị trên 1,5 cho thấy chiến lược khả thi, trên 2,0 — tốt. Giá trị trên 5,0 với số lượng giao dịch ít là dấu hiệu cảnh báo (có thể là overfitting).
Tỷ lệ thắng và tỷ lệ giao dịch trung bình
Tỷ lệ thắng của chiến lược là 46,99%. Chưa đến một nửa giao dịch có lãi. Trực giác thì có vẻ tệ. Nhưng hãy xem xét sâu hơn.

Giao dịch thắng trung bình: +4,55%. Giao dịch thua trung bình: -1,56%. Tỷ lệ gần 3 trên 1. Chiến lược thắng ít hơn nhưng mỗi lần thắng lớn gấp ba lần mỗi lần thua. Toán học ủng hộ chiến lược — với tỷ lệ này, ngay cả tỷ lệ thắng 40% cũng mang lại giá trị kỳ vọng dương.
Một chi tiết đáng chú ý khác: giao dịch thắng được giữ trung bình 62,87 giờ, trong khi giao dịch thua được đóng trong 21,47 giờ. Chiến lược tự nó để lợi nhuận chạy và cắt lỗ — không cần sự can thiệp cảm xúc của nhà giao dịch.
Các tỷ số: Sharpe, Sortino, Calmar

Tỷ số Sharpe (0,65) đánh giá lợi nhuận điều chỉnh theo biến động tổng thể. Tỷ số Sortino (2,04) chỉ xét biến động giảm, mang tính tham khảo cao hơn cho nhà giao dịch: giá trị trên 2,0 được coi là mạnh. Tỷ số Calmar (5,38) chia lợi nhuận hàng năm cho mức sụt giảm tối đa — càng cao, chiến lược sử dụng rủi ro cho phép càng hiệu quả.
Chi tiết giao dịch

Thống kê từng giao dịch cho phép bạn xem xét riêng từng giao dịch: điểm vào, điểm thoát, trung bình giá, stop hoặc take-profit được kích hoạt và số tiền phí. Mức chi tiết này không thể có được khi kiểm tra thủ công.
Trực quan hóa giao dịch trên biểu đồ

Các giao dịch backtest có thể được phủ lên biểu đồ — điều này cho phép đánh giá trực quan mức độ phù hợp của logic chiến lược với biến động thị trường và nhanh chóng xác định các đoạn mà thuật toán hoạt động kém.
7 sai lầm làm sai lệch kết quả backtest
Bây giờ chúng ta đã phân tích các chỉ số và hiểu cách đọc báo cáo, hãy chuyển sang những gì có thể khiến tất cả phân tích này trở nên vô nghĩa — những sai lầm biến backtest từ công cụ hữu ích thành nguồn tự tin sai lầm.
1. Backtest không tính phí và trượt giá
Mỗi lần vào và thoát lệnh đều tốn tiền. Phí giao ngay trên hầu hết sàn giao dịch dao động từ 0,05% đến 0,1% mỗi giao dịch. Thoạt nhìn có vẻ không đáng kể.
Nhưng trong ví dụ của chúng ta, 166 giao dịch trong hai năm tốn 90,99 USDT phí — với vốn ban đầu khoảng 400 USDT, đây là tỷ lệ đáng kể. Thêm trượt giá: 45,25 USDT nữa. Tổng cộng khoảng 136 USDT chi phí thực, đã được tính vào kết quả.
Backtest bỏ qua các chi phí này sẽ thổi phồng lợi nhuận cuối cùng hàng chục điểm phần trăm. Chiến lược cho thấy +25% không tính phí có thể dễ dàng chuyển sang lỗ sau khi trừ — đặc biệt với số lượng giao dịch lớn.
2. Quá khớp tham số (overfitting)
Bạn điều chỉnh chiến lược, được kết quả trung bình. Thay đổi một tham số — tốt hơn. Thêm một tham số nữa — tốt hơn nữa. Sau một giờ điều chỉnh, màn hình hiển thị Profit Factor 7,0 và tỷ lệ thắng 82%.
Thực tế, bạn đã dạy thuật toán tái hiện hoàn hảo một đoạn cụ thể của quá khứ. Nó đã ghi nhớ mọi bất thường trên biểu đồ. Trên dữ liệu mới, tất cả điều này vô dụng.
Dấu hiệu overfitting: Profit Factor trên 5,0 với ít giao dịch; Sharpe Ratio trên 4,0 trên mẫu dưới 200 giao dịch; thay đổi tham số tối thiểu (±10-20%) phá hủy kết quả.
Trong bài kiểm tra của chúng ta, Profit Factor 3,09 với 166 giao dịch là kết quả thực tế, không phải quá khớp.
3. Kiểm tra trên kỳ quá ngắn
Thị trường crypto mang tính chu kỳ: giai đoạn tăng giá nhường chỗ cho giai đoạn giảm giá, tiếp theo là tích lũy. Chiến lược chỉ được kiểm tra trên một giai đoạn thì vô dụng cho các giai đoạn còn lại.
Thời gian tối thiểu là một năm rưỡi đến hai năm. Bài kiểm tra EMA+SuperTrend bao phủ từ tháng 3/2024 đến tháng 3/2026, bao gồm đỉnh lịch sử BTC, điều chỉnh sâu và nhiều tháng đi ngang. Tất cả các giai đoạn này đều rõ ràng trên đường equity.
Kiểm tra trong ba tháng cuối cùng của thị trường tăng giá không phải kiểm tra chiến lược, mà kiểm tra khả năng mua trong thị trường tăng. Bất kỳ thuật toán nào cũng làm được điều đó.
4. Thiên kiến nhìn trước (Look-Ahead Bias)
Trong backtest thủ công, nhà giao dịch xem qua biểu đồ lịch sử và đánh dấu các điểm vào. Về hình thức, họ chỉ nhìn vào quá khứ. Nhưng não đã thấy phần bên phải của biểu đồ và vô thức lọc bỏ các tín hiệu bất lợi.
Kiểm tra thủ công cùng một chiến lược gần như luôn cho kết quả cao hơn kiểm tra tự động 20-30 điểm phần trăm. Đây không phải gian lận — đây là thiên kiến nhận thức không thể kiểm soát bằng ý chí.
Backtest tự động loại bỏ hoàn toàn vấn đề này: thuật toán xử lý nến tuần tự, không có quyền truy cập giá tương lai.
5. Thiên kiến sống sót (Survivorship Bias)
Nếu bạn kiểm tra chiến lược trên top 50 tài sản crypto hiện tại, bạn đang kiểm tra trên những kẻ chiến thắng. Những đồng coin nằm trong top 50 hai năm trước nhưng kể từ đó đã về 0 hoặc mất 95% không có trong bài kiểm tra của bạn.
Điều này thổi phồng kết quả một cách có hệ thống. Để giảm sai lệch, hãy tập trung kiểm tra vào các tài sản có lịch sử dài và thanh khoản ổn định — BTC, ETH.
6. Tập trung vào lợi nhuận thay vì sụt giảm
Hai chiến lược: A cho +100% với sụt giảm -45%, B cho +60% với sụt giảm -8%. Về toán học A tốt hơn. Trong thực tế, gần như chắc chắn thất bại: nhà giao dịch thấy vốn giảm một nửa sẽ can thiệp và chốt lỗ tại điểm tồi tệ nhất.
Mức sụt giảm thực tế thường sâu gấp 1,5-2 lần so với backtest. Nếu bài kiểm tra cho thấy -8%, hãy chuẩn bị cho -12-16%. Nếu cho thấy -30%, chuẩn bị cho -45-60%.
Bài kiểm tra của chúng ta ghi nhận sụt giảm -8,09% và 8 giao dịch thua liên tiếp. Biết điều này trước, bạn sẽ không hoảng loạn ở giao dịch thua thứ năm.
7. Không có kiểm tra tiến (forward test)
Backtest kiểm tra: “Chiến lược có hoạt động trong quá khứ không?” Kiểm tra tiến kiểm tra: “Chiến lược có hoạt động trên dữ liệu chưa được khớp không?”
Chia kỳ có sẵn thành hai phần. Phần đầu — phát triển chiến lược. Phần sau — xác minh mà không thay đổi. Nếu kết quả tương đương, chiến lược có lợi thế thực sự. Nếu giảm mạnh, bạn đang gặp overfitting.
Cách backtest đúng cách: Danh sách kiểm tra
Mỗi điểm xuất phát từ một sai lầm cụ thể trong thực tế.
Kỳ kiểm tra — ít nhất một năm, bắt buộc bao gồm các giai đoạn thị trường khác nhau.
Số giao dịch tối thiểu — ít nhất 100. Ít hơn thì thống kê không đáng tin cậy.
Tính chi phí — phí và trượt giá luôn được tính, không ngoại lệ.
Kiểm tra độ bền — tham số ±20% không nên phá hủy kết quả.
Kiểm tra tiến — xác minh bắt buộc trên dữ liệu không được sử dụng trong quá trình phát triển.
Ưu tiên sụt giảm — đánh giá bắt đầu từ sụt giảm, không phải lợi nhuận. Nhân với 1,5-2 và đánh giá trung thực sự sẵn sàng của bạn.
Tất cả ảnh chụp màn hình và dữ liệu trong bài viết này được tạo tại Skyrexio. Trên nền tảng, bạn có thể xây dựng chiến lược trong trình xây dựng trực quan mà không cần viết mã, chạy backtest với phí và trượt giá thực, sau đó khởi chạy cùng chiến lược đó để giao dịch tự động trên 10 sàn giao dịch crypto hàng đầu. Chu trình hoàn chỉnh — từ ý tưởng đến giao dịch thực — trong một công cụ duy nhất.
Tổng kết
Backtest không phải bằng chứng về lợi nhuận. Nó là bộ lọc loại bỏ các chiến lược không hoạt động. Một bộ lọc đáng tin cậy — nếu được thực hiện không có sai sót.
Trước khi khởi chạy chiến lược với tiền thật, hãy hỏi sáu câu hỏi: Bài kiểm tra có bao phủ ít nhất hai năm không? Có hơn 100 giao dịch không? Phí đã được tính chưa? Profit Factor có trong phạm vi thực tế (1,5-4,0) không? Các tham số có bền vững với thay đổi không? Kiểm tra tiến đã vượt qua chưa?
Sáu câu trả lời “có” — cơ sở cho khởi chạy thận trọng với vị thế tối thiểu. Ít hơn sáu — lý do để hoàn thiện chiến lược.
