Thursday 24 August 2017

C # Bollinger Bands


Abaixo você pode ver meu método C para calcular Bandas Bollinger para cada ponto (média móvel, banda ascendente, banda descendente). 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. org/math/api-3.1.1/index. 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. Note-se que não tenho ideia do que as restrições legais / de direitos autorais apache têm 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: github / tools4j / meanvar 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 valor de janelas. Bollinger Bands reg Introdução: Bandas Bollinger são uma ferramenta de negociação técnica criada por John Bollinger no início dos anos 80. Eles surgiram da necessidade de bandas de negociação adaptativas e a observação de que a volatilidade era dinâmica, não estática, como era amplamente acreditado na época. O objetivo das Bandas de Bollinger é fornecer uma definição relativa de alto e baixo. Por definição, os preços são elevados na banda superior e baixos na faixa inferior. Esta definição pode auxiliar no reconhecimento rigoroso de padrões e é útil na comparação da ação de preços com a ação de indicadores para chegar a decisões comerciais sistemáticas. Bandas Bollinger consistem em um conjunto de três curvas desenhadas em relação aos preços dos títulos. A banda do meio é uma medida da tendência do termo intermediário, geralmente uma média móvel simples, que serve como base para a banda superior e banda baixa. O intervalo entre as bandas superior e inferior e a banda do meio é determinado pela volatilidade, tipicamente o desvio padrão dos mesmos dados que foram utilizados para a média. Os parâmetros padrão, 20 períodos e dois desvios padrão, podem ser ajustados de acordo com seus propósitos. Saiba como usar as Bandas de Bollinger: Bollinger On Bollinger Bands book de John Bollinger, CFA, CMT Obter as 22 regras da Bollinger Band Registe-se para receber e-mails ocasionais sobre Bollinger Bands, webinars e Johns, o mais novo trabalho. Nunca compartilhamos sua informação John Bollingers Monthly Capital Growth Letter Analysis e comentário sobre os mercados mais recomendações de investimento de John Bollinger. Área de Assinante CGL Dezembro de 2016 Trecho O Bounce Devemos saltar The Bounce este ano, pois os mercados não estão configurando como deveriam garantir um bom salto. As condições ideais do salto são um pico nos preços das ações no início do ano, muitos estoques atingindo a nova lista de baixas à medida que o ano atinge o fim, muita venda de impostos e o despejo de ações como produto da vitrine de vitrine. Não percebemos nada disso neste ano: é provável que saibamos perto dos altos do ano. Existem poucas, se houver novas novidades. A venda de impostos simplesmente não é um fator (ainda). E o curativo de janelas é muito mais provável que envolva a compra do panico de mercadorias boas do que a venda de mercadorias ruins. Então, estamos passando o The Bounce até o ano que vem.

No comments:

Post a Comment