OptiNod Academy
Ba thước đo robustness — tiêu chí phân định nên tin cấu hình nào trong hai cấu hình cùng lợi nhuận
Giải thích ba điểm số ổn định (neighborhood stability, Monte Carlo, top-N consistency) chỉ ra cấu hình nào sống sót trong thực chiến giữa hai bộ tham số cùng lợi nhuận, theo đúng cách triển khai thực tế của OptiNod.
> Danh tính thật của vị trí số 1 trên bảng xếp hạng được phân định bởi việc ô ngay bên cạnh nó kiếm được số tiền giống đến mức nào.
Robustness (robustness) vốn là một thuật ngữ trong thống kê, chỉ tính chất mà giá trị ước lượng không lung lay nhiều dù các giả định có hơi lệch đi. Chuyển sang giao dịch, định nghĩa gói gọn trong một dòng. Liệu thành quả có giữ được tương tự khi ta dịch tham số đi một ô, hay thay đổi đôi chút khoảng dữ liệu hay không. Engine robustness của OptiNod chấm điểm câu hỏi này theo ba góc độ rồi gộp lại thành một điểm tổng hợp.
Cách hiểu phổ biến xem khái niệm này là một thủ tục hình thức, chỉ kiểm tra một lần sau khi backtest đã xong rồi cho qua. Kiểu như chọn vị trí số 1 trên bảng xếp hạng sắp theo lợi nhuận, rồi miễn là điểm ổn định của vị trí số 1 đó không đỏ rực thì cho thông qua. Điểm số bị coi như một thông tin phụ được gắn thêm cho có sau khi đã chốt xong thứ hạng theo lợi nhuận.
Trình tự đó bị đảo ngược. Ba điểm số không phải là thủ tục kiểm tra sau khi đã chọn vị trí số 1. Phải lấy chúng làm chính tiêu chí để chọn vị trí số 1. Sự hơn kém giữa hai cấu hình cùng lợi nhuận do ba điểm số này phân định. Bên nào điểm thấp là một đỉnh được tạo ra bằng khớp đường cong, nên thành quả không theo kịp trong thực chiến. Đọc xong bài này, khi nhìn bảng xếp hạng bạn sẽ kiểm tra cột ổn định trước cả cột lợi nhuận.

