CommencezCommencez gratuitement

Tracer la duration en fonction du facteur

Tracer la duration par rapport à un facteur comme l'échéance, le coupon ou le rendement est un excellent moyen de voir comment ce facteur influence la duration d'une obligation.

Dans la vidéo, nous avons tracé la duration en fonction de l'échéance. Dans cet exercice, vous allez faire la même chose pour le taux du coupon. Vous utiliserez une obligation de 10 ans avec un rendement de 5 % et une valeur nominale de 100 USD.

numpy, numpy_financial, pandas et matplotlib ont déjà été importés pour vous sous les alias np, npf, pd et plt, respectivement.

Cette activité fait partie du cours

Évaluation et analyse des obligations en Python

Voir le cours

Instructions de l’exercice

  • Créez un tableau de coupons allant de 0 à 10 par incréments de 0,1, puis convertissez-le en DataFrame pandas.
  • Ajoutez quatre colonnes supplémentaires au DataFrame : price, price_up, price_down et duration pour l'obligation.
  • Tracez un graphique avec bond_coupon sur l'axe des x et duration sur l'axe des y.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Create array of coupon rates and assign to pandas DataFrame
bond_coupon = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['____'])

# Calculate bond price, price_up, price_down, and duration
bond['price'] = -npf.pv(rate=0.05, nper=10, pmt=bond['bond_coupon'], fv=100)
bond['price_up'] = ____
bond['price_down'] = ____
bond['duration'] = (bond['____'] - bond['____']) / (2 * bond['____'] * 0.01)

# Plot coupon vs. duration, add labels & title, show plot
plt.plot(____, ____)
plt.xlabel('Coupon (%)')
plt.ylabel('Duration (%)')
plt.show()
Modifier et exécuter le code