Dải Bollinger đặt một dải biên trên và biên dưới theo mức biến động quanh một đường trung bình động. Chúng mô tả giá so với một cửa sổ gần đây; việc giá chạm dải không cho biết giá sẽ đi đâu tiếp theo. Cùng một dải có thể là khuôn khổ cho giả thuyết tiếp diễn hoặc giả thuyết quay về giữa, nên hãy viết quy tắc trước khi kiểm thử bất kỳ giả thuyết nào.
Tính các dải bạn định dùng
Với phiên bản dùng trung bình động đơn giản, hãy viết đường giữa là giá trị trung bình của chuỗi giá đã chọn trong một độ dài cố định. Dải trên là đường giữa cộng một bội số đã chọn của độ lệch chuẩn; dải dưới trừ đi đúng khoảng cách đó. Hãy nêu rõ đầu vào giá, loại trung bình, độ dài hồi nhìn, quy ước độ lệch chuẩn, bội số, và việc có tính nến đang hoạt động hay không. “Hai mươi và hai” là các giá trị mặc định thông thường, không phải tối ưu phổ quát.
Đây là một phép tính hư cấu với năm giá đóng cửa 98, 99, 100, 101 và 102, dùng độ lệch chuẩn tổng thể cho ví dụ này. Trung bình đơn giản là 100. Độ lệch so với trung bình là −2, −1, 0, 1 và 2, nên trung bình bình phương độ lệch là (4 + 1 + 0 + 1 + 4) ÷ 5 = 2. Độ lệch chuẩn là √2, khoảng 1.414. Với bội số 2, các dải minh họa là 100 ± 2.828: dải dưới 97.17 và dải trên 102.83. Giá đóng cửa mới nhất ở 102 nằm gần dải trên nhưng vẫn ở trong dải. Riêng quan sát đó không xác định lệnh nào.
Các nền tảng có thể khác nhau về loại đường giữa, nguồn giá, độ dời và cách xử lý giai đoạn khởi động. TradingView có tài liệu về các đầu vào Bollinger có thể điều chỉnh và thiết lập phổ biến là SMA cộng hoặc trừ hai độ lệch chuẩn. Hãy tự tính lại vài dòng dữ liệu bằng tay và so sánh giá trị trước khi cho rằng một cách triển khai khác khớp với nó. Nếu cửa sổ chưa đầy đủ, hãy giữ giá trị thiếu thay vì điền số 0.
Đọc vị trí và độ rộng dải như các phép đo
Hai giá trị dẫn xuất phổ biến trả lời hai câu hỏi mô tả khác nhau. %B = (close − lower band) ÷ (upper band − lower band) đặt giá đóng cửa tương quan với dải hiện tại; nó có thể dưới 0 hoặc trên 1 khi giá nằm ngoài dải. BandWidth là (upper − lower) ÷ basis × 100%, một phép đo độ rộng dải hiện tại đã chuẩn hóa. Trong ví dụ hư cấu, giá đóng cửa 102 cho %B ≈ 0.854 và BandWidth ≈ 5.66%. Không con số nào tự nó là xác suất, dự báo hay hướng đi. Người tạo ra chỉ báo mô tả %B là vị trí tương đối và BandWidth là độ rộng đã chuẩn hóa; thiết lập hai độ lệch chuẩn thông thường không biến giá thành một sự kiện 95% phân phối chuẩn.
Quy ước tính toán quan trọng ngay cả với một ví dụ nhỏ. Năm giá đóng cửa có tổng bình phương độ lệch là 10. Chia cho 5 cho phương sai tổng thể 2 và các dải như trên. Chia cho 4 cho phương sai mẫu 2.5, độ lệch chuẩn khoảng 1.581, và các dải khoảng 96.84 và 103.16; khi đó cùng giá đóng cửa có %B khoảng 0.816 và BandWidth khoảng 6.32%. Hãy ghi lại quy ước độ lệch chuẩn thực tế của nền tảng và kiểm chứng kết quả thay vì cho rằng các cách triển khai đồng nhất. TradingView cung cấp các đầu vào dải như nguồn giá và loại đường giữa, còn tài liệu tham chiếu của Pine có mô tả các hàm độ lệch chuẩn và tùy chọn ước lượng (estimate) của chúng.
Với một giả thuyết squeeze, hãy định nghĩa “hẹp” từ một cửa sổ huấn luyện lịch sử — ví dụ, dưới một phân vị BandWidth đã chọn — và cố định ngưỡng đó trước khi đánh giá dữ liệu về sau. Một dải hẹp mô tả sự nén theo quy tắc đã chọn; nó không xác định hướng phá vỡ (breakout). Hãy kiểm thử quy tắc tiếp diễn sau nén tách biệt với bất kỳ quy tắc đảo chiều nào, bao gồm cả các lần mở rộng yên ắng và thất bại, và tính đến yếu tố chọn lọc khi đã thử nhiều độ dài hoặc phân vị.
Tách nến tín hiệu khỏi lệnh khớp được mô hình hóa
Với quy tắc dựa trên giá đóng cửa, giá trị cuối cùng của một nến chưa có khi nến đó còn đang hình thành. Một bài kiểm thử có thể tái lập nêu rõ dải của nó chỉ dùng các giá đóng cửa trước đó hay có tính cả giá đóng cửa vừa hoàn tất, rồi ghi tín hiệu tại thời điểm đầu tiên mọi đầu vào đều đã biết. Lựa chọn đó có thể thay đổi cả ngưỡng lẫn mốc thời gian của quyết định.
Tài liệu về chiến lược Pine Script của TradingView mô tả một mặc định riêng của nền tảng: một chiến lược tính toán sau khi một nến lịch sử đóng cửa rồi tạo lệnh thị trường tại thời điểm đó thường mô hình hóa lần khớp sớm nhất ở tick khả dụng kế tiếp, thường là giá mở cửa của nến kế tiếp. Một cài đặt có thể thay đổi hành vi đó. Đây là quy ước của trình mô phỏng, không phải phát biểu về mọi engine backtest (kiểm thử lịch sử) hay về cách khớp lệnh thực tế của sàn. Một lệnh giới hạn thực tế có thể không khớp, một lệnh thị trường có thể quét xuyên sổ lệnh, và phí cùng trượt giá vẫn tách biệt với giá trị chỉ báo.
Ví dụ, hãy viết quy tắc như sau: “Tại giá đóng cửa đã xác nhận của nến t, so sánh giá đóng cửa đó với dải trên tính từ 20 giá đóng cửa đã hoàn tất trước đó. Nếu cao hơn, ghi nhận một quan sát phá vỡ (breakout); mô hình hóa một điểm vào lệnh thị trường không sớm hơn sự kiện khả dụng kế tiếp.” Một quy tắc khác có thể tính cả nến t vào phép tính dải hoặc dùng điều kiện vào lại. Cả hai đều kiểm thử được, nhưng chọn phiên bản nào trông tốt nhất sau khi xem kết quả lại là một lần tìm kiếm chiến lược khác. Hãy cố định một phiên bản, nêu rõ giả định khớp lệnh và tính lại phép toán trước khi so sánh kết quả.
Kiểm thử hai cách đọc như hai quy tắc riêng
Một bài kiểm thử hồi quy về trung bình có thể yêu cầu một giá đóng cửa đã hoàn tất dưới dải dưới, rồi chờ một điều kiện vào lại được định nghĩa riêng trước khi ghi nhận một vị thế long giả định. Hãy nêu rõ điều kiện thoát, điều kiện vô hiệu, thời gian nắm giữ tối đa và việc chiến lược có được phép tăng thêm vị thế hay không. Trường hợp thất bại là một đợt di chuyển kéo dài đi xa hơn xuống dưới dải hoặc một lần quay lại chỉ đến sau khi chi phí mô hình hóa lấn át kết quả.
Một bài kiểm thử tiếp diễn có thể coi một giá đóng cửa đã hoàn tất trên dải trên là quan sát phá vỡ (breakout) ban đầu và đánh giá một điểm vào lệnh về sau dưới một giới hạn rủi ro đã công bố. Hãy định nghĩa điều kiện thất bại, chẳng hạn một giá đóng cửa sau đó quay lại trong dải. Giữ bài kiểm thử này tách biệt với bài kiểm thử hồi quy: chúng dùng giả thuyết, thời điểm vào lệnh và trường hợp thất bại khác nhau. Nếu bạn thử nhiều cài đặt hoặc cách diễn giải, hãy lưu lại toàn bộ quá trình tìm kiếm thay vì chỉ công bố tổ hợp tốt nhất.
Người tạo ra chỉ báo lưu ý rằng việc giá chạm dải tự nó không phải tín hiệu, rằng giá có thể bám dải trong một xu hướng, và rằng một giá đóng cửa nằm ngoài dải ban đầu thuộc về cách diễn giải tiếp diễn. Hướng dẫn đó cũng cảnh báo người đọc không nên coi hai độ lệch chuẩn là một ranh giới 95% phân phối chuẩn; với các cài đặt phổ biến, mức bao phủ quan sát điển hình có thể gần 90% hơn là 95%. Đó là những lưu ý về phương pháp, không phải bằng chứng rằng quy tắc crypto nào trong hai quy tắc là sinh lời.
Tạo một so sánh công bằng
Dùng các cửa sổ theo trình tự thời gian và một nguồn giá đã công bố. Ghi lại tham số dải, thời điểm nến đã hoàn tất, số lệnh, thời gian nắm giữ, mức sụt giảm (drawdown) và chi phí. Bao gồm chênh lệch giá, phí, trượt giá và funding khi công cụ được mô hình hóa là hợp đồng vĩnh cửu. So sánh mỗi quy tắc với một đường cơ sở đơn giản trên cùng thị trường, và báo cáo cả các giai đoạn thua lỗ lẫn kết quả của các tham số lân cận. Không chọn một cửa sổ sau khi đã quét nhiều phương án rồi trình bày nó như một đánh giá chưa từng chạm tới.
Các ví dụ chiến lược công khai của SuperQuant không bao gồm công cụ dựng quy tắc Bollinger tùy ý. Bài viết không cam kết rằng ứng dụng có thể chạy một trong hai thiết lập tùy chỉnh này, và các chuỗi dữ liệu theo giờ đi kèm của ứng dụng là dữ liệu tổng hợp. Hãy đọc hồi quy về trung bình, nghiên cứu phá vỡ (breakout) và overfitting trong backtest. Đây là nội dung mang tính giáo dục và nghiên cứu, không phải tín hiệu hay lời khuyên tài chính.