予想価格と実際価格 II
異なる利回り水準に対するデュレーションを用いた債券の予想価格をプロットし、実際の債券価格と比較すると、デュレーションの精度を視覚的に確認できます。
前の演習では、債券のデュレーションを求め、各利回り水準での実際の債券価格を持つDataFrameを作成しました。この演習では、このDataFrameにデュレーションを用いた予想債券価格の列を追加し、予想価格と実際価格の差をプロットします。
numpy、numpy_financial、pandas、matplotlib はそれぞれ np、npf、pd、plt としてすでにインポート済みで、前の演習のコードも用意されています。
この演習はコースの一部です
Pythonで学ぶ債券の評価と分析
演習の手順
- 現在の利回りから元の利回りを引いた列
yield_changeを追加します。 - ドル・デュレーションを用いた予想価格変化の列
price_changeを追加します。 - 元の債券価格と価格変化を組み合わせた列
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"])
____