ÎncepețiÎncepe gratuit

Reprezentarea grafică a prețurilor obligațiunilor în funcție de randament

Reprezentarea grafică a prețurilor obligațiunilor în funcție de randament te ajută să explorezi cum se comportă o obligațiune sau un portofoliu de obligațiuni la diferite niveluri ale ratelor dobânzilor din piață.

În acest exercițiu vei crea un grafic al prețurilor obligațiunilor în funcție de randament, de această dată pentru două obligațiuni cu scadențe diferite. Vei face acest lucru adăugând coloane suplimentare în DataFrame-ul pandas, câte una pentru fiecare obligațiune. Ambele obligațiuni plătesc un cupon de 5%, dar vei reprezenta grafic o obligațiune pe 5 ani și una pe 10 ani.

numpy, numpy_financial, pandas și matplotlib au fost deja importate pentru tine ca np, npf, pd și, respectiv, plt.

Acest exercițiu face parte din cursul

Evaluarea și analiza obligațiunilor în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Creează un array de randamente ale obligațiunilor de la 0 la 20 (exclusiv), cu incremente de 0,1.
  • Convertește acest array într-un DataFrame pandas și denumește coloana bond_yield.
  • Adaugă încă două coloane, câte una pentru fiecare obligațiune (5 ani și 10 ani), și calculează prețul pentru fiecare nivel de randament.
  • Reprezintă grafic aceste obligațiuni, setând eticheta axei x la Yield (%) și eticheta axei y la Bond Price (USD).

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul