Mục lục bài viết
- Bằng chứng và phạm vi
- Hình minh họa
- Quy trình
- BOS cần xu hướng đã biết trước
- Snapshot cấu trúc trước nến kiểm tra
- Displacement và volume là hai nhóm feature
- Ví dụ tiếp diễn đạt trigger và whipsaw
- Không có retest thì không có entry retest
- BOS có thêm thông tin ngoài trend không
- 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
SMC có nhiều implementation; nguồn tham khảo mô tả công cụ, không có định nghĩa BOS duy nhất hay track record cho bộ tham số đề xuất.
Quy trình thực hành
- Xác nhận cấu trúcHai highs/lows đủ biết trend.
- Chọn mức chưa pháSnapshot trước nến hiện tại.
- Close vượt bufferGhi event một lần theo level_id.
- Đánh giá filterDisplacement/RVOL là biến thể riêng.
- Entry hoặc retestGiữ timing, stop và timeout cụ thể.
BOS cần xu hướng đã biết trước
Nếu hai đỉnh xác nhận lần lượt 100 và 104, hai đáy tương ứng 95 và 99, ta có thể định nghĩa uptrend bằng HH/HL. Một close sau vượt high 104 là bullish BOS theo quy ước này. Trong range không có thứ tự highs/lows rõ, cùng một close chỉ được gọi range breakout.
LuxAlgo phân biệt internal và swing structure [1]. Bài này giữ sự phân biệt đó ở cấp dữ liệu: scale_id gắn với bộ pivot cố định. Một BOS nhỏ ngược hướng khung lớn không tự biến khung lớn thành đảo chiều.
Điểm quan trọng là “chưa bị phá”. Nếu một high đã được close vượt từ hôm qua, mọi close cao hơn hôm nay không được phát lại BOS cùng high. Event lưu broken_level_id để đo đúng số sự kiện, tránh biến một trend thành hàng chục tín hiệu độc lập.
Snapshot cấu trúc trước nến kiểm tra
Đề xuất pivot 3/3, eps=max(2tick,0,15ATR) và b=max(2tick,0,1ATR). Uptrend đòi cả hai highs và hai lows tăng quá eps; downtrend đối xứng; phần còn lại là mixed. Các ngưỡng và pivot length là cấu hình nghiên cứu.
Tại đầu nến t, snapshot trend và high chưa bị phá gần nhất có hiệu lực. Bullish BOS cần prior_state=UPTREND và close[t]>high+b, đồng thời close trước chưa vượt ngưỡng này. ATR dùng t−1. Pivot mới được xác nhận tại close t chỉ cập nhật cho quyết định từ t+1, không thay ngưỡng trong cùng vòng xử lý.
Nếu nhiều mức cùng bị phá, lưu một event gốc và danh sách levels bị vượt. Có thể chọn high lớn nhất trong scope làm reference chính, nhưng quy tắc phải thống nhất. Mức hết TTL không được dùng lại chỉ vì nhìn chart thấy đẹp.
old = structure_snapshot_at_end(t-1)
A = ATR14[t-1]
if finite_positive(A) and old.trend == UPTREND:
b = max(2*tick,0.10*A)
h = old.last_eligible_unbroken_high
if h is not None and C[t-1] <= h.price+b and C[t] > h.price+b:
emit(BOS_UP,known_at=received_close_time(t),level_id=h.id)
mark_broken(h.id)
append_pivots_confirmed_at(t,eligible_from=t+1)
# New pivots cannot replace the threshold inside this bar's decision.
Displacement và volume là hai nhóm feature
Đề xuất displacement tăng gồm body/ATR≥0,8, body/range≥0,6 và CLV≥0,75. Đây là mức thử, không định nghĩa bắt buộc của BOS. Một gap mở cửa có thể close vượt swing mà thân nến nhỏ; hãy ghi gap_break riêng thay vì tự ép thân lớn.
RVOL tại breakout giúp hỏi hoạt động có bất thường so cùng giờ không. Sau đó so kết quả BOS với/không filter trên cùng danh sách break gốc. Body mạnh và volume cao thường xảy ra cùng một event; không diễn giải chúng thành hai nhân chứng độc lập.
Nếu volume không tin cậy, detector cấu trúc vẫn chạy với cờ volume_unavailable. Không tự gán RVOL=1 cho dữ liệu thiếu; việc đó trộn “bình thường” với “không biết” và làm sai phân tích.
Ví dụ tiếp diễn đạt trigger và whipsaw
Chuỗi giả lập có highs 100 rồi 104, lows 95 rồi 99; tất cả đã xác nhận. ATR=2, tick=0,05 nên b=0,2. Nến mới O=103,8, H=105,8, L=103,6, C=105,5 vượt 104,2. Body=1,7=0,85ATR, body/range≈0,773, CLV≈0,864: đạt cả filter displacement đề xuất.
Nếu entry sau close ở 105,6, stop theo một đáy hồi nhỏ giả định đã xác nhận trước BOS ở 103,4 và target 110 thì reward 4,4/risk 2,2=2R. Nhưng high/low trong tương lai chưa được phép chọn để làm stop. Phiên bản chờ retest phải đợi thêm rồi tính lại entry thực.
Whipsaw giả lập: sau close 105,5, giá quay xuống 103,3 và stop khớp 103,35; lỗ 2,25. BOS vẫn là sự kiện đúng, chỉ giả thuyết tiếp diễn thất bại. Nếu nến chỉ wick lên 104,5 nhưng close 103,9 thì bản close-break không phát BOS.
Không có retest thì không có entry retest
Hai chiến lược riêng: theo breakout sau close và theo retest sau event. Đề xuất retest trong K=6 nến, low chạm vùng quanh 104 và close trở lại trên 104+b. Chỉ gửi lệnh khi điều kiện đủ; trường hợp giá chạy thẳng là no-fill của phiên bản retest.
Stop theo đáy retest gần hơn protected swing; phá stop không nhất thiết phá toàn bộ uptrend. Ngược lại, stop tận protected low có thể quá rộng so target. Cần chọn rủi ro của trade thay vì cho chữ BOS quyết định mọi phần của vị thế.
Trước entry, expiry hoặc close trở lại vùng quá sâu có thể hủy candidate theo luật đã chọn. Sau entry, lệnh bảo vệ thực thi theo giá thị trường và order type [3]. Không sửa lịch sử trade khi giá hồi sau stop.
BOS có thêm thông tin ngoài trend không
So những thời điểm uptrend có BOS với những thời điểm cùng uptrend, volatility và khoảng cách tới đỉnh nhưng chưa phá. Nếu chỉ so BOS tăng với toàn bộ thị trường, hiệu quả có thể đơn giản do đã chọn một uptrend.
Đo return sau signal, rồi hiệu quả có execution; hai bài toán khác nhau. Báo tỷ lệ retest, tỷ lệ giữ retest, thời gian entry, MAE/MFE, expectancy và mất mát do latency. Chặn bias pivot bằng replay prefix theo hướng dẫn thời gian dữ liệu [2].
Thử lân cận pivot length và b để tìm vùng kết quả ổn định; đừng tìm chính xác một buffer thắng. Event ở nhiều scale cùng lúc cần gom cụm khi tính độ độc lập và tổng rủi ro.
Sai lầm thường gặp
Mọi phá swing đều là BOS
Cần prior trend; range breakout không cùng bối cảnh.
Pivot tương lai xác nhận quá khứ
Cập nhật pivots chỉ cho quyết định về sau.
BOS là lệnh mua
Detector chỉ ghi sự kiện; vị trí entry và chi phí có thể khiến trade không phù hợp.
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
Dùng wick thay close được không?
Được như version riêng với execution intrabar phù hợp; không đổi tiêu chuẩn tùy nến.
BOS khung nhỏ trái khung lớn nghĩa gì?
Đó có thể là hồi hoặc đảo nhỏ. Hãy giữ cả hai trạng thái, không ghi đè trend lớn bằng một event nhỏ.
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.
- Smart Money ConceptsLuxAlgo trên TradingView. Mô tả chính chủ của một implementation. Đối chiếu: .
- RepaintingTradingView. Nguồn kỹ thuật về thời điểm dữ liệu. Đối chiếu: .
- Futures Order TypesCME Group. Cơ chế lệnh, không xác nhận chiến lược. Đố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