Menemukan portofolio efisien mean-variance
Portofolio efisien mean-variance dapat diperoleh sebagai solusi dari meminimalkan varians portofolio dengan kendala bahwa ekspektasi imbal hasil portofolio sama dengan imbal hasil target. Fungsi R yang praktis untuk melakukan ini adalah portfolio.optim() dalam paket R tseries. Implementasi default-nya mencari bobot portofolio efisien mean-variance dengan kendala bahwa imbal hasil portofolio sama dengan imbal hasil portofolio berbobot sama. Satu-satunya argumen yang diperlukan adalah data imbal hasil bulanan pada komponen portofolio yang bobotnya perlu ditentukan.
Variabel returns yang berisi imbal hasil bulanan saham DJIA sudah dimuat di konsol.
Latihan ini adalah bagian dari kursus
Pengantar Analisis Portofolio di R
Petunjuk latihan
- Muat pustaka
tseries. - Buat portofolio efisien mean-variance dari imbal hasil bulanan menggunakan default
portfolio.optim()yang menargetkan imbal hasil portofolio berbobot sama, dan simpan keluarannya ke variabelopt. - Buat vektor bobot dari portofolio teroptimasi Anda. Bobot portofolio dapat ditemukan di
opt$pw. Sebut inipf_weights. - Tetapkan nama aset menggunakan kode yang disediakan.
- Pilih bobot optimum dari
pf_weightsyang lebih besar atau sama dengan 1%, sebut iniopt_weights. - Gunakan barplot() untuk memvisualisasikan distribusi
opt_weights. - Cetak ekspektasi imbal hasil portofolio (
opt$pm) dan volatilitas (opt$ps) dari portofolio teroptimasi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Load tseries
# Create an optimized portfolio of returns
opt <- portfolio.optim(___)
# Create pf_weights
pf_weights <- ___$pw
# Assign asset names
names(pf_weights) <- colnames(returns)
# Select optimum weights opt_weights
opt_weights <- pf_weights[___ >= 0.01]
# Bar plot of opt_weights
# Print expected portfolio return and volatility
___$pm
___$ps