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

Ağırlık kısıtları getirmek

Yatırımcılar genellikle portföy ağırlıkları için izin verilen azami değerlerle kısıtlanır. Bu kısıtlar aslında bir avantaj olabilir. Azami ağırlık kısıtının avantajı, ortaya çıkan portföyün belirli varlıklarda daha az yoğunlaşmasıdır. Ancak bir de dezavantajı var. Dezavantajı, aynı hedef getirinin artık mümkün olmayabilmesi ya da daha yüksek oynaklık pahasına elde edilebilmesidir.

Önceki egzersizden hatırlarsan portfolio.optim() fonksiyonu, reshigh argümanı içinde ağırlık kısıtları tanımlamana izin verir. reshigh, her bir varlık için azami ağırlıklardan oluşan bir vektör ister.

Bu egzersizde, farklı azami ağırlık kısıtlarına sahip üç portföy oluşturacaksın. Bu egzersiz için portfolio.optim() fonksiyonunun çıktısını bilmek önemlidir. Bu fonksiyon dört bileşen içeren bir liste döndürür: (i) $pw: portföy ağırlıkları, (ii) $px: tüm portföyün getirileri, (iii) $pm: beklenen getiri portföyü, (iv) $ps: portföy getirilerinin standart sapması.

Bu egzersiz

R ile Portföy Analizine Giriş

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

Egzersiz talimatları

  • returns içindeki her bir varlık (sütun) için rep() fonksiyonunu kullanarak üç farklı azami ağırlık vektörü oluştur. İlk vektör azami ağırlıkları %100, ikincisi %10, üçüncüsü %5 olacak. Sırasıyla bunları max_weights1, max_weights2, max_weights3 olarak adlandır.
  • Azami ağırlıkları %100 olan ve opt1 adını verdiğin bir optimal portföy oluştur.
  • Azami ağırlıkları %10 olan ve opt2 adını verdiğin bir optimal portföy oluştur.
  • Azami ağırlıkları %5 olan ve opt3 adını verdiğin bir optimal portföy oluştur.
  • Her portföy için ağırlığı %1’den büyük olan kaç varlık olduğunu hesapla. Ağırlıklara, portföy adından sonra $pw kullanarak erişebilirsin.
  • Oluşturduğun üç portföyün oynaklıklarını (standart sapmalar $ps) yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Create vectors of maximum weights
max_weights1 <- rep(1, ncol(returns))
max_weights2 <- ___
max_weights3 <- ___

# Create an optimum portfolio with max weights of 100%
opt1 <- portfolio.optim(___, reshigh = ___)

# Create an optimum portfolio with max weights of 10%


# Create an optimum portfolio with max weights of 5%


# Calculate how many assets have a weight that is greater than 1% for each portfolio
sum(opt1$pw > .01)
sum(___$pw > .01)
sum(___$pw > .01)

# Print portfolio volatilites 
opt1$ps
___$__
___$__

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