Coronavírus, Volatilidade e Ibovespa

A proliferação do coronavírus fez aumentar a volatilidade global em janeiro, tendo impactos negativos no mercado financeiro. Para ilustrar, vamos nesse Comentário de Conjuntura relacionar um índice de volatilidade, o VIX, com o índice Bovespa. Para isso, carregamos alguns pacotes como abaixo.


library(quantmod)
library(dplyr)
library(tidyr)
library(ggplot2)
library(scales)
library(png)
library(grid)
library(ggalt)

Carregados os pacotes, nós usamos a função getSymbols do pacote quantmod para coletar os dados do IBOV e do VIX. O primeiro é coletado a partir do yahoo finance, enquanto o segundo é coletado a partir do FRED.


ibov = getSymbols("^BVSP",src="yahoo")
vix = getSymbols('VIXCLS', src='FRED')
data1 = tibble(dates=as.Date(time(VIXCLS)), vix=VIXCLS)
data2 = tibble(dates=as.Date(time(BVSP)), ibov=BVSP$BVSP.Close)
data = inner_join(data1, data2, by='dates') %>%
drop_na()

Com os dados coletados, podemos gerar um gráfico como abaixo.


img <- readPNG('logo.png')
g <- rasterGrob(img, interpolate=TRUE)

data_select = data[data$ibov < 120000 & data$vix > 5 &
data$ibov > 90000 & data$vix < 30,]

ggplot(data, aes(x=vix, y=ibov/1000))+
geom_point(size=.6)+
geom_encircle(aes(x=vix, y=ibov/1000),
data=data_select,
color="blue",
size=2,
expand=0.08)+
geom_smooth(aes(x=vix, y=ibov/1000),
data=data_select,
method='lm',
se=FALSE,
colour='red',
size=.8)+
labs(x='VIX Index', y='Ibovespa (mil)',
title='Ibovespa vs. Volatilidade Global (VIX Index)',
caption='Fonte: analisemacro.com.br')+
theme(panel.background = element_rect(fill='#acc8d4',
colour='#acc8d4'),
plot.background = element_rect(fill='#8abbd0'),
axis.line = element_line(colour='black',
linetype = 'dashed'),
axis.line.x.bottom = element_line(colour='black'),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.position = 'bottom',
legend.background = element_rect((fill='#acc8d4')),
legend.key = element_rect(fill='#acc8d4',
colour='#acc8d4'),
plot.margin=margin(5,5,15,5))+
annotation_custom(g,
xmin=60,
xmax=80,
ymin=75, ymax=120)

E o gráfico...

Como esperado, há uma correlação negativa entre o IBOV e o VIX. Abaixo, mostramos que houve um aumento da volatilidade nas últimas semanas associado ao coronavírus.

(*) Mais sobre como modelar o VIX em nosso Curso de Econometria Financeira usando o R.

___________


(*) O script completo do Comentário estará disponível logo mais no Clube do Código.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como automatizar tarefas repetitivas usando Python? Um exemplo para largar o Excel

Manter relatórios diários com dados e análises atualizados é um desafio, pois envolve várias etapas: coleta de dados, tratamento de informações, produção de análises e atualização de relatório. Para superar este desafio algumas ferramentas como Python + Quarto + GitHub podem ser usadas para automatizar tudo que for automatizável. Neste artigo mostramos um exemplo com dados do mercado financeiro.

Criando um Dashboard de análise de Ações no Python

Um Dashboard é um painel de controle que consolida uma variedade de informações sobre um determinado objeto de estudo em um ou mais painéis. Ele simplifica significativamente o processo de análise de dados, oferecendo uma visão global e fácil de entender. Uma maneira simples de construir um Dashboard para acompanhar uma ação específica é utilizando duas ferramentas: Quarto e Python. Neste post, mostramos o resultado da criação de um Dashboard de Ação.

Analisando séries temporais no Python e esquecendo de vez o Excel

Séries temporais representam uma disciplina extremamente importante em diversas áreas, principalmente na economia e na ciência de dados. Mas, afinal, como lidar com esses dados que se apresentam ao longo do tempo? Neste exercício, demonstraremos como compreender uma série temporal e como o Python se destaca como uma das melhores ferramentas para analisar esse tipo de dado.

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.