Phương pháp Triple Barrier: Gán nhãn sự kiện tài chính
Tìm hiểu cách ngưỡng lợi nhuận, ngưỡng lỗ và thời hạn nắm giữ tối đa cùng xác định nhãn sự kiện, cũng như cách xử lý giá không rõ thứ tự và các kết quả chồng lấn.
Trong hướng dẫn nàyBa điều kiện xác định nhãn của một sự kiện
Tóm tắt ngắn
Phương pháp Triple Barrier gán nhãn cho một sự kiện tài chính dựa trên điều kiện đầu tiên xảy ra sau thời điểm bắt đầu: ngưỡng chốt lời phía trên, ngưỡng giới hạn lỗ phía dưới hoặc thời hạn nắm giữ tối đa. Các mức của từng sự kiện được tính từ giá ban đầu P₀ và thang đo biến động σᵢ, vốn phải được biết ngay khi sự kiện bắt đầu. Trong bài này, chạm ngưỡng trên cho nhãn +1, chạm ngưỡng dưới cho nhãn −1, còn hết hạn mà chưa chạm hai ngưỡng ngang cho nhãn 0. Một số cách triển khai dùng dấu của lợi suất cuối kỳ thay thế, nên nghiên cứu cần ghi rõ quy ước được chọn.
Ba điều kiện xác định nhãn của một sự kiện
Với sự kiện i, hãy ghi lại thời điểm bắt đầu tᵢ, giá P₀, ước lượng thang đo lợi suất σᵢ, các hệ số m_PT và m_SL, cùng thời hạn tối đa Tᵢ. Nếu dùng lợi suất đơn, ngưỡng giá phía trên là P₀ × (1 + m_PT σᵢ), còn ngưỡng phía dưới là P₀ × (1 − m_SL σᵢ). Hai mức này là rào cản ngang; thời điểm Tᵢ là rào cản dọc.
Chẳng hạn, với m_PT = 2, mục tiêu phía trên cách giá ban đầu hai lần thang đo. Với m_SL = 1,5, ngưỡng phía dưới cách giá ban đầu 1,5 lần thang đo. Nếu chạm một trong hai mức ngang trước Tᵢ, sự kiện kết thúc tại đó và nhận nhãn tương ứng. Nếu chưa chạm mức ngang nào, sự kiện kết thúc khi hết hạn ở rào cản dọc.
Có thể xác định ngưỡng bằng lợi suất đơn hoặc lợi suất logarit, nhưng khi biến động giá lớn thì hai cách này không cho cùng một mức giá. Hãy chọn định nghĩa lợi suất và dùng nhất quán khi tạo mục tiêu cũng như mô phỏng việc khớp lệnh. Chương 3 của Advances in Financial Machine Learning trình bày cách gán nhãn theo sự kiện và đặt rào cản theo thang đo biến động.
Thang đo biến động phải có sẵn khi sự kiện bắt đầu
σᵢ điều chỉnh khoảng cách tới rào cản theo mức biến động ước tính cho từng sự kiện. Có thể ước lượng từ lợi suất quá khứ hoặc từ một mô hình được xác định trước, nhưng chỉ được dùng dữ liệu có sẵn tại hoặc trước thời điểm tᵢ. Nếu tính biến động bằng cách đưa cả giai đoạn tương lai vào, các ngưỡng đã chứa thông tin tương lai dù đặc trưng được xây dựng cẩn thận.
Ngưỡng theo tỷ lệ phần trăm cố định dễ diễn giải, nhưng có thể quá gần trong giai đoạn yên ắng và quá xa trong giai đoạn biến động mạnh. Thang đo theo biến động giúp khoảng cách thay đổi theo chế độ thị trường hiện tại. Tuy vậy, σᵢ không phải bảo đảm hay dự báo chính xác về biến động tương lai; đây chỉ là một đầu vào của quy tắc gán nhãn đã định trước.
Hãy lưu giá ban đầu, σᵢ, các hệ số, thời điểm bắt đầu và kết thúc, lý do kết thúc, cùng mức giá dùng để xác định lần chạm cho từng sự kiện. Những trường này giúp tái tạo nhãn, kiểm tra thời lượng sự kiện khác nhau và phát hiện việc vô tình sử dụng thông tin tương lai.
Bộ kích hoạt sự kiện và nhãn trả lời hai câu hỏi khác nhau
Bộ kích hoạt quyết định khi nào bắt đầu theo dõi một sự kiện. Ví dụ, bộ lọc CUSUM có thể tạo sự kiện khi biến động giá tích lũy vượt một ngưỡng, thay vì tạo mẫu ở mọi cây nến. Bộ kích hoạt trả lời “khi nào bắt đầu một mẫu?”, còn quy tắc ba rào cản trả lời “sau đó kết quả nào xảy ra trước?”.
Đừng nhầm bộ kích hoạt với nhãn hay tín hiệu giao dịch. Việc gán nhãn qua rào cản dùng đường đi của giá trong tương lai để tạo biến mục tiêu y. Đây là điều cần thiết để xác định kết quả huấn luyện, nhưng đặc trưng và σᵢ của sự kiện phải dựa trên thông tin có tại thời điểm bắt đầu. Sự phân biệt này có trong tài liệu gán nhãn của mlfinpy và được thể hiện trong mã triển khai Triple Barrier.
Ví dụ cho thấy mỗi rào cản hoạt động ra sao
Giả sử P₀ = $100, σᵢ = 2%, m_PT = 2, m_SL = 1,5 và rào cản dọc hết hạn vào cuối cây nến tương lai thứ ba. Theo quy ước lợi suất đơn, mức trên là $104 và mức dưới là $97.
- Đường đi $100 → $104,50 chạm mức trên ở cây nến tương lai thứ nhất. Nhãn là +1, kể cả khi giá có thể đảo chiều sau đó.
- Đường đi $100 → $96,50 chạm mức dưới ở cây nến tương lai thứ nhất, trước khi hết hạn. Nhãn là −1.
- Đường đi $100 → $101 → $102 → $101,50 không chạm mức ngang nào. Khi kết thúc cây nến tương lai thứ ba, sự kiện hết hạn và nhận nhãn 0 theo quy ước bài này, dù lợi suất cuối kỳ là +1,5%.
Ví dụ cuối cho thấy 0 nghĩa là “chưa chạm rào cản ngang nào trước khi hết hạn”, chứ không có nghĩa lợi suất bằng không. Một số cách gán nhãn xem thời hạn chỉ là điểm dừng quan sát rồi phân loại kết quả theo dấu của lợi suất cuối kỳ. Đó là một quy tắc khác; hãy ghi rõ và không trộn các nhãn được tạo theo những quy ước khác nhau.

