Cắt lỗ 7% có bảo vệ tài khoản không? Thử trên 94 mã VN100 và cách đọc kết quả backtest

2026· Tác giả Bùi Văn Cường
Cắt lỗ 7% có bảo vệ tài khoản không? Thử trên 94 mã VN100 và cách đọc kết quả backtest — Tâm An Stock

Bài này thuộc trục Định lượng trực quan: nhìn thị trường Việt Nam bằng số liệu thật, ghi rõ kỳ đo và nguồn (Tâm An Stock). Bài mô tả phép đo và cách đọc đúng, không phải khuyến nghị đầu tư.

Câu trả lời ngắn

Trong mẫu lịch sử gồm 8.055 lệnh giả định trên 94 mã VN100 (mua từ 02/11/2018 đến 02/07/2026, giữ tối đa 60 phiên, đã trừ phí và thuế 0,4 điểm %), quy tắc cắt lỗ cố định làm đuôi lỗ ngắn lại và làm lãi trung bình thấp hơn khoảng 1,1 điểm %. Ở ngưỡng 7%, 5% lệnh tệ nhất lỗ từ 14,1% trở lên, so với 25,0% nếu giữ nguyên; lệnh lỗ sâu hơn 15% giảm từ 13,5% xuống 3,3%; lãi trung bình giảm từ 3,42% xuống 2,36%. Có 51,9% số lệnh bị cắt, trong đó 24,4% có giá đóng cửa phiên 60 cao hơn giá mua.

Kết quả đổi theo giai đoạn thị trường, và chênh lệch trung bình −1,06 điểm % có sai số chuẩn 0,59 điểm %, nên bài không kết luận ý nghĩa thống kê. Bài chỉ mô tả mẫu lịch sử, không khuyên dùng hay bỏ cắt lỗ và không phải khuyến nghị. Số liệu đến 15/10/2026, nguồn Tâm An Stock; video đi kèm có trên kênh @TAMANCHUNGKHOAN.

Phân bố kết quả 8.055 lệnh giả định: giữ nguyên so với cắt lỗ 7%

Cột xanh: giữ đủ 60 phiên; cột cam: cắt lỗ 7%. Vạch nét đứt: phân vị 5% (5% lệnh tệ nhất lỗ từ mức đó trở lên).

Quy tắc cắt lỗ cố định và cách thử

Cắt lỗ cố định là đặt trước một mức, ví dụ −7% so với giá mua, và bán khi giá chạm mức đó. Phép thử hỏi: quy tắc này đổi phân phối kết quả của một lệnh ra sao so với giữ đến hết kỳ?

  1. Mẫu. VN100 hiện hành, giữ mã có ít nhất 750 phiên dữ liệu: còn 94 mã. Giá mở và đóng cửa điều chỉnh hằng ngày, 17/10/2018 đến 15/10/2026.
  2. Điểm vào giả định. Mỗi mã, phiên đầu tiên của mỗi tháng (theo lịch VN-Index) là phiên tín hiệu; mua ở giá mở cửa phiên kế tiếp. Điểm vào không dựa trên nhận định nào.
  3. Cách A (giữ nguyên). Bán ở giá đóng cửa phiên 60.
  4. Cách B (cắt lỗ X%, X = 5, 7, 10, 15). Nếu giá đóng cửa phiên k (k từ 1 đến 59) chạm hoặc thấp hơn giá mua × (1 − X%), bán ở giá mở cửa phiên k + 1, nhưng không sớm hơn phiên 3 để xấp xỉ quy định mua ngày T chỉ bán được từ T+2. Không chạm ngưỡng thì giống cách A.
  5. Chi phí. Trừ 0,4 điểm % mỗi lượt mua rồi bán (phí môi giới khoảng 0,15% × 2 cộng thuế bán 0,1%) cho cả hai cách; không tính trượt giá.

Từ 8.742 cặp mã–tháng đủ 60 phiên phía sau, phép thử loại 281 cặp thiếu phiên so với lịch VN-Index, 23 cặp có phiên vào lệnh khối lượng 0 và 383 cặp có ngày biến động vượt 7,5% (nghi chưa điều chỉnh sự kiện). Còn 8.055 lệnh trong 93 tháng.

