Calcular a duration aproximada de um título
Uma aproximação útil da fórmula de duration é chamada de duration aproximada, dada por $$(P(down) - P(up)) / (2 * P * \Delta y)$$
onde \(P\) é o preço do título, \(P(down)\) é o preço do título se o yield diminuir, \(P(up)\) é o preço do título se o yield aumentar, e \(\Delta y\) é a variação esperada no yield.
A fórmula completa de duration é mais complexa. Se tiver interesse, você pode consultar o capítulo "Fixed Income" do meu livro como referência para essa fórmula.
Neste exercício, você vai calcular a duration aproximada de um título com valor de face de $100, taxa de cupom de 10%, 20 anos até o vencimento, yield to maturity de 10% e uma variação esperada de 1% no yield. Para fazer esse cálculo, use a conhecida função bondprc(), que já foi carregada no ambiente de trabalho.
Este exercício faz parte do curso
Avaliação e Análise de Títulos em R
Instruções do exercício
- Use
bondprc()para calcular o preço do título hoje dado um yield de 10%. Salve empxe depois visualizepx. - Use outra chamada a
bondprc()para calcular o preço do título (px_up) se o yield aumentar em 1%. - Use uma terceira chamada a
bondprc()para calcular o preço do título (px_down) se o yield diminuir em 1%. - Use seus três objetos (
px,px_up,px_down) para calcular a duration aproximada assumindo uma variação de 1% nos yields.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Calculate bond price today
px <- bondprc(p = ___, r = ___, ttm = ___, y = ___)
px
# Calculate bond price if yields increase by 1%
px_up <-
px_up
# Calculate bond price if yields decrease by 1%
px_down <-
px_down
# Calculate approximate duration
duration <- (___ - ___) / (___ * ___ * ___)
duration