Dışbükeyliğin faktöre karşı grafiğini çizme
Belirli bir faktörün tahvil dışbükeyliği üzerindeki etkisini kontrol etmenin bir yolu da bu faktörü doğrudan tahvilin dışbükeyliğine karşı grafiğe dökmektir.
Bu egzersizde, vadesi 20 yıl olan, kuponu %6 ve nominal değeri 100 ABD doları olan bir tahvilin fiyatını hesaplayacak, ardından farklı getiri seviyeleri için bu tahvilin dışbükeyliğini bulacaksın.
numpy, numpy_financial, pandas ve matplotlib senin için sırasıyla np, npf, pd ve plt olarak içe aktarılmış durumda.
Bu egzersiz
Python ile Tahvil Değerleme ve Analizi
kursunun bir parçasıdırEgzersiz talimatları
- 0'dan 20'ye kadar 0,1 artışlarla tahvil getirilerinden bir dizi oluştur ve bunu bir
pandasDataFrame'ine dönüştür. - Tahvilin fiyatını bul, getirileri yukarı ve aşağı kaydırıp yeniden fiyatla, sonra tahvilin dışbükeyliğini hesapla.
- x ekseninde tahvil getirileri, y ekseninde dışbükeylik olacak şekilde bir grafik çiz.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Create array of bond yields and covert to pandas DataFrame
bond_yields = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['bond_yield'])
# Find price of bond, reprice for higher and lower yields, calculate convexity
bond['price'] = -npf.pv(rate=bond['____'] / 100, nper=____, pmt=____, fv=____)
bond['price_up'] = ____
bond['price_down'] = ____
bond['convexity'] = (bond['____'] + bond['____'] - 2 * bond['____']) / (bond['____'] * 0.01 ** 2)
# Create plot of bond yields against convexity, add labels to axes, display plot
plt.plot(bond['____'], bond['____'])
plt.xlabel('Yield (%)')
plt.ylabel('Convexity')
____