Hai lệnh FPT chỉ minh hoạ cách tính (lợi suất gộp, chưa trừ phí, ngược chiều nhau, không đại diện kết quả chung). Mua 06/01/2026 ở 84,92: giá đóng cửa chạm ngưỡng 7% ở phiên 36, bán ở giá mở cửa phiên 37 là 77,93 (−8,23%); giữ đủ 60 phiên thì đóng cửa 66,27 (−21,96%). Mua 02/07/2026 ở 66,27: chạm ngưỡng ở phiên 10, bán ở phiên 11 giá 60,64 (−8,50%); giữ đủ 60 phiên thì đóng cửa 63,70 (−3,88%). Hai lệnh ngược chiều nhau và không đại diện kết quả chung.

Kết quả theo bốn ngưỡng 5, 7, 10, 15%

Lợi suất ròng sau phí, trên cùng 8.055 lệnh:

Chỉ tiêu Giữ nguyên Cắt 5% Cắt 7% Cắt 10% Cắt 15%
Trung bình (%) 3,42 2,31 2,36 2,29 2,35
Trung vị (%) 0,38 −5,45 −6,42 −3,18 −0,95
Lệnh lãi (%) 51,0 33,8 38,7 43,4 47,3
5% lệnh tệ nhất lỗ từ (%) 25,02 12,05 14,08 17,19 20,88
Lệnh tệ nhất lỗ (%) 83,3 18,8 19,9 22,5 26,6
Lệnh lỗ sâu hơn 10% (%) 22,3 8,9 16,6 37,3 31,4
Lệnh lỗ sâu hơn 15% (%) 13,5 1,4 3,3 8,6 24,3
Lệnh bị cắt (%) 0 61,2 51,9 41,0 27,0

Ngưỡng càng chặt thì đuôi lỗ càng ngắn: lệnh tệ nhất lỗ 83,3% khi giữ nguyên, còn 18,8% đến 26,6% khi cắt. Lãi trung bình thấp hơn giữ nguyên ở cả bốn ngưỡng, quanh 1,1 điểm % và gần như không đổi theo ngưỡng. Trung vị và tỉ lệ lệnh lãi cũng thấp hơn: lệnh "điển hình" kết thúc kém hơn, còn các lệnh tăng rất mạnh kéo trung bình của cách giữ nguyên lên.

Một chi tiết dễ bỏ qua: ở ngưỡng 10% và 15%, tỉ lệ lệnh lỗ sâu hơn chính ngưỡng đó cao hơn khi giữ nguyên. Lệnh bán ở giá mở cửa phiên sau và bị trừ 0,4 điểm % phí, nên phần lớn lệnh bị cắt dừng ở mức lỗ lớn hơn ngưỡng; ở ngưỡng 7%, lệnh bị cắt có lợi suất ròng trung vị −8,73%, không phải −7%.

Bốn ngưỡng cắt lỗ 5, 7, 10 và 15%: đuôi lỗ, lãi trung bình, tỉ lệ bị cắt

Số thật từ 8.055 lệnh giả định đến 15/10/2026; chênh lệch kèm sai số chuẩn theo cụm tháng.

Bị cắt rồi, giá đi thế nào?

Với lệnh bị cắt, phép thử biết thêm điều xảy ra nếu giữ tiếp đến phiên 60:

Ngưỡng Số lệnh bị cắt Giá phiên 60 trên giá mua Giữ tiếp tốt hơn mức bán, vẫn không lãi Giữ tiếp lỗ sâu hơn mức bán
5% 4.931 29,1% 23,7% 47,2%
7% 4.184 24,4% 30,4% 45,3%
10% 3.303 19,0% 38,1% 42,8%
15% 2.172 14,0% 48,3% 37,7%

Ở ngưỡng 7%, trong 4.184 lệnh bị cắt có 1.894 lệnh (45,3%) mà giữ tiếp thì lỗ sâu hơn, và 2.290 lệnh (54,7%) mà giữ tiếp cho kết quả tốt hơn hoặc bằng mức đã bán. Cả hai nhóm đều lớn, nên không thể nói "cắt thường đúng" hay "cắt thường sai"; đây là cách nhìn lại với mốc 60 phiên cố định, lúc bán không ai biết lệnh rơi vào nhóm nào.

