Giới thiệu phương pháp tính toán rủi ro chuyên nghiệp: Mô phỏng Monte Carlo (Monte Carlo Simulation)

Giới thiệu phương pháp tính toán rủi ro chuyên nghiệp: Mô phỏng Monte Carlo (Monte Carlo Simulation)

Giới thiệu phương pháp tính toán rủi ro chuyên nghiệp: Mô phỏng Monte Carlo (Monte Carlo Simulation)

ductoan1898

Active Member
27
139
Phân tích rủi ro là một phần của mọi quyết định đầu tư mà chúng ta đưa ra. Chúng ta thường xuyên phải đối mặt với sự không chắc chắn, mơ hồ và sự thay đổi khi nói đến tương lai phía trước. Tuy nhiên ta có thể mô phỏng các kết quả có thể xảy ra trong tương lai để có cái nhìn trực quan hơn và từ đó đưa ra các quyết định tốt hơn trong điều kiện không chắc chắn luôn tồn tại trên thị trường.
upload_2021-10-28_20-9-57.png

Mô phỏng Monte Carlo là gì?


Mô phỏng Monte Carlo được phát triển bởi Stanislwa Ulam và John Von Neumann, đặt tên theo địa điểm đánh bạc phổ biến ở Monaco. Vì kết quả may rủi và ngẫu nhiên là trọng tâm của kỹ thuật mô hình hóa, giống như đối với các trò chơi như roulette, xúc xắc và máy đánh bạc. Đó là lý do anh em thấy được trong ảnh minh họa có bàn roulett.

Mô phỏng Monte Carlo được sử dụng bằng cách xây dựng các mô hình về các kết quả có thể có bằng cách thay thế một loạt các giá trị — một phân phối xác suất — cho các biến ngẫu nhiên (các yếu tố không chắc chắn trên thị trường). Sau đó, nó tính toán các kết quả lặp đi lặp lại, mỗi lần sử dụng một tập hợp các giá trị ngẫu nhiên khác nhau từ các hàm xác suất. Mô phỏng Monte Carlo tạo ra các phân phối của các giá trị kết quả có thể có.

Hiểu đơn giản hơn thì mô phỏng Monte Carlo là một kết quả của việc dự đoán tương lai nhiều lần. Vào cuối mô phỏng, hàng nghìn hoặc hàng triệu "thử nghiệm ngẫu nhiên" tạo ra một phân phối các kết quả có thể xảy ra.

upload_2021-10-28_20-10-32.png

Đây là mô phỏng giá 1 cổ phiếu trong tương lai và 1 năm và sử dụng 20 lần thử. Thông thường số lần thử có thể lên đến hàng nghìn hàng triệu lần nhé anh em.

Phương pháp tính toán và sử dụng mô phỏng Monte Carlo


Bất kể anh em sử dụng công cụ nào, mô phỏng Monte Carlo bao gồm ba bước cơ bản:

1. Xác định mô hình

Thiết lập mô hình dự đoán, xác định cả biến phụ thuộc được dự đoán và các biến độc lập (còn được gọi là biến đầu vào, rủi ro hoặc biến dự báo) sẽ thúc đẩy dự đoán. Với các biến ngẫu nhiên thì ta sẽ phải chọn một phân phối xác suất cho chúng. Ở đây mình sẽ dùng chuyển động Brown (geometric Brownian motion) vì nó thường được sử dụng nhất. Sử dụng chuyển động Brown nghĩa là giá chứng khoán tuân theo sự ngẫu nhiên (random walk) và phù hợp với thuyết thị trường hiệu quả (EMH).
Công thức cho chuyển động Brown như sau:

∆S=S×(μ∆t+σϵ√∆t)
∆S: sự thay đổi giá chứng khoán (Pt – Pt-1)
S: giá chứng khoán
μ: lợi nhuận kì vọng
σ: độ lệch chuẩn của lợi nhuận
∆t: khoảng thời gian (tt – tt-1)
ϵ: biến ngẫu nhiên

Trong công thức có 2 phần, thứ nhất là hướng chuyển động μ∆t và thứ hai là một cú shock ngẫu nhiên σϵ√∆t.

