Saturday 14 October 2017

Código de média móvel exponencial


MetaTrader 4 - Indicadores Médias móveis, indicador MA para MetaTrader 4 O Indicador Técnico da Média de Mudança mostra o valor médio do preço do instrumento por um determinado período de tempo. Quando se calcula a média móvel, uma média do preço do instrumento para este período de tempo. À medida que o preço muda, sua média móvel aumenta ou diminui. Existem quatro tipos diferentes de médias móveis: simples (também conhecido como aritmética), exponencial, suavizado e linear ponderado. As médias móveis podem ser calculadas para qualquer conjunto de dados seqüenciais, incluindo preços de abertura e fechamento, preços mais altos e mais baixos, volume de negócios ou outros indicadores. Muitas vezes, é o caso quando se usam médias móveis duplas. A única coisa em que as médias móveis de diferentes tipos divergem consideravelmente umas das outras, é quando os coeficientes de peso, que são atribuídos aos dados mais recentes, são diferentes. Caso falamos de uma média móvel simples, todos os preços do período de tempo em questão são de valor igual. As médias móveis ponderadas exponenciais e lineares atribuem mais valor aos preços mais recentes. A maneira mais comum de interpretar a média móvel do preço é comparar sua dinâmica com a ação do preço. Quando o preço do instrumento sobe acima de sua média móvel, aparece um sinal de compra, se o preço cai abaixo de sua média móvel, o que nós temos é um sinal de venda. Este sistema de negociação, baseado na média móvel, não foi projetado para fornecer entrada no mercado diretamente no seu ponto mais baixo, e sua saída diretamente no pico. Permite atuar de acordo com a seguinte tendência: comprar logo depois que os preços chegam ao fundo e vender logo depois que os preços atingiram seu pico. Média móvel simples (SMA) Simples, em outras palavras, a média móvel aritmetica é calculada resumindo os preços do encerramento do instrumento durante um certo número de períodos únicos (por exemplo, 12 horas). Esse valor é então dividido pelo número desses períodos. SMA SUM (CLOSE, N) N Onde: N é o número de períodos de cálculo. Média Mínima Exponencial (EMA) A média móvel suavizada exponencialmente é calculada adicionando a média móvel de uma determinada parcela do preço de fechamento atual ao valor anterior. Com médias movidas exponencialmente suavizadas, os preços mais recentes são de maior valor. A média móvel exponencial em percentagem de P será semelhante a: Onde: CLOSE (i) o preço do encerramento do período atual EMA (i-1) A média móvel do encerramento do período anterior P é a porcentagem de usar o valor do preço. Média Mínima Suavizada (SMMA) O primeiro valor dessa média móvel suavizada é calculado como a média móvel simples (SMA): SUM1 SUM (FECHAR, N) As médias móveis e as médias sucessivas são calculadas de acordo com esta fórmula: Onde: SUM1 é o Soma total de preços de fechamento para N períodos SMMA1 é a média móvel suavizada da primeira barra SMMA (i) é a média móvel suavizada da barra atual (exceto para o primeiro) FECHAR (i) é o preço de fechamento atual N é o Período de suavização. Média de Movimento Ponderada Linear (LWMA) No caso da média móvel ponderada, os dados mais recentes são de maior valor do que mais dados iniciais. A média móvel ponderada é calculada multiplicando cada um dos preços de fechamento dentro da série considerada, por um certo coeficiente de peso. LWMA SUM (Fechar (i) i, N) SUM (i, N) Onde: SUM (i, N) é a soma total dos coeficientes de peso. As médias móveis também podem ser aplicadas aos indicadores. É aí que a interpretação das médias móveis dos indicadores é semelhante à interpretação das médias móveis de preços: se o indicador sobe acima de sua média móvel, isso significa que o movimento do indicador ascendente provavelmente continuará: se o indicador cai abaixo da média móvel, isso Significa que é provável que continue indo para baixo. Aqui estão os tipos de médias móveis no gráfico: Média de Movimento Simples (SMA) Média de Movimento Exponencial (EMA) Média de Movimento Suavizada (SMMA) Média de Movimento Ponderada Linear (LWMA) Eu essencialmente tenho uma série de valores como este: a matriz acima é Simplificado, estou coletando 1 valor por milissegundo em meu código real e preciso processar a saída em um algoritmo que escrevi para encontrar o pico mais próximo antes de um ponto no tempo. Minha lógica falha porque no meu exemplo acima, 0.36 é o pico real, mas meu algoritmo olhava para trás e veria o último número 0.25 como o pico, pois há uma diminuição para 0.24 antes dele. O objetivo é levar esses valores e aplicar um algoritmo para eles, que os suavizará um pouco para que eu tenha mais valores lineares. (Ie: Id como os meus resultados para serem curvy, não jaggedy) Eu fui dito para aplicar um filtro exponencial de média móvel aos meus valores. Como posso fazer isso. É muito difícil para mim ler equações matemáticas, eu lido muito melhor com o código. Como faço para processar valores na minha matriz, aplicando um cálculo exponencial da média móvel para os fazer sair, solicitado 8 de fevereiro às 20:27 Para calcular uma média móvel exponencial. Você precisa manter algum estado ao redor e você precisa de um parâmetro de ajuste. Isso exige uma pequena classe (supondo que você esteja usando o Java 5 ou posterior): instanciar com o parâmetro de decaimento desejado (pode ser necessário que a sintonização esteja entre 0 e 1) e depois use a média () para filtrar. Ao ler uma página sobre uma recorrência matemática, tudo o que você realmente precisa saber ao transformá-lo em código é que os matemáticos gostam de escrever índices em arrays e seqüências com subscritos. (Eles também têm algumas outras notações, o que não ajuda.) No entanto, o EMA é bastante simples, pois você só precisa se lembrar de um valor antigo, não é necessário nenhum arrays de estados complicados. Respondeu 8 de fevereiro às 20:42 TKKocheran: praticamente. Não é bom quando as coisas podem ser simples (Se começar com uma nova seqüência, obtenha uma nova média). Observe que os primeiros termos da seqüência média saltarão em torno de um bit devido a efeitos de limites, mas você obtém aqueles com outras médias móveis também. No entanto, uma boa vantagem é que você pode envolver a lógica média móvel na média e experimentar sem incomodar demais o seu programa. Ndash Donal Fellows 9 de fevereiro às 0:06 Estou tendo dificuldade em entender suas perguntas, mas vou tentar responder de qualquer maneira. 1) Se o seu algoritmo encontrou 0,25 em vez de 0,36, então é errado. É errado porque assume um aumento ou diminuição monotônico (que sempre está subindo ou sempre está indo para baixo). A menos que você tenha média de todos os seus dados, seus pontos de dados --- como você os apresenta --- são não-lineares. Se você realmente quer encontrar o valor máximo entre dois pontos no tempo, então corte sua matriz de tmin para tmax e encontre o máximo desse subarray. 2) Agora, o conceito de médias móveis é muito simples: imagine que eu tenho a seguinte lista: 1.4, 1.5, 1.4, 1.5, 1.5. Eu posso suavizar, levando a média de dois números: 1.45, 1.45, 1.45, 1.5. Observe que o primeiro número é a média de 1,5 e 1,4 (segundo e primeiro número), a segunda (nova lista) é a média de 1,4 e 1,5 (terceira e segunda lista antiga) a terceira (nova lista) a média de 1,5 e 1,4 (Quarto e terceiro), e assim por diante. Eu poderia ter feito período três ou quatro, ou n. Observe como os dados são muito mais suaves. Uma boa maneira de ver as médias móveis no trabalho é ir para o Google Finance, selecionar um estoque (tente Tesla Motors bastante volátil (TSLA)) e clique em técnicas na parte inferior do gráfico. Selecione a média móvel com um período determinado e a média móvel exponencial para comparar suas diferenças. A média móvel exponencial é apenas uma outra elaboração deste, mas considera os dados mais antigos inferiores aos novos dados, esta é uma maneira de polarizar o alisamento para trás. Leia a entrada da Wikipedia. Então, isso é mais um comentário do que uma resposta, mas a pequena caixa de comentários foi apenas pequena. Boa sorte. Se você estiver tendo problemas com a matemática, você poderia ir com uma média móvel simples em vez de exponencial. Então, a saída que você obtém seria os últimos x termos divididos por x. Pseudocódigo não testado: note que você precisará lidar com as partes de início e término dos dados, pois claramente você não pode significar os últimos 5 termos quando estiver no seu segundo ponto de dados. Além disso, existem maneiras mais eficientes de calcular essa média móvel (soma sumária - a mais nova), mas é para obter o conceito de o que está acontecendo. Respondido em 8 de fevereiro às 20:41 Sua resposta 2017 Stack Exchange, IncMoving Average O Indicador Técnico de Mover Mudança mostra o valor médio do preço do instrumento por um determinado período de tempo. Quando se calcula a média móvel, uma média do preço do instrumento para este período de tempo. À medida que o preço muda, sua média móvel aumenta ou diminui. Existem quatro tipos diferentes de médias móveis: Simples (também conhecido como Aritmética), Exponencial. Alisado e ponderado. A média móvel pode ser calculada para qualquer conjunto de dados seqüenciais, incluindo preços de abertura e fechamento, preços mais altos e mais baixos, volume de negócios ou outros indicadores. Muitas vezes, é o caso quando se usam médias móveis duplas. A única coisa em que as médias móveis de diferentes tipos divergem consideravelmente umas das outras, é quando os coeficientes de peso, que são atribuídos aos dados mais recentes, são diferentes. Caso falamos da média móvel simples. Todos os preços do período de tempo em questão são de valor igual. A média móvel exponencial e a média móvel ponderada linear atribuem mais valor aos preços mais recentes. A maneira mais comum de interpretar a média móvel do preço é comparar sua dinâmica com a ação do preço. Quando o preço do instrumento sobe acima de sua média móvel, aparece um sinal de compra, se o preço cai abaixo da média móvel, o que temos é um sinal de venda. Este sistema de negociação, baseado na média móvel, não foi projetado para fornecer entrada no mercado diretamente no seu ponto mais baixo, e sua saída diretamente no pico. Permite atuar de acordo com a seguinte tendência: comprar logo depois que os preços chegam ao fundo e vender logo depois que os preços atingiram seu pico. As médias móveis também podem ser aplicadas aos indicadores. É aí que a interpretação das médias móveis dos indicadores é semelhante à interpretação das médias móveis de preços: se o indicador sobe acima de sua média móvel, isso significa que o movimento do indicador ascendente provavelmente continuará: se o indicador cai abaixo da média móvel, isso Significa que é provável que continue indo para baixo. Aqui estão os tipos de médias móveis no gráfico: Média de Movimento Simples (SMA) Média de Movimento Exponencial (EMA) Média de Movimento Suavizada (SMMA) Média de Movimento Ponderada Linear (LWMA) Você pode testar os sinais comerciais deste indicador, criando um Consultor Especialista No MQL5 Wizard. Cálculo da média móvel simples (SMA) Simples, ou seja, a média móvel aritmetica é calculada resumindo os preços do encerramento do instrumento durante um certo número de períodos únicos (por exemplo, 12 horas). Esse valor é então dividido pelo número desses períodos. SMA SUM (FECHAR (i), N) N SUM SOM FECHAR (i) período atual fechar preço N número de períodos de cálculo. Média de Mudança Exponencial (EMA) A média móvel suavizada exponencialmente é calculada pela adição de uma certa parcela do preço de fechamento atual ao valor anterior da média móvel. Com médias movidas exponencialmente suavizadas, os preços de fechamento mais recentes são de maior valor. A média móvel exponencial de porcentagem de P será semelhante a: EMA (CLOSE (i) P) (EMA (i - 1) (1 - P)) FECHAR (i) preço de fechamento atual EMA (i - 1) valor da Média Móvel De um período anterior P a porcentagem de uso do valor do preço. Média Mínima Suavizada (SMMA) O primeiro valor desta média móvel suavizada é calculado como a média móvel simples (SMA): SUM1 SUM (CLOSE (i), N) A segunda média móvel é calculada de acordo com esta fórmula: SMMA (i) (SMMA1 (N-1) FECHAR (i)) N As médias móveis de sucesso são calculadas de acordo com a fórmula abaixo: PREVSUM SMMA (i-1) N SMMA (i) (PREVSUM - SMMA (i-1) FECHAR (i)) N SUM SUM SUM1 soma total de preços de fechamento para N períodos é contado a partir da barra anterior PREVSUM suma alisada da barra anterior média SMMA (i-1) média movida da barra anterior SMMA (i) média lisa suavizada da barra atual (Exceto para o primeiro) FECHAR (i) preço de fechamento atual N período de suavização. Após as conversões aritméticas, a fórmula pode ser simplificada: SMMA (i) (SMMA (i - 1) (N - 1) FECHAR (i)) N Média linear móvel ponderada (LWMA) No caso da média móvel ponderada, os dados mais recentes são De mais valor do que mais dados iniciais. A média móvel ponderada é calculada multiplicando cada um dos preços de fechamento dentro da série considerada, por um certo coeficiente de peso: LWMA SUM (FECHAR (i) i, N) SOMA (i, N) SUM SUM CLOSE (i) preço de fechamento atual SUM (i, N) soma total do coeficiente de peso N período de suavização.

No comments:

Post a Comment