Toàn bộ chênh lệch trung bình đến từ nhóm bị cắt: ở ngưỡng 7%, nhóm này có kết quả trung bình −7,53% nếu giữ nguyên và −9,58% nếu cắt, còn 3.871 lệnh không chạm ngưỡng giống hệt nhau ở hai cách.

Kết quả theo giai đoạn thị trường (chỉ nhìn lại)

Mỗi lệnh được xếp theo VN-Index từ đóng cửa trước ngày vào lệnh đến đóng cửa phiên 60. Cách chia này chỉ có sau khi kỳ giữ kết thúc, không phải điều biết trước. Ký hiệu: TB là trung bình, p5 là mức mà 5% lệnh tệ nhất lỗ từ đó trở lên.

Giai đoạn Số lệnh Giữ nguyên TB (%) Cắt 7% TB (%) Bị cắt (%) Giữ nguyên p5 (%) Cắt 7% p5 (%)
VN-Index giảm hơn 5% 1.375 −12,7 −6,3 81 −42,2 −14,8
VN-Index đi ngang (±5%) 4.083 1,3 −1,4 57 −19,1 −14,7
VN-Index tăng hơn 5% 2.597 15,3 12,8 29 −13,3 −11,1

Ở kỳ giảm, cắt lỗ có kết quả trung bình cao hơn giữ nguyên 6,4 điểm %; ở kỳ đi ngang thấp hơn 2,7 và ở kỳ tăng thấp hơn 2,5 điểm %. Trung bình có trọng số theo số lệnh của ba mức chênh này đúng bằng −1,06: con số tổng hợp là kết quả pha trộn của các giai đoạn rất khác nhau.

Kết quả trung bình theo giai đoạn thị trường: giữ nguyên so với cắt lỗ 7%

Chia theo VN-Index nhìn lại; số lệnh và tỉ lệ bị cắt ghi dưới từng nhóm.

Sai số chuẩn: vì sao bài không kết luận ý nghĩa thống kê

Chênh lệch trung bình giữa hai cách (cắt lỗ trừ giữ nguyên) có sai số chuẩn tính theo cụm tháng vào lệnh (93 cụm), vì các lệnh cùng tháng cùng chịu một thị trường:

Ngưỡng Chênh lệch TB (điểm %) Sai số chuẩn Khoảng ±1,96 sai số chuẩn
5% −1,11 0,65 −2,39 đến 0,17
7% −1,06 0,59 −2,22 đến 0,10
10% −1,13 0,53 −2,18 đến −0,09
15% −1,07 0,45 −1,96 đến −0,18

Ở 5% và 7% khoảng này chứa 0; ở 10% và 15% thì không. Dù vậy bài không rút ra kết luận về ý nghĩa thống kê, vì ba lý do. Bốn ngưỡng dùng chung một tập lệnh nên không phải bốn bằng chứng độc lập. Các tháng liền nhau vẫn chồng kỳ giữ, nên sai số chuẩn theo cụm tháng có thể chưa phản ánh hết mức phụ thuộc. Và sai số chuẩn không đo sai lệch nằm trong cách chọn mẫu (sống sót, điểm vào giả định). Cách đọc an toàn: mức chênh quanh −1,1 điểm % là kết quả của mẫu này, với độ không chắc chắn cỡ một nửa chính nó.

Độ nhạy: đổi thiết kế thì kết quả đổi ra sao

Phép thử được chạy lại với biến thể (không dùng trong video; bài không tính sai số chuẩn cho chúng):

Biến thể Số lệnh Giữ nguyên: TB / p5 Cắt 7%: TB / p5 / bị cắt Chênh TB ở ngưỡng 5 / 7 / 10 / 15%
Giữ tối đa 120 phiên 7.635 9,2 / −32,2 5,0 / −14,8 / 63% −4,5 / −4,2 / −3,8 / −3,0
Bỏ lệnh vào năm 2022 6.992 5,3 / −20,3 3,6 / −13,7 / 48% −1,9 / −1,7 / −1,5 / −1,3