2. Tạo các thử nghiệm ngẫu nhiên

Để minh họa mình sử dụng python để chạy 1000 mẫu thử nghiệm. Trong trường hợp này, mình sử dụng chỉ số VNI bắt đầu từ ngày 28/07/2021 ở mức 1277.07 điểm. Dưới đây là biểu đồ về kết quả trong đó mỗi bước thời gian (hoặc khoảng thời gian) là một ngày và chuỗi chạy trong 1 năm (252 ngày giao dịch). Với lợi nhuận kỳ vọng và độ lệch chuẩn thì mình dùng dữ liệu quá khứ từ 28/07/2000 đến 28/07/2021 để tính nhé anh em.

upload_2021-10-28_20-12-26.png

Giá trị kỳ vọng sau 1 năm được tính giá trị trung bình của tất cả các kết quả.

3. Đánh giá kết quả

Mô phỏng tạo ra một phân phối các kết quả giả định trong tương lai. Chúng ta có thể phân tích một số điều với đầu ra.

Chúng ta có thể tính áp dụng bài trước và tính VaR cũng như CvaR với độ tin cậy 95% thì chỉ cần xác định kết quả xếp thứ 50 vì 50/1000 = 5%.

upload_2021-10-28_20-13-11.png

Mô phỏng Monte Carlo cho phép các nhà phân tích chuyển đổi các cơ hội đầu tư thành các lựa chọn. Ưu điểm của Monte Carlo là khả năng tính đến một loạt các giá trị cho các đầu vào khác nhau; đây cũng là nhược điểm lớn nhất của nó theo nghĩa là các giả định cần phải công bằng vì đầu ra chỉ tốt như các yếu tố đầu vào. Một nhược điểm lớn khác là mô phỏng Monte Carlo có xu hướng đánh giá thấp xác suất của các sự kiện cực đoan như khủng hoảng tài chính. Ngoài ra, mô phỏng Monte Carlo còn bỏ qua những thứ không được xây dựng trong chuyển động giá (xu hướng vĩ mô, lãnh đạo công ty, các yếu tố chu kỳ); nói cách khác, giả định thị trường hoàn toàn hiệu quả và điều này là không phù hợp với thực tế. Trên thực tế, các chuyên gia cho rằng một mô phỏng như Monte Carlo không thể ảnh hưởng đến các khía cạnh hành vi của tài chính và sự bất hợp lý mà những người tham gia thị trường thể hiện. Tuy nhiên, nó vẫn là một công cụ hữu ích cho chúng ta nếu sử dụng một cách phù hợp.

Lời kết: Tất cả những gì ở đây mang mục đích hướng dẫn và chưa được phù hợp với thực tế. Để cải tiến mô hình phía trên tốt hơn anh em có thể thêm một biến ngẫu nhiên vào phần lợi nhuận kì vọng vì trên thực tế biến đó cũng là biến ngẫu nhiên. Ngoài ra mọi người có thể thêm các biến khác nhau để cải thiện độ chính xác mô hình. Cảm ơn anh em đã theo dõi.
 

Giới thiệu sách Trading hay
Thấu hiểu Hành vi giá Thị trường Tài chính - Understanding Price Action

Là quyển sách hướng dẫn giao dịch Phương Pháp Price Action của Bob Volman, chỉ sử dụng duy nhất một đường MA và cấu trúc thị trường cùng hành vi giá để tìm kiếm lợi nhuận
Chỉnh sửa lần cuối bởi người điều hành:
Mô phỏng này quá đơn giản và không có giá trị lắm. Ngày nay làm analysis cần dựa vào backtest/real test, rồi từ đó mới làm R&D và xây dựng models. Với công nghệ DeepRL có khả năng build model tự học và nâng cấp, những mô phỏng Monte Carlo kia là không còn cần thiết nữa.

Suy cho cùng, mọi phân tích dù là PTCB hay PTKT hay song kiếm hợp bích, danh ngôn chính phái hay tà bang ngoại hội, cho đến cuối cùng cũng chẳng có ý nghĩa nào cả.