Gán nhãn theo hướng khác với gán nhãn meta
Trong bài toán dự đoán hướng, nhãn +1 và −1 cho biết giá chạm ngưỡng ở phía nào trước; quy ước trong bài này tách trường hợp hết hạn thành 0. Mô hình có thể dự đoán lớp từ đặc trưng biết tại thời điểm bắt đầu sự kiện. Nhãn chỉ mô tả kết quả so với các rào cản đã chọn, không tự cho biết khả năng sinh lời sau chi phí.
Gán nhãn meta bắt đầu bằng một mô hình chính đã đề xuất phía vị thế, chẳng hạn mua hay bán. Sau đó, rào cản được áp dụng lên lợi suất có xét phía được đề xuất và mô hình thứ hai đánh giá có nên nhận tín hiệu hay không. Vì thế ý nghĩa của nhãn và các ngưỡng phụ thuộc việc phép tính có xét phía vị thế hay không. Hãy ghi phía được đề xuất vào dữ liệu; không nên xem mọi nhãn +1 là khuyến nghị mua.
Dữ liệu thị trường có thể không cho biết thứ tự chạm
Dữ liệu chỉ có giá đóng cửa có thể bỏ sót việc chạm rào cản trong phiên: giá cao nhất hoặc thấp nhất có thể đã vượt ngưỡng trước khi đóng cửa. Một nến OHLC có cả giá cao nhất vượt rào cản trên lẫn giá thấp nhất vượt rào cản dưới không cho biết mức nào bị chạm trước. Không thể xác định đáng tin cậy rào cản thắng chỉ từ bốn giá đó.
Nếu thứ tự chạm quan trọng, hãy dùng dữ liệu tần suất cao hơn đủ để xác định thứ tự. Nếu không có dữ liệu như vậy, hãy đặt trước một quy tắc thận trọng, có thể tái lập cho trường hợp chạm cả hai mức trong cùng nến, chẳng hạn tính theo kết quả bất lợi, rồi áp dụng nhất quán cho mọi sự kiện. Nêu rõ sự không chắc chắn trong phương pháp; đừng trình bày thứ tự giả định như một sự kiện đã quan sát.
Cũng cần xác định “chạm” được tính theo giao dịch, giá chào mua/bán, giá đóng cửa hay giá có thể khớp. Khoảng nhảy giá, chênh lệch mua bán và độ trễ khớp lệnh có thể khiến vị thế thực tế không khớp được tại mức giá hiển thị.
Sự kiện chồng lấn cần được xử lý khi chia tập xác thực
Nhiều sự kiện có thể diễn ra đồng thời và dùng chung một phần biến động giá tương lai để tạo nhãn. Vì vậy, chia ngẫu nhiên từng dòng vào tập huấn luyện và kiểm tra có thể đặt các kết quả có khoảng thời gian chồng lấn vào cả hai tập. Khi đánh giá, hãy dùng khoảng thời gian thực tế từ lúc sự kiện bắt đầu đến khi chạm rào cản hoặc hết hạn, rồi loại khỏi tập huấn luyện những mẫu có kết quả chồng với nhãn kiểm tra theo quy tắc đã chọn.
Cách xử lý này được trình bày trong hướng dẫn về purged cross-validation và embargo cho chuỗi thời gian tài chính. Purging giảm rò rỉ do nhãn chồng lấn nhưng không sửa được đặc trưng chứa dữ liệu tương lai, việc lựa chọn mô hình lặp đi lặp lại hay giả định khớp lệnh thiếu thực tế.
Chi phí làm thay đổi ý nghĩa của kết quả
Đường đi giữa các rào cản thường dựa trên biến động giá của tài sản cơ sở. Kết quả giao dịch thực còn phụ thuộc chênh lệch mua bán, phí, trượt giá, funding của hợp đồng vĩnh cửu, chi phí vay và quy tắc khớp lệnh. Nếu mục tiêu là phân loại kết quả ròng, hãy đưa các yếu tố đó vào định nghĩa lợi suất mục tiêu và giả định khớp lệnh thực tế trước khi tính nhãn.
Nhãn dương không chứng minh chiến lược sẽ có lãi. Kết quả phụ thuộc tần suất sự kiện, mô hình, thị trường, quy mô vị thế và chất lượng khớp lệnh; việc gán nhãn trên dữ liệu lịch sử tự nó không phải lời hứa lợi nhuận hay khuyến nghị giao dịch.
Ghi rõ quy ước trước khi huấn luyện
Hãy mô tả cách khởi tạo sự kiện, nguồn của P₀ và σᵢ, các hệ số và thời hạn, luồng giá dùng để xác định lần chạm, cùng cách xử lý khi chạm hai mức. Nêu rõ hết hạn luôn nhận nhãn 0 hay được phân loại theo lợi suất cuối kỳ, và kết quả được tính trước hay sau chi phí.
Ghi lại quy ước giúp bộ dữ liệu có thể được kiểm tra và tái tạo. Các tham số khác nhau tạo ra những bài toán dự đoán khác nhau, kể cả khi dùng cùng một dữ liệu thô.
Câu hỏi thường gặp
Q1Khi hết hạn, nhãn có nhất thiết phải là 0 không?
Không. Bài này chọn 0 làm lớp riêng cho sự kiện không chạm rào cản ngang trước thời hạn dọc. Cách triển khai khác có thể gán nhãn theo dấu của lợi suất cuối kỳ. Điều quan trọng là chọn một quy ước và áp dụng nhất quán.
Q2Bộ kích hoạt sự kiện khác Triple Barrier ở điểm nào?
Bộ kích hoạt, chẳng hạn CUSUM, xác định thời điểm bắt đầu mẫu. Ba rào cản xác định điều kiện kết quả nào xảy ra trước sau thời điểm đó. Đây là hai bước riêng khi tạo dữ liệu huấn luyện.
Q3Nhãn +1 có đảm bảo giao dịch có lãi sau chi phí không?
Không. Nhãn chỉ cho biết mức phía trên được chạm trước theo giá và quy tắc đã chọn. Chênh lệch mua bán, phí, funding, trượt giá, quy mô vị thế và cách khớp lệnh có thể làm thay đổi kết quả ròng.
Nguồn và tài liệu đọc thêm
Báo lỗi
Chúng tôi sẽ soạn email kèm liên kết bài viết này. Mark chỉ nhận được báo cáo sau khi bạn gửi email
Kiểm tra nhanh
Đọc xong hướng dẫn? Hãy kiểm tra với 3 câu hỏi
Câu hỏi 01
Nếu sự kiện chạm rào cản trên ở cây nến tương lai thứ nhất, trước rào cản dưới và trước khi hết hạn, nhãn là gì?
Chọn một đáp án để xem giải thích
Bảng thuật ngữ quyền chọn
The process that requires an option writer to fulfill the contract after an exercise notice is allocated; it can create or remove an underlying position.
Đọc hướng dẫn chuyên sâuBid-ask spreadThe gap between the best displayed bid and ask, which is a practical trading cost and a signal of how uncertain an immediate fill may be.
Đọc hướng dẫn chuyên sâu