Abstract
No dia 1 de setembro de 2021 o Ministério da Agricultura divulgou a suspeita de dois casos de Encefalopatia Espongiforme, enfermidade conhecida como doença da vaca louca, fato confirmado no dia 4 de Setembro de 2021. O objetivo deste trabalho é compreender os efeitos dessa confirmação em ativos de quatro empresas diferentes: 1)JBS (JBSS3); 2)Marfrig (MLFG3); 3)BRF (BRFS3); 4)Minerva Foods (BEEF3). Como resultado, o efeito da doença foi menor do que o esperado para o período analisado, com esses ativos terminando o período acima do rendimento da IBOVESPA. Destaca-se que a janela do evento foi do dia 30 de agosto ao dia 8 de setembro.A seguir os pacotes utilizados para o desenvolvimento da pesquisa.
library(quantmod)
library(PerformanceAnalytics)
library(data.table)
library(RColorBrewer)
library(ggplot2)
library(reshape2)
library(dplyr)
library(gridExtra)
library(knitr)
Primeiramente, analisa-se o retorno do IBOVESPA. Destaca-se que o índice teve um comportamento com variações pouco significativas durante o período, com exceção do dia 8 de setembro, o que ocorreu, provavelmente, devido à instabilidade política brasileira.
#Definindo Ibov como BenchMark
BenchMarks = '^BVSP'
Ibov= NULL
for (benckmark in BenchMarks) {
Ibov = cbind(Ibov,
getSymbols.yahoo(BenchMarks, from = '2021-8-30', auto.assign = F)[,6])
}
## Warning: ^BVSP contains missing values. Some functions will not work if objects
## contain missing values in the middle of the series. Consider using na.omit(),
## na.approx(), na.fill(), etc to remove or replace them.
#Nomenado Colunas
colnames(Ibov) = c('Ibov')
#Calculando Retorno Ibov
Ret_Ibov = dailyReturn(Ibov) * 100
## Warning in to_period(xx, period = on.opts[[period]], ...): missing values
## removed from data
#Tabela de retorno do IBOVESPA
plot(Ret_Ibov)
Agora, calcula-se o retorno das ações das empresas: 1)JBS (JBSS3); 2)Marfrig (MLFG3); 3)BRF (BRFS3); 4)Minerva Foods (BEEF3), durante a janela do evento.
#Retorno Ação Individual
MRFG3 = getSymbols.yahoo("MRFG3.SA", from = '2021-8-30', auto.assign = F)[,6]
BEEF3 = getSymbols.yahoo("BEEF3.SA", from = '2021-8-30', auto.assign = F)[,6]
JBSS3 = getSymbols.yahoo("JBSS3.SA", from = '2021-8-30', auto.assign = F)[,6]
BRFS3 = getSymbols.yahoo("BRFS3.SA", from = '2021-8-30', auto.assign = F)[,6]
#Retorno ativo Marfrig
Ret_MRFG3 = dailyReturn(MRFG3) * 100
#Retorno ativo Minerva
Ret_BEEF3 = dailyReturn(BEEF3) * 100
#Retorno ativo JBS
Ret_JBSS3 = dailyReturn(JBSS3) * 100
#Retorno ativo BRFoods
Ret_BRFS3 = dailyReturn(BRFS3) * 100
Agora, para fazer a comparação entre as ações das empresas e o IBOVESPA, deve-se organizar as bases de dados em Data Frames. Além disso, cria-se uma variável com datas específicas. Ainda, disponibiliza-se as tabelas de retornos dos ativos.
#Criar uma coluna com datas
Dias_semana = format(as.Date(c('2021-08-30', '2021-08-31', '2021-09-01',
'2021-09-02', '2021-09-03', '2021-09-06', '2021-09-08'), format="%Y-%m-%d"))
#Transformar em Data.frame
Ret_BEEF3 = as.data.frame(Ret_BEEF3)
Ret_BRFS3 = as.data.frame(Ret_BRFS3)
Ret_Ibov = as.data.frame(Ret_Ibov)
Ret_JBSS3 = as.data.frame(Ret_JBSS3)
Ret_MRFG3 = as.data.frame(Ret_MRFG3)
#Tabela de retornos do Indice
Ret_Ibov$Data = Dias_semana
kable(head(Ret_Ibov), format = "markdown")
daily.returns | Data | |
---|---|---|
2021-08-30 | 0.0000000 | 2021-08-30 |
2021-08-31 | -0.8009020 | 2021-08-31 |
2021-09-01 | 0.5177596 | 2021-09-01 |
2021-09-02 | -2.2772957 | 2021-09-02 |
2021-09-03 | 0.2194091 | 2021-09-03 |
2021-09-06 | 0.8004584 | 2021-09-06 |
#Tabelas de retorno dos ativos
Ret_BEEF3$Data = Dias_semana
kable(Ret_BEEF3, format = "markdown")
daily.returns | Data | |
---|---|---|
2021-08-30 | 0.0000000 | 2021-08-30 |
2021-08-31 | -0.9478673 | 2021-08-31 |
2021-09-01 | -1.6746411 | 2021-09-01 |
2021-09-02 | -3.6496350 | 2021-09-02 |
2021-09-03 | -1.6414141 | 2021-09-03 |
2021-09-06 | 6.6752246 | 2021-09-06 |
2021-09-08 | -1.2033694 | 2021-09-08 |
Ret_BRFS3$Data = Dias_semana
kable(Ret_BRFS3, format = "markdown")
daily.returns | Data | |
---|---|---|
2021-08-30 | 0.0000000 | 2021-08-30 |
2021-08-31 | -0.6785411 | 2021-08-31 |
2021-09-01 | 2.5619129 | 2021-09-01 |
2021-09-02 | -1.5820192 | 2021-09-02 |
2021-09-03 | 0.5499197 | 2021-09-03 |
2021-09-06 | 0.8834666 | 2021-09-06 |
2021-09-08 | -2.5020892 | 2021-09-08 |
Ret_JBSS3$Data = Dias_semana
kable(Ret_JBSS3, format = "markdown")
daily.returns | Data | |
---|---|---|
2021-08-30 | 0.0000000 | 2021-08-30 |
2021-08-31 | -0.0320718 | 2021-08-31 |
2021-09-01 | 0.0000000 | 2021-09-01 |
2021-09-02 | -3.0157202 | 2021-09-02 |
2021-09-03 | 2.8779358 | 2021-09-03 |
2021-09-06 | 3.2154277 | 2021-09-06 |
2021-09-08 | -2.5856637 | 2021-09-08 |
Ret_MRFG3$Data = Dias_semana
kable(Ret_MRFG3[,1:2], format = "markdown")
daily.returns | Data | |
---|---|---|
2021-08-30 | 0.0000000 | 2021-08-30 |
2021-08-31 | -2.2889796 | 2021-08-31 |
2021-09-01 | 4.8804295 | 2021-09-01 |
2021-09-02 | -2.1405258 | 2021-09-02 |
2021-09-03 | 1.4740798 | 2021-09-03 |
2021-09-06 | 2.5773149 | 2021-09-06 |
2021-09-08 | -0.1370398 | 2021-09-08 |
Por fim, utiliza-se o pacote GGplot2 para o desenvolvimento de gráficos comparativos.
#Formatando os graficos dos ativos
Graf_BEEF3=ggplot() +
geom_line(data = Ret_BEEF3,aes(group = 1, Data, daily.returns, colour = "Ret_BEEF3"), size = 0.5)+
geom_line(data = Ret_Ibov, aes(Data, daily.returns, group = 1, colour = "Ret_Ibov"), size = 0.5)+
theme_bw() +
labs(x = "Data", y = "Retorno", title = 'Retorno BEEF3')+
theme(axis.text.x = element_text(angle = 90), plot.title = element_text(hjust = 0.5))+
scale_colour_manual("",breaks = c("Ret_BEEF3", "Ret_Ibov"),values = c("red", "blue"))
Graf_BRFS3 = ggplot() +
geom_line(data = Ret_BRFS3, aes(group = 1, Data, daily.returns, colour = "Ret_BRFS3"), size = 0.5)+
geom_line(data = Ret_Ibov, aes(Data, daily.returns, group = 1, colour = "Ret_Ibov"), size = 0.5)+
theme_bw()+
labs(x = "Data", y = "Retorno", title = 'Retorno BRFS3')+
theme(axis.text.x = element_text(angle = 90), plot.title = element_text(hjust = 0.5))+
scale_colour_manual("",breaks = c("Ret_BRFS3", "Ret_Ibov"),values = c("red", "blue"))
Graf_JBSS3 = ggplot() +
geom_line(data = Ret_JBSS3, aes(group = 1, Data, daily.returns, colour = "Ret_JBSS3"), size = 0.5)+
geom_line(data = Ret_Ibov, aes(Data, daily.returns, group = 1, colour = "Ret_Ibov"), size = 0.5)+
labs(x = "Data", y = "Retorno", title = 'Retorno JBSS3')+
theme_bw()+
scale_colour_manual("", breaks = c("Ret_JBSS3", "Ret_Ibov"),values = c("red", "blue"))+
theme(axis.text.x = element_text(angle = 90), plot.title = element_text(hjust = 0.5))
Graf_MRFG3 = ggplot() +
geom_line(data = Ret_MRFG3, aes(group = 1, Data, daily.returns, colour = "Ret_MRFG3"), size = 0.5)+
geom_line(data = Ret_Ibov, aes(Data, daily.returns, group = 1, colour = "Ret_Ibov"), size = 0.5)+
labs(x = "Data", y = "Retorno", title = 'Retorno MRFG3')+
theme_bw()+
scale_colour_manual("",breaks = c("Ret_MRFG3", "Ret_Ibov"),values = c("red", "blue"))+
theme(axis.text.x = element_text(angle = 90), plot.title = element_text(hjust = 0.5))
grid.arrange(Graf_MRFG3, Graf_BEEF3, Graf_BRFS3, Graf_JBSS3, ncol=2, nrow=2)
Percebe-se que, do dia 30 de agosto ao dia 1 de setembro, as ações das empresas selecionadas apresentaram comportamentos distintos, visto que, os ativos MRFG3 e BRFS3 tiveram um retorno positivo enquanto o ativo BEEF3 apresentou retornos negativos e a JBSS3 manteve o valor constante. No dia 1 de setembro, após o encerramento do pregão foi divulgada a notícia que o Ministério da Agricultura estava investigando casos suspeitos da doença da Vaca Louca. No dia 2 de setembro o fato foi precificado pelo mercado em suas negociações provocando uma queda significativa no retorno dos ativos.
No sábado, dia 4 de setembro, os casos suspeitos foram confirmados. Nesse contexto, a China suspendeu importações da carne brasileira. Em nota, o Ministério da Agricultura informou que se tratava de casos isolados, portanto não constituem risco sanitário à pecuária brasileira. Além disso, as empresas listadas afirmaram que a suspensão das exportações para a China não apresentava risco às suas operações, pois a demanda Chinesa poderia ser suprida pelos frigoríficos dessas empresas instalados no exterior, em países como a Argentina e o Uruguai. Por esse motivo, na segunda-feira, dia 6 de setembro as ações dessas empresas operaram e fecharam em alta, tendo retorno maior que o IBOVESPA, o que auxiliou o índice a fechar em alta.
No último dia analisado, houve uma queda considerável na maioria das ações listadas na B3 por conta da conjuntura política do país.