Tag

econometria financeira Archives - Análise Macro

Detectando anomalias com o pacote {anomalize}

By | Hackeando o R

No Hackeando o R de hoje, mostraremos como capturar anomalias de séries temporais de forma rápida e simples. A grosso modo, essas anomalias nas séries aparecem quando eventos não esperados "distorcem" os seus valores, portanto, quando se trabalha com uma análise dos dados, é importante saber quais são esses valores e quando ocorreram, para isso, o pacote {anomalize} nos ajuda nessa tarefa.

O pacote por padrão utiliza o método STL (caso queira se aprofundar no assunto veja esse post), retirando os componentes de tendência e sazonalidade e evidenciando as anomalias.

Iremos utilizar dados de preços e retornos de ações como exemplo, importando-os do ano de 2020 até o dia de hoje. Caso queira saber mais sobre, veja esse post.

 

library(tidyquant)
library(tidyverse)
library(timetk)
library(anomalize)
library(tibbletime)
# Define os ativos que irão ser coletados

tickers <- c("PETR4.SA", "ITUB4.SA", "ABEV3.SA", "JBSS3.SA")

# Define a data de início da coleta

start <- "2019-12-01"

# Realiza a coleta dos preços diários

prices <- getSymbols(tickers,
auto.assign = TRUE,
warnings = FALSE,
from = start,
src = "yahoo") %>%
map(~Cl(get(.))) %>%
reduce(merge) %>%
`colnames<-`(tickers)

# Calcula os retornos mensais

asset_returns <- Return.calculate(prices,
method = "log") %>%
na.omit() %>%
tk_tbl(preserve_index = TRUE,
rename_index = "date")


# Transforma os dados em long

asset_returns_long <- asset_returns %>%
pivot_longer(!date, names_to = "asset", values_to = "value")

Com nossos dados em mãos, podemos utilizar as funções dos pacote. A primeira, time_decompose(), nos fornece a decomposição da série, nos retornando as colunas dos nossos dados atuais observados (observed), os valores da sazonalidade (season), tendência (trend), e o "restante", que são os valores dos dados observados menos a sazonalidade e tendência.

A segunda função, anomalize(), nos fornece a detecção de anomalias, examinando a coluna "remainder".

Por fim, utilizamos a função time_recompose() para calcular os outliers com base nos valores dos dados observados.


# Cria o tibble com valores dos componentes e da anomalia

asset_anomalized <- asset_returns_long %>%
group_by(asset) %>%
time_decompose(value, merge = TRUE) %>%
anomalize(remainder) %>%
time_recompose()

Com os dados em mãos, podemos visualizar através da função plot_anomalies().


# Plota as anomalias dos retornos

asset_anomalized %>%
plot_anomalies(ncol = 4, alpha_dots = 0.25)+
ggplot2::labs(title = "Anomalias nos retornos de ações selecionadas",
caption = "Elaborado por analisemacro.com.br com dados do Yahoo Finance.")


O que nos chama a atenção nas anomalias do nossos dados são as datas de maiores ocorrências,  período do advento da pandemia de COVID-19 no Brasil.

Podemos também verificar essas anomalias nos gráficos de decomposição. Como exemplo, utilizamos o ativo PETR4.


# Transforma em tibble

petr4 <- prices %>%
tk_tbl(preserve_index = TRUE,
rename_index = "date") %>%
select(date, petr4 = `PETR4.SA`)

# Decompõe e calcula as anomalias

petr4_anomalized <- petr4 %>%
time_decompose(petr4) %>%
anomalize(remainder) %>%
time_recompose()

# Plota a decomposição com as anomalias

petr4_anomalized %>%
plot_anomaly_decomposition()+
ggplot2::labs(title = "Decomposição STL e anomalias do preço de fechamento da PETR4",
caption = "Elaborado por analisemacro.com.br com dados do Yahoo Finance.")


Vemos também as anormalidades em grande quantidade no mesmo período.

________________________

(*) Para entender mais sobre análise de séries temporais e mercado financeiro, confira nossos curso de Séries Temporais  e Econometria Financeira.
________________________

Turmas de Inverno: último dias de inscrições!

By | Cursos da Análise Macro

As inscrições para as Turmas de Inverno dos nossos Cursos Aplicados de R terminam hoje, 14/06, às 23h59. Há vagas para 15 Cursos Livres e 3 Formações. As turmas de Inverno terão início no dia 15/06 e contarão com o nosso Curso de Introdução ao R para Análise de Dados, de modo que não é necessário nenhum conhecimento prévio na linguagem. Para todos os detalhes sobre as Turmas de Inverno, continue lendo esse informativo...

Nós abrimos vagas para quatro áreas dos nossos Cursos Livres: Data Science, Macroeconomia Aplicada, Econometria e Finanças. Haverá vagas para 15 Cursos, a saber:

Cursos de Data Science

Macroeconomia Aplicada

Cursos de Econometria

Cursos de Micro Aplicada

Cursos de Finanças

Além disso, também abrimos as inscrições para as nossas Formações:

Plano Disponível