Nếu ô bên cạnh là vách đá thì vị trí số 1 là ngẫu nhiên, nếu phẳng thì là đỉnh thật
Điểm số thứ nhất, neighborhood stability (neighborhood stability), xem các ô tham số quanh tổ hợp tối ưu có thành quả đồng đều đến mức nào. OptiNod lấy 10 kết quả thành quả cao nhất, rồi trên mỗi trục tham số gom lại phương sai thành quả của các ô lân cận một bước phía trước và phía sau (±1 step). Lấy căn bậc hai của giá trị trung bình các phương sai đó (√trung bình phương sai lân cận) chia cho độ lệch chuẩn của toàn bộ thành quả để tính ra sensitivity (sensitivity). Sensitivity càng thấp thì điểm càng cao, và điểm này chiếm 35% điểm tổng hợp.
Điểm số này là cốt lõi vì thành quả do cấu trúc thị trường thật tạo ra vẫn theo kịp tương tự dù tham số có lệch đi một ô. Đổi kỳ EMA từ 20 sang 21 thì xu hướng không vì thế mà biến mất. Nếu thành quả của ô bên cạnh rơi dốc như vách đá, thì vị trí số 1 đó chỉ là kết quả tình cờ khớp với một vài cây nến cụ thể. Trong thực chiến những cây nến đó không quay lại, nên thành quả của cấu hình kiểu này sẽ sớm biến mất.
Ngày 19 tháng 5 năm 2021, BTC mở cửa ở 42.850 USD, bị đẩy xuống tới 30.000 USD trong phiên rồi đóng cửa ở 36.690 USD. Một cấu hình chỉnh độ rộng cắt lỗ tới từng tick để khớp với một cây nến lao dốc đơn lẻ như vậy rất dễ thành vị trí số 1 về lợi nhuận backtest. Nhưng chỉ cần nới độ rộng cắt lỗ thêm một ô là thành quả tụt mạnh. Điểm neighborhood stability bắt được sự chênh lệch này. Trên biểu đồ đừng chỉ nhìn vị trí của một đường cắt lỗ, mà hãy xem cùng lúc biên độ thành quả khi đẩy đường cắt lỗ đó sang trái phải mỗi bên một ô. Nếu biến động thành quả nhỏ thì đó là vùng ổn định, còn lớn thì là vùng dựa vào ngẫu nhiên.
Nếu bốc ngẫu nhiên cũng ra được thành quả cỡ này thì khó coi là do thực lực
Điểm số thứ hai, kiểm định Monte Carlo (Monte Carlo), so sánh phân phối của các kết quả bốc ngẫu nhiên từ cùng không gian tham số với cấu hình tốt nhất. OptiNod lặp 200·500·1000 lần tùy số kết quả để dựng phân phối trung bình của nhóm ngẫu nhiên hàng đầu, rồi tính xem cấu hình tốt nhất thực tế nằm ở bách phân vị nào của phân phối đó, cùng với ý nghĩa thống kê (pValue). Điểm này cũng chiếm 35% điểm tổng hợp.
Điểm số theo từng khoảng pValue như sau.
| pValue | Điểm |
|---|---|
| Dưới 0.01 | 95 |
| Dưới 0.05 | 80 |
| Dưới 0.1 | 65 |
| Dưới 0.3 | 45 |
| Từ 0.3 trở lên | 25 |
Câu hỏi mà kiểm định này trả lời rất đơn giản. Vị trí số 1 của tôi có phải là mức mà bốc đại bất cứ thứ gì trong không gian tham số này cũng ra được, hay là một đỉnh thật nằm ngoài phân phối. Nếu pValue bằng 0.3, nghĩa là trong mười lần bốc ngẫu nhiên thì ba lần ra thành quả tương tự vị trí số 1 của tôi. Coi vị trí số 1 đó là kết quả của thực lực thì căn cứ còn yếu. Nếu pValue bằng 0.01, xác suất ngẫu nhiên ra được thành quả đó là dưới một trên một trăm lần.
Trường hợp bản thân chiến lược không thắng nổi mức trung bình của thị trường sẽ bị chặn ở đây. Trong vụ sụp đổ FTX tháng 11 năm 2022, BTC ngày 9 tháng 11 rơi từ 18.545 USD xuống tới 15.588 USD trong phiên. Nếu tối ưu một chiến lược long bằng dữ liệu thị trường gấu chứa cả những đoạn lao dốc như vậy, thì chọn tham số nào phần lớn cũng lỗ. Khi đó nếu vị trí số 1 nằm ngay giữa phân phối ngẫu nhiên thì điểm Monte Carlo ra thấp. Đây không phải vấn đề chọn tham số. Đây là tín hiệu cho thấy việc áp dụng chiến lược này vào đoạn này tự nó đã là chuyện gượng ép. Muốn thu hẹp khoảng cách giữa backtest và giao dịch thật, trước hết phải kiểm tra vị trí trên phân phối này.
Nếu nhóm dẫn đầu tụ về một chỗ thì là đỉnh thật, nếu phân tán thì là ngẫu nhiên
Điểm số thứ ba, top-N consistency (top-N consistency), xem các tham số của nhóm 20% dẫn đầu (tối thiểu 3 nếu ít kết quả) tụ trong phạm vi hẹp đến mức nào. OptiNod tính theo từng tham số tỷ lệ giữa độ rộng phạm vi mà nhóm dẫn đầu chiếm chia cho toàn bộ phạm vi, và đếm số cụm xem trong nhóm dẫn đầu có bao nhiêu tổ hợp tham số khác nhau. Phạm vi càng hẹp và cụm càng ít thì điểm càng cao, và điểm này đảm nhận 30% điểm tổng hợp.
Việc nhóm dẫn đầu dồn vào một vùng nghĩa là trên thị trường có thật một khoảng cấu hình hoạt động được. Nếu nhóm kỳ EMA dẫn đầu đều tụ ở 18~24, thì vùng quanh đó là đỉnh thật. Nếu nhóm dẫn đầu vừa có ở kỳ 10, vừa có ở 50, lại phân tán cả ở 90, thì mỗi thành quả là sản phẩm của những sự ngẫu nhiên khác nhau, và chọn cái nào trong số đó cũng không có gì bảo đảm sẽ lặp lại ở đoạn tiếp theo.
Hãy nhớ lại đoạn biến động ngày 14 tháng 3 năm 2024, khi BTC lập đỉnh mới ở 73.777 USD rồi cùng ngày lắc xuống tới 68.555 USD, dao động hơn 5.000 USD. Trong những đoạn như vậy, các cấu hình tình cờ bắt trúng một hai cây nến lớn sẽ leo lên nhóm dẫn đầu một cách phân tán. Số cụm nhiều nghĩa là đỉnh không tụ lại được thành một mà nhiều sự ngẫu nhiên trộn lẫn vào nhau. Nếu chia đoạn ra bằng phân tích walk-forward, bạn sẽ thấy vị trí của nhóm dẫn đầu phân tán này đổi sang ô khác theo từng đoạn.
Khi lợi nhuận bằng nhau thì điểm tổng hợp định ra hơn kém giữa hai bên
Ba điểm số được gộp lại theo trọng số lần lượt 35%·35%·30% thành điểm tổng hợp. Nếu kết quả dưới 5 thì tạm hoãn việc tính điểm (thiếu mẫu). Bàn về ổn định khi mẫu còn thiếu thì tự nó lại là một dạng overfitting khác.
Phải xem ba điểm số cùng nhau vì mỗi điểm bắt một loại ngẫu nhiên khác nhau. Neighborhood stability bắt cú lao dốc của ô ngay bên cạnh, Monte Carlo bắt thành quả tầm thường bị chôn trong phân phối, top-N consistency lọc ra đỉnh phân tán. Cấu hình chỉ một điểm cao còn hai điểm kia thấp là khớp đường cong chỉ qua được một loại kiểm tra.
Dưới đây là thủ tục để lọc hai ứng viên thực chất cùng lợi nhuận trước khi đưa vào thực chiến. Các con số cutoff là khuyến nghị vận hành. Đây không phải giá trị do sản phẩm cưỡng ép, hãy điều chỉnh cho phù hợp với tính chất chiến lược.
1. Sắp xếp lần đầu: Đổi tiêu chí sắp xếp bảng xếp hạng từ lợi nhuận sang điểm tổng hợp giảm dần.
2. Ngưỡng dưới neighborhood stability (khuyến nghị): Nếu điểm tham số (giá trị trộn giữa sensitivity và phạm vi) của các tham số cốt lõi (độ rộng cắt lỗ, kỳ vào lệnh) dưới 60 điểm thì loại khỏi danh sách ứng viên. Lưu ý engine đánh dấu dưới 40 điểm là sensitive, 40~60 điểm là moderate.
3. Ngưỡng dưới Monte Carlo (khuyến nghị): Nếu pValue từ 0.05 trở lên (dưới 80 điểm) thì căn cứ về thực lực còn yếu nên tạm hoãn.
4. Kiểm tra cụm top-N (khuyến nghị): Nếu trong nhóm 20% dẫn đầu, số tổ hợp tham số khác nhau (số cụm) vượt quá một nửa mẫu dẫn đầu thì coi như đỉnh đã phân tán và loại.
5. Quyết định đưa vào: Trong số ứng viên qua được ba điều kiện trên, chọn bên có profit factor cao hơn và drawdown tối đa thấp hơn.
Hai kiểu đọc sai điểm số
Trường hợp chỉ nhìn điểm tổng hợp mà không kiểm tra ba điểm chi tiết. Điểm tổng hợp 70 có thể là cả ba điểm đều 70, mà cũng có thể là một điểm 95 còn hai điểm ở mức 50. Trường hợp sau là cấu hình nguy hiểm chỉ qua được một kiểm tra. Điểm tổng hợp chỉ là điểm xuất phát, không được bỏ qua bước trải ba điểm chi tiết ra để kiểm tra xem kiểm tra nào đang yếu.
Trường hợp muốn nâng điểm mà không tăng mẫu. Khi kết quả chỉ có 7~8 mà điểm ra cao, đó có thể là ảo giác do mẫu ít nên phương sai bị bắt thành nhỏ. Ở đoạn lặp Monte Carlo giảm xuống 200 lần (kết quả từ 10 trở xuống), khó phân định pValue một cách tinh tế. Muốn tin điểm số thì trước hết hãy chạy đủ tổ hợp để nâng mẫu lên từ 30 trở lên.
Chỉ tin khi ba điểm số cùng tụ về một hướng
Điểm robustness không hứa hẹn lợi nhuận tương lai. Nó là công cụ để phân định trong khoảng backtest xem vị trí số 1 đó là kết quả của thực lực hay của ngẫu nhiên. Vì vậy bước kiểm tra cuối cùng là xem ba điểm số có cùng tụ về một hướng hay không. Các tiêu chí dưới đây cũng là giá trị vận hành khuyến nghị.
- [ ] Neighborhood stability: Điểm tham số cốt lõi có từ 60 điểm trở lên không
- [ ] Monte Carlo:
pValuecó dưới 0.05 (từ 80 điểm trở lên) không - [ ] Top-N consistency: Số cụm của nhóm 20% dẫn đầu có tụ trong phạm vi từ một nửa mẫu trở xuống không
- [ ] Mẫu: Kết quả có từ 30 trở lên để độ phân giải điểm số đủ không
- [ ] Đã trải hết cả ba điểm chi tiết ra xem chứ không chỉ điểm tổng hợp chưa
Cấu hình có ba điểm số cùng tụ về một hướng có xác suất cao giữ được thành quả tương tự dù đổi khoảng dữ liệu. Nó khác với một cấu hình ngẫu nhiên khớp với một cây nến sốc đơn lẻ như cú giải chấp yen carry ngày 5 tháng 8 năm 2024, khi BTC bị đẩy từ 58.161 USD xuống tới 49.000 USD. Trong hai cấu hình cho thấy cùng lợi nhuận thì nên tin cái nào, ba điểm số này định ra.
