Mô phỏng chuỗi giao dịch lỗ liên tiếp
Chuỗi giao dịch lỗ liên tiếp không phải một điều bất thường mà là thuộc tính của bất kỳ chiến lược nào có winrate dưới một trăm phần trăm. Mô phỏng cho thấy chuỗi húc phải giới hạn ở stop thứ mấy và tới lúc đó thì tài khoản còn lại gì.
Phép tính
Rủi ro được tính từ equity hiện tại, nên chuỗi lỗ đi theo lãi kép: mỗi stop tiếp theo nhỏ hơn stop trước tính bằng tiền. Nếu công ty của bạn tính rủi ro từ balance khởi đầu, thì chuỗi lỗ sẽ là tuyến tính và giới hạn bị phá sớm hơn một-hai stop.
Các chuỗi dài hơn ta thường nghĩ
Trực giác gợi rằng với winrate 50 % thì sáu lần lỗ liên tiếp là chuyện hiếm. Số học lại nói khác: xác suất của một chuỗi như vậy tại một điểm cụ thể là khoảng 1,6 %, nhưng trên một đường dài hai trăm giao dịch thì nó xuất hiện gần như chắc chắn. Mà challenge thì đúng là một đường dài cỡ một-hai trăm giao dịch.
| Winrate | Chuỗi 5 | Chuỗi 7 | Chuỗi 10 |
|---|---|---|---|
| 55 % | 1,8 % | 0,4 % | 0,03 % |
| 50 % | 3,1 % | 0,8 % | 0,10 % |
| 45 % | 5,0 % | 1,5 % | 0,25 % |
| 40 % | 7,8 % | 2,8 % | 0,60 % |
Trong bảng là xác suất gặp một chuỗi có độ dài cho trước bắt đầu từ một giao dịch cụ thể: đó chỉ đơn giản là tỷ trọng lần thua lũy theo số mũ bằng độ dài chuỗi. Để có xác suất gặp ít nhất một chuỗi như vậy trong một giai đoạn thì phải nhân nó với số giao dịch — và khi đó sự kiện «hiếm» trở thành điều dự kiến được.
Vì sao điều này được giải quyết bằng khối lượng, không bằng tính kỷ luật
Không thể phòng ngừa một chuỗi lỗ: nó suy ra từ phân bố, không suy ra từ các sai sót. Đòn tay duy nhất là kích thước vị thế, vì nó quyết định mỗi stop biến thành bao nhiêu tiền. Từ đó mà có trình tự tính ngược: trước hết chọn chuỗi lỗ mà tài khoản buộc phải chịu được, rồi từ nó suy ra rủi ro mỗi giao dịch và chỉ sau đó mới tới khối lượng.
Phải làm gì khi chuỗi lỗ đã đang diễn ra
Bên trong một chuỗi lỗ thì gần như không có gì để quyết định: khối lượng đã được chọn từ trước, và đổi nó giữa đường nghĩa là làm đổ chính phép tính đã sinh ra nó. Ba cách hành xử khác nhau không phải ở sự dũng cảm mà ở việc chúng làm gì với phần biên dự phòng còn lại.
Riêng ra thì nên phân biệt hai tình huống trông giống nhau. Một chuỗi lỗ trong một ngày thì tiêu vào giới hạn ngày và về không ở phiên sau. Còn một chuỗi lỗ kéo dài cả tuần thì tiêu vào giới hạn tối đa — mà nó thì không bao giờ về không, và phần biên dự phòng đã tiêu sẽ không quay lại. Tình huống thứ nhất là khó chịu, tình huống thứ hai là nguy hiểm, và bản mô phỏng cho thấy cả hai: dòng «số stop tới giới hạn ngày» và dòng «tới giới hạn tối đa» trả lời hai câu hỏi khác nhau.
Được tính thế nào
Phép tính đi theo lãi kép, không đi theo cách nhân rủi ro với độ dài chuỗi. Khác biệt là căn bản: rủi ro 1,25 % ở giao dịch thứ hai đã được lấy từ mức equity đã giảm, nên chuỗi lỗ tốn ít hơn so với cách tính tuyến tính — nhưng không ít hơn nhiều, và với các chuỗi dài thì điều đó không cứu được.
| Giá trị | Công thức | Trong ví dụ |
|---|---|---|
| Equity sau k stop | tài khoản × (1 − rủi ro)^k | 92 731 $ ở stop thứ 6 |
| Sụt giảm sau chuỗi lỗ | 1 − (1 − rủi ro)^k | 7,3 % |
| Stop mà ở đó giới hạn ngày bị phá | k nhỏ nhất mà ở đó sụt giảm > giới hạn ngày | thứ 5 |
| Stop mà ở đó giới hạn tối đa bị phá | k nhỏ nhất mà ở đó sụt giảm > giới hạn tối đa | thứ 9 |
Trong ví dụ: tài khoản 100 000 $, rủi ro 1,25 % mỗi giao dịch, giới hạn ngày 5 %, giới hạn tối đa 10 %, chuỗi gồm sáu stop. Cách tính tuyến tính sẽ cho ra 6 × 1,25 = 7,5 % sụt giảm, còn lãi kép cho 7,3 %: khác biệt 0,2 điểm phần trăm. Không thể trông vào nó như một biên dự phòng.
Vì sao giới hạn ngày bị phá sớm hơn giới hạn tối đa. Vì nó nhỏ hơn và về không mỗi ngày: một chuỗi năm stop trong một ngày sẽ đóng tài khoản khi giới hạn ngày là 5 %, dù tổng sụt giảm chỉ mới 6 %. Cùng chuỗi đó kéo dài cả tuần thì lại không chạm giới hạn ngày chút nào — với cùng số âm cuối cùng đó.
Cách đọc kết quả
Con số then chốt không phải sụt giảm sau chuỗi lỗ mà là số thứ tự của stop mà ở đó giới hạn ngày bị phá. Hãy so nó với chuỗi lỗ tệ nhất của bạn trong lịch sử giao dịch, không so với chuỗi trung bình.
Phép tính không tính đến những gì
Ba sự đơn giản hóa, và cả ba đều làm kết quả lệch về phía lạc quan: chuỗi lỗ thật tốn hơn chuỗi lỗ trong phép tính.
- Các stop được coi là bằng nhau
- Trong phép tính, mỗi khoản lỗ đều bằng mức rủi ro đã đặt. Trong đời thực thì có trượt giá, có gap và có stop khớp tệ hơn mức đã nêu — và một giao dịch như vậy đáng giá hơn một stop.
- Chi phí không được trừ
- Spread, hoa hồng và swap cộng thêm vào mỗi khoản lỗ. Với khối lượng giao dịch của một scalper thì đó là một đại lượng đáng kể, và nó đưa giới hạn lại gần hơn.
- Các giao dịch có lãi bên trong chuỗi thì không được xét
- Phép tính lấy một chuỗi thuần liên tiếp. Một dãy trộn lẫn có các khoản lãi ở giữa sẽ cho ra một quỹ đạo khác — cái đó thì xác suất vượt qua tính.
Cả ba sự đơn giản hóa đều có nghĩa là một điều: số thứ tự của stop mà ở đó phép tính phá giới hạn chính là biên trên. Trên một tài khoản thật thì giới hạn sẽ đến ở đúng stop đó hoặc sớm hơn, nhưng không muộn hơn.
Câu hỏi thường gặp
Bao nhiêu giao dịch lỗ liên tiếp thì được coi là bình thường?
Mức bình thường được xác định không phải bằng một con số mà bằng winrate của bạn và độ dài của giai đoạn. Với winrate 45 % trên đường dài hai trăm giao dịch thì một chuỗi sáu lần lỗ là điều dự kiến được, còn tám lần thì hoàn toàn có thể. Phải lên kế hoạch theo chuỗi dài nhất trong lịch sử của mình cộng thêm biên dự phòng.
Vì sao chuỗi lỗ được tính theo lãi kép?
Vì rủi ro tính theo phần trăm thường được lấy từ equity hiện tại: sau một khoản lỗ thì tài khoản nhỏ hơn, nghĩa là stop tiếp theo tính bằng tiền cũng nhỏ hơn. Điều đó thoáng hơn mô hình tuyến tính một chút. Nếu công ty của bạn tính rủi ro từ balance khởi đầu, thì chuỗi lỗ sẽ là tuyến tính, và giới hạn bị phá sớm hơn một-hai stop.
Phải làm gì nếu chuỗi lỗ không lọt qua được giới hạn ngày?
Giảm khối lượng — không có đòn tay nào khác. Cả việc giảm số giao dịch, cả việc chuyển sang công cụ khác đều không thay đổi phép số học, nếu rủi ro mỗi giao dịch vẫn như trước.
Tìm chuỗi lỗ tệ nhất của mình thế nào?
Sắp xếp lịch sử giao dịch theo thời gian rồi tìm dãy lỗ liên tiếp dài nhất trong hai trăm giao dịch gần nhất. Con số đó chính là yêu cầu về biên dự phòng — cộng thêm một-hai stop cho việc kỷ lục còn chưa được lập.
Chuỗi lỗ có phải dấu hiệu cho thấy chiến lược đã thôi hoạt động không?
Tự thân thì không. Với winrate 45 % thì một chuỗi sáu lần lỗ là điều dự kiến được trên đường dài của một giai đoạn và chẳng nói gì về chất lượng chiến lược. Điều đáng cảnh giác là một chuỗi dài hơn hẳn chuỗi trong lịch sử, không phải bất kỳ chuỗi nào.
Vì sao mô hình tính theo lãi kép, không tính tuyến tính?
Vì rủi ro thường được đặt theo phần trăm của equity hiện tại: sau một khoản lỗ thì tài khoản nhỏ hơn, nghĩa là stop tiếp theo tính bằng tiền cũng nhỏ hơn. Điều đó thoáng hơn mô hình tuyến tính một chút, và nếu công ty của bạn tính rủi ro từ balance khởi đầu thì giới hạn bị phá sớm hơn một-hai stop.
Nếu các khoản lỗ không đi liên tiếp mà trộn lẫn với các khoản lãi thì sao?
Khi đó tới giới hạn còn xa hơn, và đó là trường hợp bình thường. Bản mô phỏng tính kịch bản tệ nhất mà vẫn thực tế: nó cần để khối lượng chịu được một đoạn tệ, không phải để dự đoán một tuần điển hình.
Số giao dịch mỗi ngày có ảnh hưởng tới kết cục không?
Rất mạnh. Giới hạn ngày được tính cho một ngày, nên với năm giao dịch mỗi ngày thì một chuỗi ba stop gói gọn trong một ngày, còn với một giao dịch mỗi ngày thì nó giãn ra ba ngày. Cùng một thống kê với tần suất khác nhau lại cho ra kết cục khác nhau.
Phép tính có tính đến các vị thế đang mở không?
Không, nó nói về các stop đã đóng. Nếu giới hạn ngày được tính từ equity, thì phần âm chưa đóng đã làm hụt biên dự phòng, và chuỗi lỗ thực tế sẽ ngắn hơn chuỗi trong phép tính.
Việc tăng khối lượng sau một chuỗi lỗ có giúp đánh lại được không?
Không, nó làm thất bại đến nhanh hơn. Việc tăng rủi ro sau khi lỗ làm giảm số stop còn lại tới giới hạn đúng vào lúc chuỗi lỗ vẫn còn có thể kéo dài. Trong bản mô phỏng thì điều đó thấy được ngay: hãy nâng rủi ro lên rồi xem số stop tới giới hạn ngày rơi xuống thế nào.