Vykreslení cen dluhopisů v závislosti na výnosech
Graf závislosti cen dluhopisů na výnosech je skvělý nástroj pro analýzu toho, jak se bude chovat dluhopis nebo portfolio dluhopisů při různých úrovních úrokových sazeb na trhu.
Tentokrát vytvoříš graf pro dva dluhopisy s odlišnou dobou splatnosti. Dosáhneš toho tak, že do pandas DataFrame přidáš další sloupce – jeden pro každý dluhopis. Oba dluhopisy budou vyplácet 5% kupón, ale budeš pracovat s 5letým a 10letým dluhopisem.
numpy, numpy_financial, pandas a matplotlib jsou již importovány jako np, npf, pd a plt.
Toto cvičení je součástí kurzu
Oceňování a analýza dluhopisů v Pythonu
Pokyny k cvičení
- Vytvoř pole výnosů dluhopisů od 0 do 20 (bez 20) s krokem 0,1.
- Převeď toto pole na
pandasDataFrame a pojmenuj sloupecbond_yield. - Přidej dva další sloupce – jeden pro každý dluhopis (5letý a 10letý) – a pro každou úroveň výnosu vypočítej cenu.
- Vykresli graf těchto dluhopisů s popiskem osy x
Yield (%)a popiskem osy yBond Price (USD).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()