Zacznij terazZacznij za darmo

Wykres cen obligacji w zależności od rentowności

Wykres cen obligacji w zależności od rentowności pozwala zbadać, jak zmienią się ceny obligacji lub portfela obligacji przy różnych poziomach stóp procentowych na rynku.

Teraz stworzysz taki wykres dla dwóch obligacji o różnych terminach zapadalności. Rozbudujesz w tym celu DataFrame biblioteki pandas o dodatkowe kolumny – po jednej dla każdej obligacji. Obie rozpatrywane obligacje wypłacają kupon w wysokości 5%, ale tym razem porównasz obligację 5-letnią i 10-letnią.

Biblioteki numpy, numpy_financial, pandas i matplotlib zostały już zaimportowane odpowiednio jako np, npf, pd i plt.

To ćwiczenie jest częścią kursu

Wycena i analiza obligacji w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz tablicę rentowności obligacji od 0 do 20 (wyłącznie) z krokiem 0,1.
  • Przekształć tę tablicę w DataFrame biblioteki pandas i nadaj kolumnie nazwę bond_yield.
  • Dodaj dwie kolumny – po jednej dla każdej obligacji (5-letniej i 10-letniej) – i wyznacz cenę dla danego poziomu rentowności.
  • Narysuj wykres tych obligacji, ustawiając etykietę osi X na Yield (%), a etykietę osi Y na Bond Price (USD).

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod