Comece agoraComece grátis

Traçando preços de títulos versus rendimentos

Conseguir traçar um gráfico de preços de títulos versus rendimentos ajuda a investigar o que pode acontecer com um título ou uma carteira de títulos em diferentes níveis de taxas de juros no mercado.

Agora você vai criar um gráfico de preços de títulos versus rendimentos, mas desta vez para dois títulos com prazos de vencimento diferentes. Você fará isso adicionando colunas extras ao seu DataFrame do pandas para cada título adicional. Os títulos que você vai considerar pagam ambos um cupom de 5%, mas agora você vai traçar um título de 5 anos e outro de 10 anos.

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

Ver curso

Instruções do exercicio

  • Crie um array de rendimentos de títulos de 0 a 20 (não inclusivo) em incrementos de 0,1.
  • Converta esse array em um DataFrame do pandas e nomeie a coluna como bond_yield.
  • Adicione mais duas colunas, uma para cada título (5 anos e 10 anos), e encontre o preço para um dado nível de rendimento.
  • Trace um gráfico desses títulos, definindo o rótulo do eixo x como Yield (%) e o rótulo do eixo y como Bond Price (USD).

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# 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()
Editar e Executar Código