Wednesday, 1 November 2017

Como Calcular Padrão Desvio Em Bollinger Bandas


Como calcular as bandas de Bollinger Usando Bandas Excel Bollinger são um dos indicadores mais populares que estão sendo usados ​​atualmente por comerciantes quantitativos. Embora quase qualquer software comercial seja capaz de calcular os valores da Bollinger Band para você, nunca dói saber como entrar no capô e fazê-lo sozinho. Saber como calcular os indicadores que você usa irá dar-lhe uma melhor compreensão do seu sistema de negociação quantitativo. Mark da Tradinformed é especializado em usar sistemas de negociação de excel para backtest e calcular valores para indicadores populares. Ele lançou uma breve postagem no blog e um vídeo que o acompanha exatamente como calcular bandas de bollinger usando o Excel. Ele começa oferecendo sua própria descrição das Bandas de Bollinger, e depois explica como elas são calculadas: a primeira etapa no cálculo das Bandas de Bollinger é tomar uma média móvel. Então você calcula o desvio padrão do preço de fechamento ao longo do mesmo número de períodos. O desvio padrão é então multiplicado por um fator (tipicamente 2). A banda superior é calculada adicionando o desvio padrão multiplicado pelo fator à média móvel. A banda inferior é calculada subtraindo o desvio padrão multiplicado pelo fator da média móvel. Aqui estão as fórmulas que ele usa em seu vídeo: SMA H23 MÉDIA (F4: F23) Banda superior de Bollinger I23 H23 (STDEVPA (F5: F23) I3) Baixa banda Bollinger J23 H23- (STDEVPA (F5: F23) J3) Este é Mark8217s Video walk-through no cálculo de Bollinger Bands com Excel: ele também explica como ele usa Bollinger Bands em sua própria negociação: normalmente não tenho Bandas Bollinger em minhas tabelas porque acho que eles desordenam as tabelas e se distraem com a ação de preços. No entanto, muitas vezes os adiciono aos gráficos temporariamente para ver se o preço atual está dentro ou fora das bandas. Eu também gosto de usá-los quando estou desenvolvendo estratégias de negociação automática, porque eles são auto-dimensionados. Isso significa que eles podem ser aplicados a qualquer mercado e prazo sem precisar ajustar os parâmetros. Os cálculos para as Bandas Bollinger Superior e Inferior, conforme indicado na rubrica 8220 Aqui estão as fórmulas que ele usa em seu vídeo: 8221 são ERRADAS Eu estive em contato com Mark Unsell (quem fez o video) e concordou que suas equações estão erradas . Aqui, as Eq. CORRETADAS 8211 Banda superior de Bollinger I23 H23 (STDEVPA (F4: F23) I3) Baixa Bollinger Banda J23 H23- (STDEVPA (F4: F23) J3) Obrigado por compartilhar. Consegue ver meu método C para calcular Bandas Bollinger para cada ponto ( Média móvel, banda ascendente, banda baixa). Como você pode ver, esse método usa 2 para loops para calcular o desvio padrão móvel usando a média móvel. Ele costumava conter um loop adicional para calcular a média móvel nos últimos n períodos. Este eu poderia remover adicionando o novo valor de ponto a totalaverage no início do loop e removendo o valor do ponto i-n no final do loop. Minha pergunta agora é basicamente: Posso remover o loop interno restante de uma maneira similar que eu consegui com a média móvel perguntada em 31 de janeiro de 13 às 21:45 A resposta é sim, você pode. Em meados dos anos 80, desenvolvi apenas um algoritmo desse tipo (provavelmente não original) no FORTRAN para uma aplicação de monitoramento e controle de processo. Infelizmente, isso aconteceu há mais de 25 anos e não me lembro das fórmulas exatas, mas a técnica foi uma extensão da média móvel, com cálculos de segunda ordem em vez de apenas linear. Depois de olhar para o seu código, penso que posso descobrir como eu fiz isso naquela época. Observe como seu loop interno está fazendo uma Soma de Quadrados: da mesma forma que sua média deve ter originalmente uma Soma de Valores. As únicas duas diferenças são a ordem (seu poder 2 em vez de 1) e que você está subtraindo a média Cada valor antes de você marcar. Agora, isso pode parecer inseparável, mas na verdade eles podem ser separados: agora o primeiro termo é apenas uma Soma de Quadrados, você lida com a mesma maneira que você faz a soma de Valores para a média. O último termo (k2n) é apenas a média ao quadrado do período. Como você divide o resultado pelo período de qualquer maneira, você pode simplesmente adicionar o novo quadrado médio sem o loop extra. Finalmente, no segundo termo (SUM (-2vi) k), desde SUM (vi) total kn, você pode alterá-lo para este: ou apenas -2k2n. Que é -2 vezes o quadrado médio, uma vez que o período (n) é dividido novamente. Então, a fórmula combinada final é: (certifique-se de verificar a validade disso, já que eu estou derrubando o topo da minha cabeça) E incorporar seu código deve ser algo assim: Obrigado por isso. Eu usei isso como base de uma implementação em C para o CLR. Descobri que, na prática, você pode atualizar de forma que newVar seja um número negativo muito pequeno, e o sqrt falhar. Introduzi um if para limitar o valor a zero para este caso. Não é idéia, mas estável. Isso ocorreu quando cada valor na minha janela tinha o mesmo valor (usei um tamanho de janela de 20 e o valor em questão era 0,5, caso alguém pretendesse tentar reproduzir isso). Ndash Drew Noakes 26 de julho 13 às 15:25 Ive Usou common-math (e contribuiu para essa biblioteca) para algo muito parecido com isso. Sua fonte aberta, portar para C deve ser fácil como torta comprada na loja (você tentou fazer uma torta do zero). Confira: commons. apache. orgmathapi-3.1.1index. html. Eles têm uma classe StandardDeviation. Vá para a cidade respondeu Jan 31 13 às 21:48 Você já esqueci Desculpe, eu não tinha a resposta que você estava procurando. Eu definitivamente não queria sugerir portar toda a biblioteca. Apenas o código mínimo necessário, que deveria ser algumas centenas de linhas ou assim. Tenho em atenção que não tenho ideia do que as restrições de direitos autorais legais que o apache tem nesse código, então você deve verificar isso. No caso de você persegui-lo, aqui está o link. De modo que o Variance FastMath ndash Jason Jan 31 13 às 22:36 A informação mais importante já foi dada acima --- mas talvez isso ainda seja de interesse geral. Uma pequena biblioteca Java para calcular média móvel e desvio padrão está disponível aqui: githubtools4jmeanvar A implementação é baseada em uma variante do método Welfords mencionado acima. Métodos para remover e substituir valores foram derivados que podem ser usados ​​para mover o Windows de valores.

No comments:

Post a Comment