Análise dos títulos do Tesouro Direto com o R

A forte aversão a risco que tomou conta do mercado nas últimas semanas não deixou impune o mercado de títulos públicos. Uma análise dos yields associados aos principais títulos negociados pelo chamado Tesouro Direto mostra o stress que tem tomado conta dos investidores. Para ilustrar, vamos utilizar o pacote GETTDData para coletar os dados diretamente do Tesouro Direto, bem como outros pacotes do R para tratamento e visualização dos dados.


library(tidyverse)
library(tidyquant)
library(timetk)
library(scales)
library(quantmod)
library(GetTDData)
library(ecoseries)
library(RColorBrewer)

Com os pacotes carregados no meu arquivo .Rmd, posso começar a coletar os dados. Eu começo pelas NTN-B, agora nomeadas como Tesouro IPCA. O código abaixo faz o download e a leitura das planilhas.


download.TD.data('NTN-B')
ntnb <- read.TD.files(dl.folder = 'TD Files',
asset.codes = 'NTN-B')

A seguir, nós podemos visualizar alguns dos títulos que acabamos de coletar tendo como referência janeiro do ano passado.


filter(ntnb, ref.date > '2019-01-01') %>%
ggplot(aes(x=ref.date, y=yield.bid*100, colour=asset.code))+
geom_line()+
geom_hline(yintercept=0, colour='black', linetype='dashed')+
scale_x_date(breaks = date_breaks("1 month"),
labels = date_format("%b/%Y"))+
theme(axis.text.x=element_text(angle=45, hjust=1))+
labs(x='', y='% a.a.',
title='NTN-B',
caption='Fonte: Tesouro Direto')

Como se vê pelo gráfico, há um nítido salto nos yields, provocado pelo aumento da incerteza. Como proxy, aliás, para esse aumento de incerteza, podemos visualizar o comportamento do risco-país. Podemos coletá-lo a partir do site do IPEADATA com o pacote ecoseries. O código a seguir ilustra.


embi = series_ipeadata('40940', periodicity = 'D')$serie_40940
filter(embi, data > '2019-01-01') %>%
ggplot(aes(x=data, y=valor))+
annotate("rect", fill = "gray", alpha = 0.5,
xmin = as.Date('2020-02-15'),
xmax = as.Date('2020-04-28'),
ymin = -Inf, ymax = Inf)+
geom_line()+
scale_x_date(breaks = date_breaks("1 month"),
labels = date_format("%b/%Y"))+
theme(axis.text.x=element_text(angle=45, hjust=1))+
labs(x='', y='Índice',
title='EMBI+ Risco-Brasil',
caption='Fonte: IPEADATA')

De fato, houve um salto no risco-Brasil de meados de fevereiro para cá, o que reflete os desdobramentos da pandemia do coronavírus e também, infelizmente, o aumento da incerteza doméstica.

_____________________

(*) Isso e muito mais você irá aprender no nosso Novo Curso Mercado Financeiro e Gestão de Portfólios.


Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como automatizar o tratamento de dados feito no Excel usando o Python?

Segundo a pesquisa “State of Data Science”, profissionais de dados gastam 3 horas/dia (38% do tempo) apenas preparando os dados, antes mesmo de analisá-los. Neste artigo advogamos que este gasto de tempo pode ser drasticamente reduzido ao utilizar ferramentas open source, como Pandas e Python, para automatizar tarefas repetitivas que costumam ser feitas em Excel.

A gramática dos gráficos: como deixar de criar gráficos no Excel e usar o plotnine no Python

A etapa de visualização de dados refere-se a uma parte fundamental da análise de dados, pois permite não somente compreender os dados que estamos analisando, mas como também é uma ferramenta útil para explanar os resultados encontrados. Mas qual a forma mais fácil de construir um gráfico, como podemos melhorar a produtividade nesta tarefa? É onde podemos aplicar a gramática dos gráficos e construir com a biblioteca plotnine no Python.

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.