यील्ड के मुकाबले बॉन्ड प्राइस का प्लॉट बनाना
यील्ड के मुकाबले बॉन्ड प्राइस का ग्राफ बनाना यह जाँचने में मदद करता है कि मार्केट में अलग-अलग इंटरेस्ट रेट स्तरों पर किसी बॉन्ड या बॉन्ड्स के पोर्टफोलियो के साथ क्या हो सकता है.
अब आप यील्ड के मुकाबले बॉन्ड प्राइस का एक ग्राफ बनाएँगे, लेकिन इस बार अलग-अलग मैच्योरिटी वाले दो बॉन्ड्स के लिए. आप यह अपने pandas DataFrame में हर अतिरिक्त बॉन्ड के लिए अतिरिक्त कॉलम जोड़कर करेंगे. जिन बॉन्ड्स पर आप विचार करेंगे वे दोनों 5% कूपन देंगे, पर अब आप 5 साल और 10 साल के बॉन्ड का प्लॉट बनाएँगे.
numpy, numpy_financial, pandas, और matplotlib पहले से ही क्रमशः np, npf, pd, और plt के रूप में इम्पोर्ट किए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में बॉन्ड वैल्यूएशन और एनालिसिस
अभ्यास निर्देश
- 0 से 20 (20 शामिल नहीं) तक 0.1 के इन्क्रीमेंट में बॉन्ड यील्ड्स की एक array बनाएँ.
- इस array को
pandasDataFrame में बदलें और कॉलम का नामbond_yieldरखें. - दो और कॉलम जोड़ें, प्रत्येक बॉन्ड (5-year और 10-year) के लिए, और दिए गए यील्ड स्तर पर प्राइस निकालें.
- इन बॉन्ड्स का ग्राफ प्लॉट करें, जहाँ x-axis लेबल
Yield (%)और y-axis लेबलBond Price (USD)सेट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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()