Прогнозні проти фактичних цін II
Побудувати графік прогнозних цін облігацій для різних рівнів дохідності за допомогою дюрації, а потім порівняти ці прогнозні значення з фактичними цінами — чудовий спосіб візуалізувати точність дюрації.
У попередній вправі ви обчислили дюрацію облігації та створили датафрейм із фактичними цінами облігації на кожному рівні дохідності. У цій вправі ви додасте до цього датафрейму стовпці з прогнозними цінами облігації, отриманими за допомогою дюрації, а потім побудуєте графік різниці між прогнозною та фактичною ціною.
numpy, numpy_financial, pandas і matplotlib уже імпортовано для вас як np, npf, pd та plt відповідно, так само як і код із попередньої вправи.
Ця вправа є частиною курсу
Оцінювання та аналіз облігацій у Python
Інструкції до вправи
- Додайте стовпець
yield_changeяк поточна дохідність мінус початкова дохідність. - Додайте стовпець
price_changeіз прогнозною зміною ціни облігації за допомогою dollar duration. - Додайте стовпець
predicted_price, поєднавши початкову ціну облігації зі зміною ціни. - Додайте графік дохідностей облігації проти фактичних цін і проти прогнозних цін на тих самих віссях та покажіть графік.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Add a column called yield_change with the current yield minus original yield
bond['yield_change'] = (bond['bond_yield'] - ____)
# Find the predicted bond price change using dollar duration then find predicted price
bond['price_change'] = -100 * ____ * bond['yield_change'] / 100
bond['predicted_price'] = ____ + bond['price_change']
# Plot bond yields against predicted and actual prices, add labels, legend, and display
plt.plot(bond['bond_yield'], bond['price'])
plt.plot(____, ____)
plt.xlabel('Yield (%)')
plt.ylabel('Price (USD)')
plt.legend(["Actual Price", "Predicted Price"])
____