MulaiMulai sekarang secara gratis

Memplot harga obligasi terhadap yield

Kemampuan memplot grafik harga obligasi terhadap yield dapat membantu menyelidiki apa yang akan terjadi pada suatu obligasi atau portofolio obligasi untuk berbagai tingkat suku bunga di pasar.

Sekarang Anda akan membuat grafik harga obligasi terhadap yield, tetapi kali ini untuk dua obligasi dengan jatuh tempo berbeda. Anda akan melakukannya dengan menambahkan kolom ekstra pada DataFrame pandas untuk setiap obligasi tambahan. Obligasi yang akan Anda pertimbangkan sama-sama membayar kupon 5%, tetapi kini Anda akan memplot obligasi 5 tahun dan 10 tahun.

numpy, numpy_financial, pandas, dan matplotlib telah diimpor untuk Anda masing-masing sebagai np, npf, pd, dan plt.

Latihan ini adalah bagian dari kursus

Penilaian dan Analisis Obligasi dengan Python

Lihat Kursus

Petunjuk latihan

  • Buat sebuah array yield obligasi dari 0 hingga 20 (tidak termasuk) dengan kenaikan 0,1.
  • Ubah array ini menjadi DataFrame pandas dan beri nama kolom bond_yield.
  • Tambahkan dua kolom lagi, masing-masing untuk setiap obligasi (5 tahun dan 10 tahun), dan cari harganya untuk tingkat yield tertentu.
  • Plot grafik dari obligasi-obligasi ini, dengan label sumbu-x Yield (%) dan label sumbu-y Bond Price (USD).

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Create an array of bond yields and convert to DataFrame
bond_yields = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['____'])

# Add columns for different bonds
bond['bond_price_5Y'] = -npf.pv(rate=bond['bond_yield'] / 100, nper=____, pmt=____, fv=____)
bond['bond_price_10Y'] = -npf.pv(rate=____, nper=____, pmt=____, fv=____)

# Plot graph of bonds
plt.plot(bond['bond_yield'], bond['bond_price_5Y'], label='5 Year Bond')
plt.plot(____, ____, label='10 Year Bond')
plt.xlabel(____)
plt.ylabel(____)
plt.legend()
plt.show()
Edit dan Jalankan Kode