Cuộc chơi trader là cuộc chơi của những người quản trị, việc ra quyêt định invest vào món gì, buy hay sell, tài hay xỉu, chẳng có bao giờ và chẳng có công nghệ hay thuật toán nào có thể thắng được hết. Tất cả chỉ là trò chơi quản trị rủi ro.
 
Mô phỏng này quá đơn giản và không có giá trị lắm. Ngày nay làm analysis cần dựa vào backtest/real test, rồi từ đó mới làm R&D và xây dựng models. Với công nghệ DeepRL có khả năng build model tự học và nâng cấp, những mô phỏng Monte Carlo kia là không còn cần thiết nữa.

Suy cho cùng, mọi phân tích dù là PTCB hay PTKT hay song kiếm hợp bích, danh ngôn chính phái hay tà bang ngoại hội, cho đến cuối cùng cũng chẳng có ý nghĩa nào cả.

Cuộc chơi trader là cuộc chơi của những người quản trị, việc ra quyêt định invest vào món gì, buy hay sell, tài hay xỉu, chẳng có bao giờ và chẳng có công nghệ hay thuật toán nào có thể thắng được hết. Tất cả chỉ là trò chơi quản trị rủi ro.
mình xin cảm ơn những ý kiến đóng góp. Hi vọng được học hỏi nhiều hơn từ bác.
 
mình xin cảm ơn những ý kiến đóng góp. Hi vọng được học hỏi nhiều hơn từ bác.

Trên diễn đàn có rất ít những người làm nghiên cứu chuyên sâu, nên thấy bạn viết bài về nghiên cứu thì tôi có hứng cùng thảo luận.

Về cơ bản, thử nghiệm Monte Carlo chỉ là 1 cái backtest, của một cái strategy/models tự định nghĩa. Cái gọi là mô hình của nó, bản chất là một cái model. Xác định mô hình/models xong thì các lần thử kia chỉ như các lần backtest thôi. Việc làm thử nghiệm này cũng tương tự như việc chạy nhiều backtest với nhiều input khác nhau, turning rồi hyperturning các tham số đầu vào.

Khi bạn làm Quants, hay làm Machine Learning, Deep Learning chẳng hạn, mặc dù đây là những công nghệ rất mới rồi, nhưng bọn chúng đều có chung đặc điểm là sử dụng models. Cách thức xây dựng model và triển khai model của bọn này vẫn còn chậm và giới hạn rất nhiều. Muốn tiến xa hơn nữa, thì dùng DeepRL. Công nghệ này mạnh mẽ bằng tất cả các công nghệ và thuật toán khác cộng lại. Bạn sẽ kinh ngạc khi tìm hiểu về nó và sử dụng nó. Nó quá mạnh.

Nhưng mà, đến cuối cùng, DeepRL cũng vô nghĩa với trading. Bản chất của bài toán trading là người trader vĩnh viễn không bao giờ thắng. Game này đã được thiết lập là như thế ngay từ đầu. Không có sự công bằng khi trading, người trader luôn phải bỏ ra phần risk cao hơn nếu muốn thắng. Điều này dẫn đến việc Quản trị mới là vấn đề cần giải quyết. Chiến lược giao dịch không thể quyết định được trader sẽ thắng hay thua. Phải học quản trị rủi ro mới được, tất cả các trader bắt buộc phải học kỹ năng quản trị này.
 
Trên diễn đàn có rất ít những người làm nghiên cứu chuyên sâu, nên thấy bạn viết bài về nghiên cứu thì tôi có hứng cùng thảo luận.

Về cơ bản, thử nghiệm Monte Carlo chỉ là 1 cái backtest, của một cái strategy/models tự định nghĩa. Cái gọi là mô hình của nó, bản chất là một cái model. Xác định mô hình/models xong thì các lần thử kia chỉ như các lần backtest thôi. Việc làm thử nghiệm này cũng tương tự như việc chạy nhiều backtest với nhiều input khác nhau, turning rồi hyperturning các tham số đầu vào.

