Mục lục bài viết
- Bằng chứng và phạm vi
- Hình minh họa
- Quy trình
- Squeeze mô tả biến động
- Tính dải và percentile không nhìn trước
- Ví dụ co hẹp và phá vỡ giả
- Vào theo mở rộng, thoát theo một kế hoạch
- Thêm volume mà không thêm trùng thông tin
- Cách tách lợi thế squeeze khỏi breakout
- Sai lầm thường gặp
- Checklist thực hành
- Câu hỏi thường gặp
- Nguồn nghiên cứu
Bằng chứng và phạm vi
Nguồn của John Bollinger xác nhận công thức và mô tả Squeeze. Phiên bản percentile, buffer và TTL dưới đây là đề xuất nghiên cứu, không phải báo cáo lợi nhuận từ sách.
Quy trình thực hành
- Tính dải quá khứCố định lookback và population sigma.
- Đánh giá độ hẹpSo BW với percentile lịch sử trước nó.
- Chốt candidateGiữ U,L,ATR và thời hạn.
- Chờ hướng giáClose phá biên cộng buffer.
- Kiểm định tăng thêmSo với breakout không cần squeeze.
Squeeze mô tả biến động
John Bollinger mô tả dải dùng trung bình và độ lệch chuẩn population, với mặc định20 kỳ và2 độ lệch chuẩn [1]. Trang Methods gọi ứng dụng volatility breakout là Squeeze [2]. Đây là cơ sở để chuẩn hóa thuật ngữ; không có tỷ lệ thắng được kiểm toán cho bộ quy tắc bài này.
Sự co hẹp không mã hóa hướng. Giá có thể phá lên, phá xuống hoặc tiếp tục yên lặng. Vì vậy mua ngay khi BandWidth thấp và mua khi breakout khỏi squeeze là hai chiến lược khác nhau. Baseline đề xuất ở đây chỉ giao dịch sau close phá biên đã chốt.
Tính dải và percentile không nhìn trước
Với20 close đến t−1, mu=mean, sigma=sqrt(mean((C−mu)²)), U=mu+2sigma, L=mu−2sigma, BW=(U−L)/mu. Đề xuất squeeze nếu BW[t−1]≤percentile20 của100 BW trước đó, từ t−101 đến t−2. Dùng nearest-rank hoặc nội suy cố định;20% và100 là tham số nghiên cứu.
Khi squeeze lần đầu đạt, chốt U,L,ATR_ref và candidate có TTL5 nến. Các squeeze liên tiếp không reset thời hạn. Trigger tăng khi close vượt U+buffer; giảm đối xứng. Bài này dùng dải chốt trước trigger; so với dải cập nhật chứa chính close trigger là một biến thể khác.
if no_candidate and BW[t-1] <= quantile(BW[t-101:t-1], 0.20):
candidate = freeze(U[t-1], L[t-1], ATR[t-1], expires=t+4)
if candidate:
b = max(2*tick, 0.1*candidate.ATR)
if t > candidate.expires: expire()
elif C[t] > candidate.upper+b: emit_long(t)
elif C[t] < candidate.lower-b: emit_short(t)
# At most one signal per candidate; orders follow the close.
Ví dụ co hẹp và phá vỡ giả
Ví dụ tổng hợp mu=100, sigma=0,5 cho U101,L99,BW2%. Giả sử percentile quá khứ=2,4%, nên squeeze đạt. Với buffer0,1, close101,3 tạo long. Entry101,4 và stop98,9 cho risk2,5; target2R=106,4 là một nhánh thành công giả định nếu được chạm trước stop.
Nhánh thất bại: sau entry101,4, giá quay vào vùng100 rồi rơi98,8. Squeeze và breakout đều từng đúng, nhưng lệnh vẫn thua. Nếu close chỉ100,9 thì chưa có trigger, dù high đã vượt101,5. Không đổi qua stop-entry sau khi thấy một cú chạy mà baseline close đã bỏ lỡ.
Một lỗi số học thường gặp là dùng sample sigma với mẫu số19 thay vì population20. Dải sẽ khác dù dữ liệu giống nhau, đặc biệt sát ngưỡng. Đây không hẳn là sai về thống kê, nhưng là phiên bản khác cần ghi rõ khi đối chiếu nền tảng.
Vào theo mở rộng, thoát theo một kế hoạch
Baseline đề xuất next open, stop phía đối diện vùng chốt và time exit20 nến. Target2R có thể được thay bởi trailing stop trong thử nghiệm riêng. Nếu nến gap quá xa khiến risk vượt giới hạn, chỉ bỏ trước khi gửi lệnh theo quy tắc đã đăng ký; fill đã xảy ra vẫn phải giữ.
Quy tắc của Bollinger nhấn mạnh chạm dải không tự là tín hiệu và giá có thể đi dọc dải trong xu hướng [3]. Vì vậy không vừa mua breakout vừa tự short chỉ vì chạm upper band mà chưa định nghĩa trạng thái. Mean reversion từ band là một giả thuyết khác, cần bối cảnh và thống kê khác.
Thêm volume mà không thêm trùng thông tin
Một thử nghiệm trực tiếp là RVOL breakout≥1,5, với volume baseline cùng giờ hoặc median20 phiên cho daily. Một thử nghiệm khác dùng volume suy giảm trong squeeze. Hai ngưỡng chỉ là thiết kế; hãy đo từng feature riêng trước khi kết hợp.
Nguồn tác giả khuyến khích chọn chỉ báo khác loại thay vì lặp cùng động lượng [3]. Trong triển khai, volume vẫn có thể tương quan mạnh với range; cần đối chứng cùng mức biến động. Squeeze ở mã ít giao dịch có thể chỉ là giá đứng do thiếu thanh khoản, nên spread và dollar volume tối thiểu là dữ liệu thiết yếu.
Cách tách lợi thế squeeze khỏi breakout
So breakout giá thuần, breakout sau squeeze và breakout sau squeeze cộng volume. Dùng cùng universe, risk và chi phí. Báo tỷ lệ squeeze không trigger, thời gian nắm giữ, số lần whipsaw và expectancy sau phí. Không chỉ báo kết quả của các lần mở rộng thật lớn.
Kiểm thử zero sigma, mean gần zero, cửa sổ warmup, percentile hòa, nhiều squeeze liền nhau và nến xuyên cả hai phía. Tài liệu tác giả cũng không cho phép coi ±2sigma là cam kết bao phủ95% giá [3]; đó không phải khoảng tin cậy cho lệnh kế tiếp.
Sai lầm thường gặp
Đoán hướng từ dải hẹp
Co hẹp chỉ nói về dispersion quá khứ, không xác định chiều breakout.
Trộn dải t và t−1
Hai cách tạo tập signal khác nhau; log cần ghi band_used.
Squeeze từ mã không giao dịch
Biên hẹp có thể đi kèm spread quá rộng để thực thi.
Checklist trước khi dùng phương pháp
Tự đánh dấu khi đã kiểm tra trên dữ liệu của bạn. Trạng thái lưu trong trình duyệt này; đây không phải chứng nhận chiến lược có lãi.
Câu hỏi thường gặp
Có giống Bollinger nằm trong Keltner không?
Không hoàn toàn. Đó là định nghĩa squeeze khác với percentile BandWidth, cần tên phiên bản và kiểm định riêng.
Phá dải rồi quay vào có phải short ngay?
Chỉ nếu đã thiết kế chiến lược failed breakout. Baseline long trước đó vẫn phải được xử lý theo stop của nó.
Nguồn nghiên cứu
Các nguồn dưới đây hỗ trợ phần định nghĩa hoặc bằng chứng được ghi bên cạnh. Mã giả, ví dụ minh họa và tham số đề xuất trong bài cần được kiểm định riêng.
- A complete explanation of Bollinger BandsJohn Bollinger. Đã đọc giải thích công thức chính thức; chưa đọc toàn sách trả phí. Đối chiếu: .
- Methods ExplanationBollinger Bands. Đã đọc tổng quan Method I–IV; không suy ra kết quả backtest. Đối chiếu: .
- Bollinger Bands RulesJohn Bollinger. Đã đọc quy tắc về band tags, kết hợp indicator và giới hạn thống kê. Đối chiếu: .
Đọc tiếp theo phương pháp
Lưu ý rủi ro
Nội dung phục vụ giáo dục và thiết kế nghiên cứu, không phải lời khuyên tài chính. Backtest là mô phỏng lịch sử, không bảo đảm hiệu quả tương lai và không đặt lệnh giao dịch thật. Các phương pháp trong thư viện không mặc nhiên là tính năng đã có trong ứng dụng. Xem phương pháp tính và trung tâm học.
Kiểm tra quy tắc trước khi dùng vốn thật
Đối chiếu khả năng hỗ trợ của ứng dụng, dữ liệu và từng giao dịch mô phỏng; các detector nâng cao có thể cần triển khai riêng.
Tải Backtest trên App Store