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

Kısıtlar ekle

Kısıtlar, add.constraint() fonksiyonu ile portföy belirtimi nesnesine eklenir. Eklenen her kısıt ayrı bir nesnedir ve portföy nesnesindeki constraints bölümünde saklanır. Böylece kısıtlar modüler olur; portföy nesnesindeki kısıtları kolayca ekleyebilir, kaldırabilir veya değiştirebilirsin. add.constraint() için gereken argümanlar; kısıtın ekleneceği portfolio, kısıt type’ı ve ilgili kısıt türünün kurucu fonksiyonuna ... ile iletilen isimlendirilmiş argümanlardır.

Temel kısıt türleri:

  • Ağırlıkların toplamına kısıt koy
    • weight_sum, weight, leverage
    • full_investment, min_sum = max_sum = 1 ayarlayan özel bir durumdur
    • dollar_neutral, min_sum = max_sum = 0 ayarlayan özel bir durumdur
  • Tekil varlık ağırlıkları için kısıt belirt
    • box
    • long_only, min = 0 ve max = 1 ayarlayan özel bir durumdur
  • Varlıkları gruba (sektör, bölge, varlık sınıfı vb.) göre ağırlık toplamı için kısıt belirt
    • group
  • Hedef ortalama getiri üzerine kısıt belirt
    • return

Bu egzersizde, daha yaygın kullanılan birkaç kısıt türünü ekleyeceksin. Yukarıdaki temel kısıt türlerine ek olarak, PortfolioAnalytics pozisyon limiti, devir hızı (turnover), çeşitlendirme, faktör maruziyeti ve kaldıraç maruziyeti kısıt türlerini de destekler. Diğer kısıt türleriyle ilgileniyorsan, kısıt kurucularının yardım dosyalarına bak. Yardım dosyalarında kısıt türünün açıklaması ve örnek kod bulunur.

Bu egzersiz

R ile Orta Düzey Portföy Analizi

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

Egzersiz talimatları

  • Ağırlıklar toplamının minimumu 1 ve maximumu 1 olacak şekilde bir weight_sum kısıtı ekle.
  • İlk beş varlığın minimum ağırlığı %10, kalan varlıkların minimum ağırlığı %5 olacak şekilde bir box kısıtı ekle. Tüm varlıkların maksimum ağırlığı %40 olsun.
  • 1, 5, 7, 9, 10 ve 11. varlıklar birinci grup; 2, 3, 4, 6, 8 ve 12. varlıklar ikinci grup olacak şekilde bir group kısıtı ekle. Her grup için minimum ağırlığı %40, maksimum ağırlığı %60 olarak ayarla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Add the weight sum constraint
port_spec <- add.constraint(portfolio = ___, type = ___, min_sum = ___, max_sum = ___)

# Add the box constraint
port_spec <- add.constraint(portfolio = ___, type = ___, min = c(___), max = ___)

# Add the group constraint
port_spec <- add.constraint(portfolio = ___, type = ___, groups = list(c(___), c(___)), group_min = ___, group_max = ___)


# Print the portfolio specification object

Kodu Düzenle ve Çalıştır