BaşlayınÜcretsiz Başlayın

Dönemsel yeniden dengeleme ile optimizasyon

Optimizasyonu dönemsel yeniden dengeleme ile çalıştırmak ve geriye dönük testin örnek dışı sonuçlarını analiz etmek, kısıtları ve hedefleri daha iyi anlamak ve gerekirse iyileştirmek için önemli bir adımdır. optimize.portfolio.rebalancing() fonksiyonu, örnek dışı performansı incelemek için dönemsel yeniden dengelemeli optimizasyonu (backtesting) destekler. optimize.portfolio() için kullanılan argümanlara ek olarak, rebalance_on ile dönemsel yeniden dengeleme sıklığı belirtilmeli, ilk optimizasyon için eğitim verisi olarak kullanılacak dönem sayısını belirtmek üzere training_period ve optimizasyonun pencere genişliği için dönem sayısını belirtmek üzere rolling_window tanımlanmalıdır. rolling_window NULL olarak ayarlanırsa, her optimizasyon çalıştığı dönemde mevcut tüm veriyi kullanır.

Bu egzersizde hesaplama süresini azaltmak için, rastgele portföy kümesi rp 50 permütasyonla oluşturulmuştur ve test edilecek portföy sayısını belirleyen search_size 1000 olarak ayarlanmıştır. Portföyleri gerçekten kendin optimize ediyorsan, muhtemelen daha fazla portföy test etmek isteyeceksin (search_size için varsayılan değer 20.000’dir)!

Bu egzersiz

R ile Orta Düzey Portföy Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Optimizasyonu üç aylık yeniden dengeleme ile çalıştır. Eğitim periyodunu ve kayan pencereyi 60 dönem olarak ayarla. Veri kümesi aylık olduğu için 5 yıllık geçmiş veriyi kullanıyoruz. Optimizasyon çıktısını opt_rebal adlı bir değişkene ata.
  • Optimizasyonun sonuçlarını yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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
Kodu Düzenle ve Çalıştır