Para essa Turma, estamos ofertando um plano único que envolve como bônus para qualquer curso acima o nosso Curso de R para Análise de Dados, Certificado, acesso por 12 meses às aulas gravadadas e plataforma tira-dúvidas exclusiva.

Investimento

Os preços dos Cursos variam de acordo com a complexidade do conteúdo. Os alunos poderão financiar a aquisição dos Cursos em até 10x sem juros no cartão de crédito.

Especialmente para essa edição dos nossos Cursos, nós ofereceremos 30% de desconto para quem adquirir todos os cursos de uma das nossas trilhas. Para garantir o desconto, vá direto ao link abaixo:

Qualquer dúvida adicional, por favor, mande e-mail para comercial@analisemacro.com.br.

______________

Turmas de Inverno: últimos dias de inscrições!

By | Cursos da Análise Macro

As inscrições para as Turmas de Inverno dos nossos Cursos Aplicados de R estão chegando ao fim. Há vagas para 15 Cursos Livres e 3 Formações. As turmas de Inverno terão início no dia 15/06 e contarão com o nosso Curso de Introdução ao R para Análise de Dados, de modo que não é necessário nenhum conhecimento prévio na linguagem. Para todos os detalhes sobre as Turmas de Inverno, continue lendo esse informativo...

Nós abrimos vagas para quatro áreas dos nossos Cursos Livres: Data Science, Macroeconomia Aplicada, Econometria e Finanças. Haverá vagas para 15 Cursos, a saber:

Cursos de Data Science

Macroeconomia Aplicada

Cursos de Econometria

Cursos de Micro Aplicada

Cursos de Finanças

Além disso, também abrimos as inscrições para as nossas Formações:

Plano Disponível

Para essa Turma, estamos ofertando um plano único que envolve como bônus para qualquer curso acima o nosso Curso de R para Análise de Dados, Certificado, acesso por 12 meses às aulas gravadadas e plataforma tira-dúvidas exclusiva.

Investimento

Os preços dos Cursos variam de acordo com a complexidade do conteúdo. Os alunos poderão financiar a aquisição dos Cursos em até 10x sem juros no cartão de crédito.

Especialmente para essa edição dos nossos Cursos, nós ofereceremos 30% de desconto para quem adquirir todos os cursos de uma das nossas trilhas. Para garantir o desconto, vá direto ao link abaixo:

Qualquer dúvida adicional, por favor, mande e-mail para comercial@analisemacro.com.br.

______________

Cursos de Econometria: inscrições abertas!

By | Cursos da Análise Macro

As inscrições para os Cursos de Econometria da Análise Macro estão abertas! O 1º lote com 30% de desconto fica disponível por 24h, somente hoje, 28/07. A partir de amanhã, 29/07, serão aceitas inscrições com o preço cheio. A novidade dessa edição especial dos Cursos é o novo Curso de Análise de Séries Temporais. Com o programa totalmente reformulado, o Curso visa dar uma introdução aplicada à econometria de séries temporais. Abaixo, todos os Cursos disponíveis na trilha de econometria:

Além disso, também abrimos as inscrições para a nossa Formação:

Plano Único

Será ofertado um Plano Único com acesso ao conteúdo dos Cursos por 12 meses, suporte customizado do professor e acesso ao Clube do Código também por 12 meses. Nosso objetivo com isso é dar um treinamento totalmente customizado para os alunos inscritos.

Investimento

Os preços dos Cursos variam de acordo com a complexidade do conteúdo. Os alunos poderão financiar a aquisição dos Cursos em até 10x sem juros no cartão de crédito.

Qualquer dúvida adicional, por favor, mande e-mail para comercial@analisemacro.com.br.

______________

Cursos de Econometria: inscrições abrem dia 28/07!

By | Cursos da Análise Macro

No próximo dia 28/07, às 0h, abriremos inscrições para os Cursos de Econometria da Análise Macro. Haverá um 1º lote com 30% de desconto que ficará disponível por 24h, somente no dia 28/07. A partir do dia 29/07, serão aceitas inscrições com o preço cheio. A novidade dessa edição especial dos Cursos é o novo Curso de Análise de Séries Temporais. Com o programa totalmente reformulado, o Curso visa dar uma introdução aplicada à econometria de séries temporais. Abaixo, todos os Cursos disponíveis na trilha de econometria:

Além disso, também abrimos as inscrições para a nossa Formação:

Plano Único

Será ofertado um Plano Único com acesso ao conteúdo dos Cursos por 12 meses, suporte customizado do professor e acesso ao Clube do Código também por 12 meses. Nosso objetivo com isso é dar um treinamento totalmente customizado para os alunos inscritos.

Investimento

Os preços dos Cursos variam de acordo com a complexidade do conteúdo. Os alunos poderão financiar a aquisição dos Cursos em até 10x sem juros no cartão de crédito.

Qualquer dúvida adicional, por favor, mande e-mail para comercial@analisemacro.com.br.

______________

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais
e conteúdos exclusivos sobre Análise de Dados!

Assinar Gratuitamente