Preços previstos vs. reais I
Traçar os preços previstos de títulos para diferentes níveis de rendimento usando a duration e, em seguida, comparar esses preços previstos com os preços reais do título é uma ótima forma de visualizar a precisão da duration.
Neste exercício, você vai começar calculando a duration do título, além do preço do título em diferentes níveis de yield. No próximo exercício, você vai calcular o preço previsto a partir da duration e traçar a diferença.
O título considerado é um papel de 10 anos que paga um cupom anual de 5% e tem um yield to maturity de 5%.
numpy, numpy_financial, pandas e matplotlib já foram importados para você como np, npf, pd e plt, respectivamente.
Este exercicio faz parte do curso
Valoração e Análise de Títulos em Python
Instruções do exercicio
- Calcule a duration e a dollar duration do título.
- Crie um array de yields do título de 0 a 10 em incrementos de 0,1 e converta esse array em um DataFrame do
pandaschamadobond_yield. - Adicione a coluna
pricecontendo o preço do título para cada nível de yield.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Price a 10 year bond with 5% coupon and 5% yield, reprice at higher and lower yields
price = ____
price_up = ____
price_down = ____
# Find the duration and dollar duration of the bond
duration = ____
dollar_duration = ____ * ____ * ____
# Create an array of yields from 0 to 10 in steps of 0.1, convert to DataFrame
bond_yields = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['bond_yield'])
# Add a column called price with the bond price for each yield level
bond['price'] = -npf.pv(rate=bond['bond_yield'] / 100, ____, ____, ____)