Khi bạn làm Quants, hay làm Machine Learning, Deep Learning chẳng hạn, mặc dù đây là những công nghệ rất mới rồi, nhưng bọn chúng đều có chung đặc điểm là sử dụng models. Cách thức xây dựng model và triển khai model của bọn này vẫn còn chậm và giới hạn rất nhiều. Muốn tiến xa hơn nữa, thì dùng DeepRL. Công nghệ này mạnh mẽ bằng tất cả các công nghệ và thuật toán khác cộng lại. Bạn sẽ kinh ngạc khi tìm hiểu về nó và sử dụng nó. Nó quá mạnh.

Nhưng mà, đến cuối cùng, DeepRL cũng vô nghĩa với trading. Bản chất của bài toán trading là người trader vĩnh viễn không bao giờ thắng. Game này đã được thiết lập là như thế ngay từ đầu. Không có sự công bằng khi trading, người trader luôn phải bỏ ra phần risk cao hơn nếu muốn thắng. Điều này dẫn đến việc Quản trị mới là vấn đề cần giải quyết. Chiến lược giao dịch không thể quyết định được trader sẽ thắng hay thua. Phải học quản trị rủi ro mới được, tất cả các trader bắt buộc phải học kỹ năng quản trị này.

Cảm ơn những chia sẻ bác. Đúng là mình cũng đang làm những nghiên cứu cơ bản về mảng quant, ML và Deep Learning nhưng vì không phải gốc IT nên mình còn nhiều thiếu sót và hiện tại chỉ deploy được một vài model đơn giản. Hi vọng có thể học hỏi thêm ở bác về mảng Deep learning và RL.
 
Cái khó khăn của AI hay Deep learning là nó tự tìm ra logic ẩn và ko giải thích đc. Khi đó nên tương lai khác quá khứ thì mình ko thể có lập luận để hiệu chỉnh hay tin cậy là thuật toán còn mạnh mẽ ko. Chưa thể thay thể đc tư duy tổng thể của người trong cuộc chơi trading.
 
Cái khó khăn của AI hay Deep learning là nó tự tìm ra logic ẩn và ko giải thích đc. Khi đó nên tương lai khác quá khứ thì mình ko thể có lập luận để hiệu chỉnh hay tin cậy là thuật toán còn mạnh mẽ ko. Chưa thể thay thể đc tư duy tổng thể của người trong cuộc chơi trading.

Mình thấy bọn Nga nó dùng AI scan mô hình và mỗi tuần cho chạy tối ưu 1 lần. Nói chung sài bot cũng là cả 1 nghệ thuật, kaka

Nói chung Bot là 1 trợ lý rất tốt
 
Bài viết hay quá ad ạ, rất có ích với những trader định lượng. Có bài viết nào mới tag e với nha.
Ad làm 1 bài về Doob martingale đi ạ
 
bài viết hay quá, bạn ơi mình có chút muốn trao đổi, mà chưa biết cách liên hệ với bạn, bạn liên hệ với mình qua zalo 0393054043 nhé bạn. Cảm ơn bạn
 

BÌNH LUẬN MỚI NHẤT

  • DuongHuy trong Phân tích Forex - Vàng - Hàng hóa 232 Xem / 17 Trả lời
  • Mạc An trong Phân tích Forex - Vàng - Hàng hóa 415 Xem / 18 Trả lời
  • DuongHuy trong Phân tích Forex - Vàng - Hàng hóa 103 Xem / 4 Trả lời
  • Quíc Óp trong Phân tích Forex - Vàng - Hàng hóa 138 Xem / 3 Trả lời
  • lapuma trong Kiến thức Trading - Kinh nghiệm Trading 235,440 Xem / 1,065 Trả lời
  • Berkeley trong Phân tích Forex - Vàng - Hàng hóa 66 Xem / 1 Trả lời
  • lapuma trong Kiến thức Trading - Kinh nghiệm Trading 509 Xem / 21 Trả lời
  • AdBlock Detected

    We get it, advertisements are annoying!

    Sure, ad-blocking software does a great job at blocking ads, but it also blocks useful features of our website. For the best site experience please disable your AdBlocker.

    Back
    Bên trên