Quantitative Finance adalah sebuah disiplin yang erat kaitannya dengan probabilitas. Apapun instrumen investasi yang kita pilih, ada peluang–sekecil apapun itu–modal yang kita akan hangus tanpa sisa. Tentu itu adalah contoh yang ekstrim, namun pada dasarnya keuntungan dan kerugian adalah dua hal yang selalu beriringan dalam berinvestasi. Salah satu tujuan utama semua investor (maupun trader) adalah memilih investasi apa yang dapat memberikan keuntungan yang maksimal dan kerugian yang minimal. Namun pertanyaannya, bagaimana kita tahu bahwa sebuah instrumen investasi bisa memenuhi kriteria tersebut?
Sekarang bayangkan ada sebuah karung yang berisi 100 butir kelereng yang hanya memiliki dua warna, merah dan putih. Anda diminta untuk mengambil satu buah kelereng dari karung tersebut secara acak sebanyak 1000 kali percobaan (setiap kelereng yang terpilih kemudian dimasukkan lagi ke karung tersebut). Dari seribu percobaan, Anda mencatat bahwa kelereng berwarna merah terpilih sebanyak 250 kali. Maka, Anda dapat menyimpulkan bahwa di karung tersebut ada sekitar 25 kelereng berwarna merah.
Nah, simulasi Monte Carlo memiliki konsep yang sama dengan analogi di atas. Simulasi ini membantu kita untuk menebak-nebak dengan mencoba angka-angka random (sampel acak) secara berulang-ulang untuk mengetahui hasil yang didapat. Dengan Monte Carlo, kita bisa menguji seberapa besar sebuah kemungkinan bisa terjadi (outcome) berdasarkan sampel acak yang memiliki distribusi probabilitas tertentu.
Daripada bingung dengan definisi di atas, lebih baik kita langsung hands-on dengan sebuah contoh penggunaan metode ini dalam pemilihan instrumen investasi. Ini adalah contoh yang amat sangat disederhanakan, namun kira-kira seperti ini:
Ada sebuah saham, katakanlah dengan kode ABCD. Saham ABCD ini dalam 5 tahun terakhir memiliki rata-rata return harian sebesar 0,1% dengan standar deviasi sebesar 2%. Dengan menggunakan simulasi Monte Carlo, kita bisa mengestimasikan seberapa besar modal Rp1 juta yang kita investasikan ke saham tersebut akan berkembang (atau menyusut) satu tahun setelah kita beli saham ABCD tersebut.
Dengan asumsi ada 252 hari perdagangan dalam satu tahun, dan jumlah simulasi sebanyak 10.000 iterasi, maka hasil simulasinya akan tampak seperti grafik berikut:

Sumbu X pada grafik di atas menyatakan waktu dalam hari dan sumbu Y menyatakan nilai investasi dalam juta Rupiah. Hasil percobaan simulasi yang ditampilkan oleh grafik di atas menyimpulkan bahwa ada kemungkinan yang cukup besar nilai investasi kita akan belipat ganda 2-3x dari nilai investasi awal, dan bahkan ada peluang menjadi 4x nilai awal. Namun perlu diperhatikan juga ada peluang bahwa modal yang kita alokasikan bisa tergerus menjadi hanya setengahnya saja di akhir tahun. Dengan sekilas mengamati grafik di atas, kita tentu menyimpulkan bahwa saham ABCD memiliki peluang untuk memaksimalkan keuntungan dan meminimalisir kerugian, walaupun sebenarnya tidak perlu repot-repot melakukan simulasi Monte Carlo jika ada saham yang benar-benar memiliki rata-rata return 0,1% perhari dan standar deviasi 2% 😆.
Jadi kurang lebih, seperti itu lah cara menguji apakah sebuah instrumen investasi akan memberikan hasil yang terbaik atau tidak. Tentu contoh di atas adalah sebuah simplifikasi yang brutal. Karena pada kenyataannya, nilai return sebuah instrumen jarang (bahkan hampir tidak ada) yang mengikuti distribusi normal, juga pergerakan harga aset juga tidak sepenuhnya random, namun seperti Brownian motion. Bagaimanapun itu, artikel ini diharapkan dapat memberikan gambaran sederhana bagaimana simulasi Monte Carlo dipakai dalam Quantitative Finance. Karena Monte Carlo merupakan salah satu metode manajemen risiko terkenal yang serba guna di berbagai bidang.
Lebih jauh lagi, simulasi Monte Carlo juga bisa menjadi alat bantu untuk kontruksi portofolio investasi Anda dengan menggunakan pendekatan Value at Risk (VaR) ataupun Conditional VaR (CVaR). Dua topik tersebut akan dibahas di artikel yang akan datang.
Terakhir, jika ada yang ingin menggali lebih dalam mengenai metode ini dan belajar bagaimana contoh simulasi di atas tadi dilakukan, berikut ini adalah source code dengan bahasa Python yang dijalankan:
import numpy as np
import matplotlib.pyplot as plt
# Fungsi untuk menjalankan simulasi Monte Carlo
def monte_carlo_simulation(initial_investment, daily_return_mean, daily_return_stddev, num_days, num_simulations):
simulations = np.zeros((num_simulations, num_days + 1))
simulations[:, 0] = initial_investment
for i in range(1, num_days + 1):
daily_returns = np.random.normal(daily_return_mean, daily_return_stddev, num_simulations)
simulations[:, i] = simulations[:, i - 1] * (1 + daily_returns)
return simulations
# Parameter simulasi
initial_investment = 1000000 # Initial investment amount
daily_return_mean = 0.001 # Average daily return (mean)
daily_return_stddev = 0.02 # Daily return standard deviation
num_days = 252 # Number of trading days in a year
num_simulations = 10000 # Number of simulations
# Eksekusi simulasi
simulations = monte_carlo_simulation(initial_investment, daily_return_mean, daily_return_stddev, num_days, num_simulations)
# Plotting hasil simulasi
plt.figure(figsize=(10, 6))
plt.plot(simulations.T, color='blue', alpha=0.5)
plt.title('Simulasi Monte Carlo untuk Pertumbuhan Investasi')
plt.xlabel('Hari')
plt.ylabel('Nilai Investasi')
plt.show()
Silakan berikan pertanyaan atau komentar jika ada hal-hal yang kurang jelas. Cheers!
Leave a Reply