Optimisasi dengan rebalancing periodik
Menjalankan optimisasi dengan rebalancing periodik dan menganalisis hasil out-of-sample dari backtest merupakan langkah penting untuk lebih memahami dan berpotensi menyempurnakan kendala serta objektif. optimize.portfolio.rebalancing() mendukung optimisasi dengan rebalancing periodik (backtesting) untuk menilai kinerja out-of-sample. Selain argumen untuk optimize.portfolio(), frekuensi rebalancing periodik harus ditentukan dengan rebalance_on, training_period untuk menentukan jumlah periode yang digunakan sebagai data pelatihan untuk optimisasi awal, dan rolling_window untuk menentukan jumlah periode sebagai lebar jendela optimisasi. Jika rolling_window disetel ke NULL, setiap optimisasi akan menggunakan semua data yang tersedia pada periode saat optimisasi dijalankan.
Untuk mengurangi waktu komputasi pada latihan ini, himpunan portofolio acak, rp, dibuat menggunakan 50 permutasi, dan search_size, yaitu berapa banyak portofolio yang akan diuji, disetel ke 1000. Jika Anda benar-benar mengoptimalkan portofolio sendiri, Anda mungkin ingin menguji lebih banyak portofolio (nilai default search_size adalah 20.000)!
Latihan ini adalah bagian dari kursus
Analisis Portofolio Tingkat Menengah di R
Petunjuk latihan
- Jalankan optimisasi dengan rebalancing triwulanan. Setel training period dan rolling window ke 60 periode. Himpunan data bersifat bulanan sehingga kita menggunakan 5 tahun data historis. Simpan keluaran optimisasi ke variabel bernama
opt_rebal. - Cetak hasil optimisasi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Run the optimization backtest with quarterly rebalancing
opt_rebal <- optimize.portfolio.rebalancing(R = ___, portfolio = ___, optimize_method = ___, rp = rp, trace = TRUE, search_size = 1000, rebalance_on = ___, training_period = ___, rolling_window = ___)
# Print the output of the optimization backtest