Este estudo foi feito por mim em 2015, utilizando o software estatístico R, mas para ilustrar a ideia do indicador ADX e falar sobre identificação de tendências e Value at Risk, ele ainda é bem atual. A parte o lado técnico e que indicadores sempre possuem atraso, vale a leitura do conceito para quem não é familiarizado com programação.
Hoje vamos aprender a calcular o VaR - Value at Risk - dos papéis e, utilizando o indicador técnico ADX, identificar quando um papel está ou não em tendência, seja de alta ou baixa. Por definição, para entendimento rápido, o Value at Risk é uma medida do risco de perda dados os retornos observados de um ativo. Ele retornará, dada uma quantidade de investimento, a probabilidade de um certo montante perda ocorrer. Já o indicador ADX, do inglês Average Directional Index, mede a força de uma tendência, independentemente de sua direção. Ele é acompanhado de mais outros dois indicadores, o +DI e o -DI que são os auxiliares para identificar a direção da tendência. De acordo com o mercado temos a seguinte tabela: Valor do ADX e Força da Tendência
e se o indicador +DI é maior que o -DI, temos uma tendência de alta e vice-versa. Na prática, vamos definir os parâmetros iniciais da nossa análise, com data de início em janeiro de 2008 e seleção do Índice Bovespa e das ações do Bradesco (BBDC4). library(Quantmod) library(moments) # to get skew & kurtosis #Seleção do período de análise startDate = as.Date("2008-01-01") endDate = as.Date("2014-12-19") #Seleção das ações tickers = c('^BVSP','BBDC4.SA') #Captura dos dados getSymbols(tickers, src = "yahoo", from = startDate, to = endDate) #Cálculo dos retornos BVSP_RET <- dailyReturn(BVSP) BBDC4_RET <- dailyReturn(BBDC4.SA) Agora, vamos entender algumas função auxiliares necessárias para nosso código. #Funções auxiliares index(BVSP_RET) #Retorna as datas (que estão como índice das linhas) coredata(BVSP_RET) #Retorna os dados principais, ou seja, os valores Aqui vale uma observação: os dados retornados pela função getSymbols() não são um dataframe e sim um xts. Por isso, a index() retorna os índices de cada linha que, no caso, são os dias/datas das informações da ação. Sempre que selecionarmos alguma linha de um dado do tipo xts, ele sempre retornará uma informação com o índice o o corevalue. Assim, faz sentido a próxima função, coredata(). Ela nos retorna apenas os valores da ação (ou retorno, no caso), sem a informação de data acoplada. E por que gostaríamos de algo assim? Veremos logo adiante. Vamos agora ajustar os dados do índice com os dados da ação BBDC4. Repare o comprimento de cada informação é diferente, ou seja, a getSymbols() não retornou exatamente as mesmas cotações para o Índice Bovespa e para as BBDC4 (problemas da fonte, que não precisamos debater agora). length(BVSP_RET) #1732 length(BBDC4_RET) #1662 Temos 1732 registros de retornos para o BVSP e 1662 para BBDC4. Para alinhar as duas informações, vamos utilizar a função %in%. length(BVSP_RET[index(BVSP_RET)%in%index(BBDC4_RET)]) #1662 Com ela, retornamos todas as data (index) em comum entre BVSP_RET e BBDC4_RET, o que nos dá os 1.662 registros do BBDC4. Podemos então plotar os retornos do IBovespa versus os retornos das BBDC4. ### Para plotar os mesmos dias dos retornos #Atribui os valores que são conjuntos BVSP_SAME <- BVSP_RET[index(BVSP_RET)%in%index(BBDC4_RET)] plot(coredata(BVSP_SAME),coredata(BBDC4_RET)) Aqui está a justificativa do uso da função coredata(). Ao executar o plot() apenas com BVSP_SAME e BBDC4_RET, teremos um erro de coordenadas, pois é como se estivéssemos passando 4 parâmetros para a função, ao invés de 2 (4 pois temos as informações de data para os dois ativos, assim como as informações dos retornos). Como resultado do nosso plot, temos:
Apenas para fins didáticos, vamos plotar no mesmo gráfico a regressão dos retornos do Ibov em função dos retornos de BBDC4 e também plotar as medianas de retorno para cada ativo.
fit_RET_BVSP_BBDC4 <- lm(BVSP_SAME~BBDC4_RET) summary(fit_RET_BVSP_BBDC4) abline(v=median(BVSP_SAME), col = "blue") abline(h=median(BBDC4_RET), col = "red") abline(fit_RET_BVSP_BBDC4, col="green") Como saída temos:
Agora, vamos calcular e plotar o retorno acumulado do Ibov e da BBDC4 com a função cumsum(). Também diferenciamos, através de um plot condicional, os períodos onde este retorno é posito ou negativo (azul e vermelho, respectivamente).
#Retornos acumulados BVSP_ACCUM <- cumsum(BVSP_SAME) plot(index(BVSP_ACCUM),coredata(BVSP_ACCUM), type = 'h', col=ifelse(coredata(BVSP_ACCUM)>0,"blue", "red"), main = "Ibov acumulado" ) BBDC4_ACCUM <- cumsum(BBDC4_RET) plot(index(BBDC4_ACCUM),coredata(BBDC4_ACCUM), type = 'h', col=ifelse(coredata(BBDC4_ACCUM)>0,"blue", "red"), main = "BBDC4 acumulado" ) Graficamente,
Quem comprou BBDC4 ou investe de algum maneira proporcional ao Índice Bovespa, está no lucro, mesmo que marginal e abaixo do CDI.
Voltando ao R, vamos particionar os dados de acordo com as informações anuais, já que temos data de início em 2008. Também vamos calcular os retornos por ano. O princípio utilizado aqui foi visto no post Subsetting no R. #Subseting dos retornos por ano BBDC4_RET_2008 <- BBDC4_RET[index(BBDC4_RET)>'2008-01-01' & index(BBDC4_RET)<'2009-01-01'] BBDC4_RET_2009 <- BBDC4_RET[index(BBDC4_RET)>'2009-01-01' & index(BBDC4_RET)<'2010-01-01'] BBDC4_RET_2010 <- BBDC4_RET[index(BBDC4_RET)>'2010-01-01' & index(BBDC4_RET)<'2011-01-01'] BBDC4_RET_2011 <- BBDC4_RET[index(BBDC4_RET)>'2011-01-01' & index(BBDC4_RET)<'2012-01-01'] BBDC4_RET_2012 <- BBDC4_RET[index(BBDC4_RET)>'2012-01-01' & index(BBDC4_RET)<'2013-01-01'] BBDC4_RET_2013 <- BBDC4_RET[index(BBDC4_RET)>'2013-01-01' & index(BBDC4_RET)<'2014-01-01'] BBDC4_RET_2014 <- BBDC4_RET[index(BBDC4_RET)>'2014-01-01' & index(BBDC4_RET)<'2014-12-19'] #Calculo dos retornos acumulado por ano BBDC4_ACCUM_2008 <- cumsum(BBDC4_RET_2008) BBDC4_ACCUM_2009 <- cumsum(BBDC4_RET_2009) BBDC4_ACCUM_2010 <- cumsum(BBDC4_RET_2010) BBDC4_ACCUM_2011 <- cumsum(BBDC4_RET_2011) BBDC4_ACCUM_2012 <- cumsum(BBDC4_RET_2012) BBDC4_ACCUM_2013 <- cumsum(BBDC4_RET_2013) BBDC4_ACCUM_2014 <- cumsum(BBDC4_RET_2014) Com estes dados particionados, podemos utilizar algumas funcionalidades do R para fazer uma análise exploratória dos retornos. Utilizamos a função weekdays() para recuperar as informações de qual é o dia da semana correspondente à data no index(). Em seguida, calculamos apenas os retornos acumulados das segundas-feiras de 2013 e 2014. #Retorna os dias da semana dos retornos weekdays(index(BBDC4_RET_2014)) #Retornos das segundas-feiras de 2013 BBDC4_SEG_2013 <- BBDC4_RET_2013[weekdays(index(BBDC4_RET_2013)) == "segunda-feira"] #Retornos das segundas-feiras de 2014 BBDC4_SEG_2014 <- BBDC4_RET_2014[weekdays(index(BBDC4_RET_2014)) == "segunda-feira"] Graficamente, temos:
Não que tenha algum sentido lógico, mas estamos apenas demonstrando a capacidade de segmentação dos dados. Só por curiosidade, investindo apenas nas segundas-feiras em 2013, você teria tido um retorno máximo de apenas 1,18%. Já em 2014, teria alcançado 21,75%. Estes dados foram extraídos com a função max() aplicada na cumsum() que explicamos acima. Poderíamos ainda utilizar o comando table() para identificar quantas segundas tiveram retorno positivo ou negativo.
Vamos continuar agora calculando os percentis de 5% e 95% para o Bradesco, em 2014. #Retonar percentis de 5% e 95% quantile(BBDC4_RET_2014,probs=c(0.05,0.95)) 5% 95% -0.03516820 0.03867403 Ou seja, 5% dos retornos de BBDC4 são menores que -3,51% e 95% dos retornos são menores que 3,87%. Agora, utilizando a mesma função quantile(), vamos ao cálculo do Value at Risk do Bradesco e do IBovespa para 2014. #VaR BBDC4 e BVSP BVSP_RET_2014 <- BVSP_RET[index(BVSP_RET)>'2014-01-01' & index(BVSP_RET)<'2014-12-19'] Investimento <- 10000 quantile(BBDC4_RET_2014,probs=c(0.01,0.05)) BBDC4_VaR_2014 <- Investimento * quantile(BBDC4_RET_2014,probs=c(0.01,0.05)) BBDC4_VaR_2014 1% 5% -570.021 -351.682 quantile(BVSP_RET_2014,probs=c(0.01,0.05)) BVSP_VaR_2014 <- Investimento * quantile(BVSP_RET_2014,probs=c(0.01,0.05)) BVSP_VaR_2014 1% 5% -361.3566 -247.9905 Baseada na distribuição dos retornos diários, R$10.000 investidos na BBDC4 resultariam numa perda de R$570,02 ou mais com 1% de probabilidade ou R$351,68 ou mais com 5% de probabilidade. Os mesmos valores para o IBovespa são R$361,36 e R$247,99. Ou seja, é mais arriscado investir em BBDC4 do que no índice como um todo. Até soa razoável, já que o índice é uma ponderação de vários papéis sujeito a risco sistêmico e não apenas setorial. Fechando a nossa análise, temos agora o cálculo do ADX para identificar tendências e suas intensidades, desde 2008. #Identificação de tendência com ADX valorADX <- ADX(BBDC4.SA,n = 11, maType="EMA") WEAK_HIGH_TREND <- ifelse(valorADX$ADX > 0 & valorADX$ADX <= 25 & valorADX$DIp > valorADX$DIn,1,0) STRONG_HIGH_TREND <- ifelse(valorADX$ADX > 25 & valorADX$ADX <= 50 & valorADX$DIp > valorADX$DIn,1,0) VERY_STRONG_HIGH_TREND <- ifelse(valorADX$ADX > 50 & valorADX$ADX <= 75 & valorADX$DIp > valorADX$DIn,1,0) EXTREMILY_STRONG_HIGH_TREND <- ifelse(valorADX$ADX > 75 & valorADX$DIp > valorADX$DIn,1,0) WEAK_LOW_TREND <- ifelse(valorADX$ADX > 0 & valorADX$ADX <= 25 & valorADX$DIn > valorADX$DIp,1,0) STRONG_LOW_TREND <- ifelse(valorADX$ADX > 25 & valorADX$ADX <= 50 & valorADX$DIn > valorADX$DIp,1,0) VERY_STRONG_LOW_TREND <- ifelse(valorADX$ADX > 50 & valorADX$ADX <= 75 & valorADX$DIn > valorADX$DIp,1,0) EXTREMILY_STRONG_LOW_TREND <- ifelse(valorADX$ADX > 75 & valorADX$DIn > valorADX$DIp,1,0) Utilizamos a função ADX(), com uma média móvel exponencial (EMA) de 11 períodos (n=11). A lógica dentro das variáveis está baseada na tabela do começo do post e no fato do indicador +DI (DIp no R) ser maior que o -DI (DIn) para uma tendência de alta e o contrário para uma tendência de baixa. Com o comando table(), vamos entender por quanto tempo as ações do BBDC4 ficaram em uma tendência forte de alta (STRONG_HIGH_TREND). table(STRONG_HIGH_TREND)/sum(table(STRONG_HIGH_TREND)) STRONG_HIGH_TREND 0 1 0.7262265 0.2737735 Apresentamos o cálculo já em percentual. Neste caso, desde 2008, as ações do BBDC4 estiveram 27,37% dos pregões em uma tendência forte de alta, segundo o indicador ADX. Apenas por curiosidade, foram 12% dos pregões em uma tendência forte de baixa. Use o código completo disponível no GitHub do Arte dos Dados, no repositório Computational Finance, para fazer suas próprias manipulações. O arquivo é o VaR_ADX_BBDC4_BVSP.R Um abraço e até o próximo post!
0 Comments
Sim, é possível.
Mas vai requerer estudo, concentração e disciplina, além de tempo. Passei vários anos aprendendo (e ainda aprendo todos os dias) antes de sair "apostando" por aí no mercado. A grande decepção de quem é iniciante é descobrir que não existe uma fórmula mágica para ficar rico, ainda mais rapidamente. Existe sim algumas dicas, um mínimo que precisa ser seguido, que é o que nós vamos falar no post de hoje. Se você está procurando uma fórmula mágica ou um atalho para ficar rico, este post será decepcionante. Primeiro de tudo, estude, aprenda! Conheça o que significa cada termo, como as coisas se relacionam entre si. Para isso, existe o nosso canal no Youtube e um monte de outros bons conteúdos no Google. Quando sentir que está começando a entender, comece a praticar. Abrar uma conta demo e treine, muito. Quando sentir que está preparado, reinicie a conta demo e pratique novamente. O segundo ponto é: conheça você mesmo. Saiba o porquê de você quer ser um trader, o que isso significa e o que você quer atingir com isso. Sua psicologia e sua disciplina são as chaves para melhorar sua performance como trader e sua vida financeira, não importe a técnica ou tipo de mercado que você use. Terceiro ponto: fuja das promessas de sistemas ou indicadores que vão te fazer rico de um dia para o outro, ou algo que seja bom demais para ser verdade. Estou nesse mercado há quase 10 anos e ao mesmo tempo tenho um emprego fixo. Aprender a ser trader vai levar um tempo, assim como tudo na vida. Existem inúmeras estratégias para fazer dinheiro no mercado...mas para cada 1 existem outras 10 de se perder tudo o que você ganhou. Não existem indicadores mágicos, osciladores maravilhosos, trading systems para vender (quem venderia um trading system que te faz rico?). Para prosperar no longo prazo você precisa entender o coração do mercado: bancos, fundos de hedge, fundos de pensão, governos e bancos centrais. Entendido isso, siga o líder, opere com a tendência, opere o preço! Eles sabem como o mercado funciona. Eles são o mercado! Você tem US$100, eles tem US$ 1 trilhão! Quarto ponto: foque! Escolha uma linha de raciocínio e siga-a. Não adianta tentar fazer múltiplas estratégias ao mesmo tempo. Você precisa entender como o mercado funciona, como as grandes instituições compram, vendem, quando fazer isso, o que é oferta e demanda, o que é spread e volatilidade. Lembre-se que estamos falando de dinheiro e que você está competindo com as mentes mais brilhantes do mundo. Você provavelmente também é, mas está ainda no começo e, como eu disse, não existem atalhos! Mas se você for focado, disciplinado e persistente, no final vale muito a pena. Explico um pouco mais no vídeo abaixo! Um abraço e até o próximo post!
Como todo bom trader bem sabe, a volatilidade é sua melhor amiga.
Por definição, volatilidade é uma medida de dispersão dos retornos ou do valor de um ativo. Bem dizendo, quanto mais o preço de um ativo varia num período curto de tempo, maior o risco de se ganhar ou perder dinheiro negociando esta ação - por isso a volatilidade também é conhecida como uma medida de risco. Assim sendo, nada melhor que conhecer bem quais são os ativos com maior volatilidade para entender onde estão as melhores oportunidades de negociação. Entretanto, calcular a volatilidade não é uma tarefa fácil para ser feita manualmente, principalmente quando se negocia em mercados de muita liquidez, como o Forex. Para resolver este problema, existe uma ferramenta muito bacana disponibilizada pelo site Investing.com chamada de Forex Volatility Calculator - Calculadora de volatilidade de Forex. Nela é possível calcular automaticamente a volatilidade de 30 pares utilizando dados históricos de até 54 semanas. A ferramenta mostra a variação diária em pips e em pontos percentuais de cada par. Além disso, proporciona outras informações bem úteis, como podemos ver nos gráficos abaixo. Escolhendo o par EUR/USD e o período de 8 semanas para o teste, o primeiro gráfico nos mostra a variação (volatilidade) diária em pips do par. No segundo, temos a volatilidade por hora, no fuso GMT. Podemos perceber que nestas últimas 8 semanas os horários com maior variação em pips vão das 12h até as 16h. Por fim, temos a volatilidade por dias da semana. Quinta-feira e segunda-feira são os dois dias mais voláteis para o par EUR/USD. Bons dias para day traders e scalpers, já que a oscilação nestes dias é bem maior. Vale a pena conferir a ferramenta no site www.investing.com/tools/forex-volatility-calculator Um abraço e até o próximo post!
No momento que este artigo é escrito o Bitcoin está perto dos $1.000 dólares, um dos valores mais altos desde sua criação. Mas, antes de sair falando sobre Bitcoin (ou mesmo ver gente tentando prever a cotação, o que de fato não importa), elaboramos uma lista de perguntas e respostas para você começar a entender este novo mundo.
O que é Bitcoin? Sintetizando, o Bitcoin é uma rede de pagamento inovadora e um novo tipo de dinheiro. O Bitcoin usa tecnologia tipo peer-to-peer para operar sem uma autoridade central ou bancos. O gerenciamento de transações e a emissão de bitcoins é realizada coletivamente pela rede. Além disso, o Bitcoin é open-source: seu projeto é público e ninguém possui ou controla a rede Bitcoin e todos podem participar. Através de muitas de suas propriedades únicas, o Bitcoin permite usos inovadores que não poderiam ser cobertos por qualquer outro sistema de pagamento inventado até aqui. Como funciona o Bitcoin? Do ponto de vista do usuário, o Bitcoin nada mais é do que um programa de computador que fornece uma carteira Bitcoin pessoal e permite que um usuário envie e receba bitcoins com eles. É assim que o Bitcoin funciona para a maioria dos usuários. Nos bastidores, a rede Bitcoin está compartilhando um ledger público chamado "blockchain". Este ledger contém todas as transações processadas, permitindo que o computador de um usuário verifique a validade de cada transação. A autenticidade de cada transação é protegida por assinaturas digitais correspondentes aos endereços de envio, permitindo que todos os usuários tenham total controle sobre o envio de bitcoins de seus próprios endereços Bitcoin. Além disso, qualquer pessoa pode processar transações usando o poder de computação de hardware especializado e ganhar uma recompensa em bitcoins por este serviço. Isso é muitas vezes chamado de "mineração". Quem criou o Bitcoin? Bitcoin é a primeira implementação de um conceito chamado "criptomoeda", que foi primeiramente descrito em 1998 por Wei Dai na lista de discussão “cypherpunks”, sugerindo a idéia de uma nova forma de dinheiro que usa criptografia para controlar a sua criação e transações, em vez de uma autoridade central. A primeira especificação Bitcoin e sua prova de conceito foi publicada em 2009 em uma lista de discussão de criptografia por Satoshi Nakamoto. Satoshi deixou o projeto no final de 2010 sem revelar muito sobre si mesmo. A comunidade desde então cresceu exponencialmente com muitos desenvolvedores trabalhando no Bitcoin. O anonimato de Satoshi muitas vezes levantou preocupações injustificadas (!?), muitas das quais estão ligadas a mal-entendidos sobre a natureza de código aberto de Bitcoin. O protocolo Bitcoin e o software são publicados abertamente e qualquer desenvolvedor em todo o mundo pode rever o código ou fazer a sua própria versão modificada do software Bitcoin. Assim como os desenvolvedores atuais, a influência de Satoshi foi limitada às mudanças que ele fez e que foram sendo adotadas por outros e, portanto, ele não controlou o Bitcoin. Como tal, a identidade do inventor de Bitcoin é provavelmente tão relevante hoje quanto a identidade da pessoa que inventou o papel. O Bitcoin é realmente usado pelas pessoas? Sim. Há um número crescente de empresas e indivíduos usando Bitcoin. Isso inclui desde negócios de tijolo e argamassa até restaurantes, albergues, escritórios de advocacia e serviços on-line populares, como Namecheap, WordPress e Reddit. Enquanto o Bitcoin permanece um fenômeno relativamente novo, ele está crescendo rapidamente. No final de agosto de 2013, o valor de todos os bitcoins em circulação ultrapassou US $ 1,5 bilhão com milhões de dólares de bitcoins trocados diariamente. Hoje ele é cotado acima dos $1.000 dólares, contra $200 no começo de 2016. Quais são as vantagens do Bitcoin?
Quais são as desvantagens do Bitcoin?
Um abraço e até o próximo post! Referências: Bitcoin: A Peer-to-Peer Electronic Cash System - https://bitcoin.org/bitcoin.pdf Research - Bitcoin Wiki - https://en.bitcoin.it/wiki/Research
Continuando com o desafio em entender o mercado e as ações dos investidores a partir da perspectiva Psicanalítica, apontarei neste texto como os elementos emocionais influenciam diretamente as tomadas de decisão no mercado. Como mencionado no texto anterior (link aqui), o mercado é dirigido por pessoas e, portanto, é também composto de elementos emocionais como medo, tristeza, raiva, ganância e euforia, influenciando diretamente as tomadas de decisão no mercado, geralmente acompanhadas de profunda sensação de incerteza.
Para David Tuckett, economista e psicanalista inglês, esse estado de incerteza é que o cria oportunidades, tornando o mercado atraente. Geralmente, segundo o autor, o investidor é tomado por duas emoções ambivalentes durante uma operação: excitação e ansiedade. Excitação por estar à frente de um possível sucesso perante um investimento ou trade, ansiedade por pressentir um perigo: o de possíveis perdas. Além disso, o “feedback da performance” no mercado costuma ser instável: não há certeza de que alguém que tenha obtido sucesso anterior possa ter uma operação bem sucedida no futuro. Para Tuckett, a concorrência pelo dinheiro tem mais haver com promessas de resultados. Assim, para poderem investir no mercado, as pessoas precisam criar o que chamou de “narrativas de convicção”: histórias que justifiquem as apostas, sustentando dessa forma o período de euforia e ação do ato de investir por um tempo razoável, já que as pessoas, durante esse período, sentem que têm algo ou uma ótima oportunidade em mãos. Contar histórias para gerar conforto emocional ou justificar decisões faz parte dessa narrativa de convicção. É muito comum que investidores contem com informações de outros investidores, mesmo que tais informações não sejam baseadas em dados sólidos. Tuckett também aponta que, com frequência, investidores tomem decisões importantes caso se identifiquem ou se sintam confortáveis com a história de uma empresa, o que ele chamou de “narrativas consoladoras”. A teoria financeira também deve levar em conta a influência inconsciente do “groupfeel” (termo criado por Tuckett), fenômeno em que os indivíduos obtêm satisfação ao saberem que são parte de um grupo. Para Freud, mesmo sozinho (fora de algum grupo psicológico), sempre há no indivíduo a presença do outro. Tais fatores influenciam os investidores numa tomada de decisão, uma vez que a influência destes pensamentos de massa possuem papel ativo na forma como traders consideram as suas opções: a interação com outras pessoas geralmente traz recompensas, sendo descartado o pensamento individual, fomentando os sentimentos ambivalentes de excitação e ansiedade. Portanto, as emoções que acompanham as decisões financeiras refletem o aspecto individual e social em que os investidores encontram-se inseridos, sendo impossível dissociar a economia dos elementos psíquicos e sociais. Assim, o que está sendo negociado são histórias, as “narrativas imaginárias” sobre possíveis ganhos, perdas e o seu impacto sobre um futuro incerto. Considerando a dissociação entre tais elementos psíquicos e sociais no Mercado Financeiro, saliento a importância sobre os investidores terem conhecimento e compreensão a despeito da influência de tais elementos nas tomadas de decisão em um investimento. Desta maneira, é possível que haja reflexão e posterior transformação, como o início do rompimento de uma alienação psíquica e social, no sentido de que o investidor tome decisões compreendendo os momentos de euforia, o medo e os riscos de cada investimento. Referências: TUCKETT, D. Minding the Markets (2011). Palgrave Macmillan. Sobre a autora: Carina Guerra - Psicóloga, especialista em psicanálise e Outspoker. |
Archives
December 2023
Categories
All
|