Bỏ ràng buộc bán từ phiên 3 (T+2) gần như không đổi kết quả (vẫn 8.055 lệnh, chênh quanh −1,1). Cả ba biến thể cùng chiều với phép thử gốc: đuôi lỗ ngắn hơn, lãi trung bình thấp hơn. Nhưng độ lớn mức chênh không cố định: 1,1 điểm % ở kỳ 60 phiên, 3,0 đến 4,5 ở kỳ 120 phiên, 1,3 đến 1,9 khi bỏ năm 2022. Con số "1,1 điểm" gắn với thiết kế này, không phải hằng số của việc cắt lỗ.

Cách đọc đúng và các lỗi đọc sai thường gặp

  1. Coi mẫu backtest là chiến lược thật. Điểm vào đầu tháng là giả định cho mọi mã; người đầu tư thật có điểm vào và cách chia vốn khác. Phép thử đo một quy tắc bán, không phải kết quả của một tài khoản.
  2. Bỏ qua sai lệch sống sót. Danh sách là VN100 hiện hành, nên mã từng rời rổ hoặc huỷ niêm yết không có mặt; bài không đo độ lớn sai lệch này.
  3. Quên trượt giá và khoá sàn. Giá bán giả định là giá mở cửa phiên sau; thực tế lệnh có thể khớp ở mức khác hoặc không khớp. Có 12, 11, 12 và 19 lệnh bán đúng ở giá sàn (ngưỡng 5, 7, 10, 15%), khoảng 0,1 đến 0,2% số lệnh, và phép thử không mô hình hoá việc khó bán đó.
  4. Đếm lệnh như quan sát độc lập. Hai lệnh cùng mã ở tháng liền nhau chồng lên khoảng 2/3 kỳ giữ, và các mã cùng tháng chịu chung thị trường; 8.055 lệnh chứa ít thông tin độc lập hơn con số đó.
  5. Đọc "cắt rồi giá hồi lại" như bằng chứng cắt sai (hoặc đúng), hay chỉ nhìn trung bình. Nhóm giá hồi và giai đoạn thị trường chỉ xác định được sau 60 phiên; trung bình của cách giữ nguyên chịu ảnh hưởng của các lệnh tăng mạnh nên cần đọc cùng trung vị và đuôi lỗ.

Giới hạn của phép đo

  • Chỉ mô tả mẫu lịch sử 11/2018 đến 07/2026, kỳ giữ tối đa 60 phiên; không dự báo, quá khứ không đảm bảo tương lai.
  • Cắt lỗ chỉ xét giá đóng cửa, không xét giá thấp nhất trong phiên; T+2 được xấp xỉ bằng giá mở cửa phiên 3.
  • Giá điều chỉnh có thể đổi hồi tố theo nguồn; phép thử không tự kiểm từng sự kiện. 383 cặp bị loại vì ngày vượt biên có thể gồm sự kiện hợp lệ ở mã từng niêm yết trên sàn có biên rộng hơn. Phí và thuế lấy chung 0,4 điểm % cho mọi lệnh.

Cách tự kiểm lại bằng bảng tính

  1. Tải giá mở và đóng cửa điều chỉnh của một mã. Lấy phiên đầu tháng làm phiên tín hiệu; phiên kế tiếp là phiên 1; lấy 60 dòng từ phiên 1 đến 60.
  2. Giá mua P0 = giá mở cửa phiên 1. Ngưỡng = P0 × (1 − 0,07).
  3. Phiên chạm k = vị trí đầu tiên trong phiên 1 đến 59 có giá đóng cửa ≤ ngưỡng, ví dụ =MATCH(TRUE, INDEX(Dong_1_59<=Nguong, 0), 0). Phiên bán s = MAX(k + 1; 3); giá bán = giá mở cửa phiên s. Không có k thì giá bán = giá đóng cửa phiên 60.
  4. Cách B = (giá bán / P0 − 1) × 100 − 0,4. Cách A = (đóng cửa phiên 60 / P0 − 1) × 100 − 0,4.
  5. Lặp cho nhiều tháng và mã, rồi tính AVERAGE, MEDIAN, PERCENTILE.INC(vùng; 0,05) (nội suy tuyến tính) và tỉ lệ lệnh lãi COUNTIF(vùng; ">0") / COUNT(vùng).
  6. Chênh lệch d = B − A, D = trung bình d. Với mỗi tháng m, cộng các (d − D) của lệnh vào tháng đó thành S_m. Sai số chuẩn theo cụm tháng = căn bậc hai của tổng các S_m bình phương, chia cho số lệnh.

Kiểm nhanh bằng lệnh FPT mua 06/01/2026: ngưỡng 7% của giá mua 84,92 là 78,98; bán ở 77,93 cho −8,23% và giá đóng cửa phiên 60 là 66,27 cho −21,96% (chưa trừ phí). Bảng tính ra đúng các số này là công thức đã khớp phép thử.

Xem video

Video đi kèm trên kênh YouTube @TAMANCHUNGKHOAN (danh sách Định Lượng Trực Quan) trình bày cùng mẫu bằng đồ hoạ 3D.

Căn cứ và số liệu

Số liệu đến 15/10/2026. Nguồn: Tâm An Stock.

  • Giá mở và đóng cửa điều chỉnh hằng ngày của VN100 hiện hành và VN-Index, 17/10/2018 đến 15/10/2026; 94 mã, 8.055 lệnh, 93 tháng vào lệnh. Thống kê tính từ bảng lệnh bằng ba cách độc lập (pandas, vòng lặp Python thuần, TypeScript), trùng từng lệnh.
  • Phân rã nhóm bị cắt và hiệu số ở bảng độ nhạy: Tâm An tính lại từ bảng lệnh.
  • Nội dung giáo dục, chỉ mô tả kết quả lịch sử của một phép thử; không phải khuyến nghị mua, bán hay nắm giữ.

Tra cứu thêm

Muốn xem độ nhạy của từng mã VN100 với VN-Index, dùng công cụ Tra cứu beta.

Đọc thêm

Trong mẫu lịch sử 8.055 lệnh giả định trên 94 mã VN100 (11/2018–07/2026, tối đa 60 phiên, đã trừ phí và thuế 0,4 điểm %), cắt lỗ cố định làm đuôi lỗ ngắn lại (ngưỡng 7%: 5% lệnh tệ nhất lỗ từ 14,1% thay vì 25,0%) và làm lãi trung bình thấp hơn khoảng 1,1 điểm %; mức chênh có sai số chuẩn 0,45 đến 0,65 điểm % nên bài không kết luận ý nghĩa thống kê. Kết quả đổi theo giai đoạn thị trường, kỳ giữ và thiết kế phép thử, và còn các giới hạn về sai lệch sống sót, trượt giá, khoá sàn, lệnh chồng lấn. Bài chỉ mô tả số đo từ nguồn Tâm An Stock (đến 15/10/2026), không khuyên dùng hay bỏ cắt lỗ và không phải khuyến nghị.

Nội dung mang tính giáo dục, không phải khuyến nghị mua, bán hay nắm giữ, không định giá và không dự báo. Số liệu là phép đo trên dữ liệu quá khứ, đổi theo mã, kỳ và khung đo; quá khứ không đảm bảo tương lai.

Mã QR tham gia nhóm Zalo Chứng khoán Tâm An

Cộng đồng Zalo

Tham gia nhóm Chứng khoán Tâm An

Cùng thảo luận tín hiệu, cập nhật chiến lược theo tháng và học Price Action mỗi ngày.

Góc nhìn Price Action · Trong 5 phút

Add Zalo Admin, nhắn ngay mã cổ phiếu bạn quan tâm — nhận góc nhìn Price Action trong 5 phút

Diễn biến giá thay đổi theo từng phiên, không có sẵn trong bài viết tĩnh. Add Zalo của Admin và nhắn ngay mã cổ phiếu bạn quan tâm, Admin sẽ gửi lại góc nhìn Hành động giá (Price Action) cho mã đó trong vòng 5 phút.

Bùi Văn Cường
Nhà phân tích kỹ thuật — xem thêm

Bài viết mới nhất

Khoá Đào Tạo và Dịch VụVào room Zalo cộng đồng