Friday 24 November 2017

Heiken ashi forex ea creator


MetaTrader 5 - Exemplos Um Exemplo de um Sistema de Negociação Baseado em um Indicador Heiken-Ashi Introdução Com a aparência do gráfico de velas nos EUA há mais de duas décadas atrás, houve uma revolução no entendimento de como as forças de touros e ursos trabalham Os mercados ocidentais. Castiçais tornou-se um popular instrumento comercial, e os comerciantes começaram a trabalhar com eles, a fim de facilitar a leitura das cartas. Mas a interpretação dos castiçais difere uns dos outros. Um destes métodos, que muda a carta tradicional do candelabro, e facilita sua percepção, é chamado a tecnologia de Heikin Ashi. 1. Nani Desu Ka A primeira publicação sobre este tópico, surgiu em 2004 na edição de fevereiro da Análise Técnica do STOCKS amp COMMODITIES, onde Dan Valcu publicou um artigo intitulado Using The Heikin Ashi Technique (link para o artigo original). Website o autor aponta que durante o verão de 2003 ele estudou a tecnologia de Ichimoku, e como muitas vezes acontece, descobriu acidentalmente alguns diagramas, em que ele viu uma tendência claramente visível do mercado. Aconteceu ser um diagrama Heikin-Ashi, ou, para ser mais preciso, alguns castiçais alterados. Este método de análise foi desenvolvido por um trader japonês que se tornou muito bem sucedido e usa este método até hoje. Para a surpresa do autor, ele não encontrou nenhuma outra informação relacionada em livros ou na Internet, então ele decidiu torná-lo disponível para todos os comerciantes, publicando-o em um diário. O método Heikin-Ashi (heikin em japonês significa o meio ou o equilíbrio, e ashi significa pé ou barra), e é uma ferramenta visual para avaliar tendências, sua direção e força. Este não é um Santo Graal de negociação, mas é definitivamente um instrumento bom e fácil de usar para visualizar tendências. Vamos considerar como o cálculo do valor do candelabro OHLC é executado: Fechamento da barra atual: haFerrar (Aberta Alta Baixa Fechar) / 4 Abertura da barra atual: haOpen (haOpen antes. HaClose antes) / 2 Máximo da barra atual: HaHigh Max (High, haOpen, haClose) Mínimo da barra atual: haLow Min (Low, haOpen, haClose) Os valores de Open, High, Low e Close referem-se à barra atual. O prefixo ha indica os valores modificados correspondentes de heikin-ashi. Para facilitar a percepção de informações de mercado, a tecnologia Heikin-Ashi modifica a tradicional carta de candlestick, criando os chamados candelabros sintéticos, que removem irregularidades do gráfico normal, oferecendo um melhor quadro de tendências e consolidações. Basta olhar para o gráfico de candlestick, criado usando este método, você obtém uma boa visão geral do mercado e seu estilo: Figura 1. À esquerda é regular chandelier gráfico (a), à direita (b) Heikin-Ashi gráfico Fig . 1 mostra a diferença entre castiçais japoneses tradicionais de castiçais de Heiken Ashi. A característica distintiva destes gráficos é que em uma tendência ascendente a maioria de velas brancas não têm nenhuma sombra. Em uma tendência descendente não há nenhuma sombra superior para a maioria de velas pretas. Heiken Ashi gráfico não mostram quebras, então uma nova vela se abre ao nível dos anteriores meio. Os castiçais no gráfico de Heiken-Ashi mostram uma maior extensão de indicação de tendência do que os castiçais tradicionais. Quando a tendência enfraquece, os corpos de castiçais são reduzidos, e as sombras crescem. A mudança na cor dos castiçais é um sinal para comprar / vender. É mais conveniente determinar o fim de um movimento corretivo, baseado nesses gráficos. Este indicador é uma parte do MetaTrader 5 e você pode localizá-lo na pasta Indicadores Exemplos HeikenAshi. mq5. Antes de instalar o indicador no gráfico, recomendo que o gráfico seja linear. Além disso, nas propriedades do gráfico, na guia Geral, desmarque o item do gráfico superior. Gostaria de voltar a concentrar sua atenção no fato de que o método Heiken-Ashi não é um Santo Graal. Para provar isso, vou tentar criar um sistema de negociação simples (TS) usando apenas esta técnica. Para fazer isso, precisamos criar um Expert Advisor simples, usando a linguagem de programação MQL5 e classes de biblioteca padrão, e depois testá-lo em dados históricos, usando o testador de estratégia do MetaTrader 5 terminal. 2. Algoritmo do Sistema de Negociação Sem tornar as coisas muito complexas, criamos o algoritmo usando as seis regras básicas do procedimento Heiken-Ashi, propostas por Dan Valcu no seguinte site: educofin / Uma tendência crescente - candlestick azul haCloseampgt haOpen Uma tendência decrescente - candlestick vermelho haClose lthaOpen Uma forte tendência crescente - um candelabro azul, em que não há baixa haOpen haLow Uma forte tendência decrescente - um candlestick vermelho, que não é alta haOpen haHigh Consolidation - uma seqüência de castiçais com corpos pequenos (de qualquer cor ) E sombras longas Mudança de tendência - um castiçal com um corpo pequeno e longas sombras da cor oposta. Não é sempre um sinal confiável, e às vezes pode ser apenas uma parte da consolidação (5). Uma tendência de (1,2) é fácil de entender - se estamos em uma transação, simplesmente manter a posição, movendo a parada por 1-2 pontos abaixo / acima do anterior castiçal. Uma forte tendência (3, 4) agimos da mesma maneira - puxando para cima a parada. Consolidação (5) e uma mudança de tendência (6), fecha a posição (se não for fechada pela parada), porém precisamos decidir se deve ou não abrir uma posição oposta. Para tomar a decisão, precisamos de alguma forma determinar se uma consolidação ou uma reversão está ocorrendo. Precisamos de um filtro, baseado em indicadores, análise de castiçais ou análise gráfica. Os objectivos do nosso artigo não incluem o estabelecimento de uma estratégia rentável, mas quem sabe o que vamos conseguir como resultado. Portanto, vamos considerar que a aparência de uma vela da cor oposta, vamos fechar a posição e abrir um novo com a direção oposta. E assim, nosso algoritmo é como segue: Após a formação de uma vela da cor oposta, nós fechamos a posição precedente, se nós temos uma, e abrimos posições na abertura de uma vela nova, ajustando uma parada 2 pontos abaixo / Acima do mínimo / máximo da vela anterior. A tendência - movemos a parada 2 pontos abaixo / acima do mínimo / máximo da vela anterior. Com uma forte tendência, tomamos as mesmas medidas que fizemos com a tendência, ou seja, mover a parada. No geral, tudo é bastante simples, e espero que claro para o leitor. Agora vamos implementar isso na linguagem de MQL5. Para criar um Expert Advisor, precisamos apenas de um parâmetro de entrada - o tamanho do lote, as duas funções do manipulador de eventos OnInit (), OnTick () e nossa própria função CheckForOpenClose (). Para definir os parâmetros de entrada em MQL5 usamos variáveis ​​de entrada. Função OnInit () é o manipulador de eventos Init. Os eventos de inicialização são gerados imediatamente após o carregamento do Expert Advisor. No código desta função vamos conectar o indicador ao Expert Advisor. Como mencionei acima, o MetaTrader padrão 5 inclui um indicador HeikenAshi. mq5. Você pode se perguntar por que há tanta complexidade, se tivermos as fórmulas para calcular o indicador, e podemos calcular os valores no código do Expert Advisor. Sim, eu admito, é possível fazê-lo, mas se você olhar para um deles cuidadosamente: você verá que ele usa os valores anteriores, o que cria um certo inconveniente para cálculos independentes e complica a nossa vida. Portanto, em vez de cálculos independentes, vamos explorar as capacidades do MQL5 para conectar nosso indicador personalizado, especificamente, a função iCustom. Para fazer isso, adicionamos ao corpo da função OnInit () a seguinte linha: e obtemos uma variável global hHeikenAshi - handle do HeikenAshi. mq5, indicador, que precisaremos no futuro. A função OnTick () é o manipulador do evento NewTick (). Que é gerado com o aparecimento de um novo carrapato. Função TerminalInfoInteger (TERMINALTRADEALLOWED) verifica se a negociação é permitida ou não. Usando a função BarsCalculated (HHeikenAshi), verificamos a quantidade de dados calculados para o indicador solicitado, no nosso caso HeikenAshi. mq5. E se ambas as condições forem atendidas, veremos o cumprimento de nossa função CheckForOpenClose () onde o trabalho principal ocorre. Vamos olhar para ele com mais cuidado Uma vez que os termos do nosso TS especificar que a instalação de ordens ter lugar na abertura de um novo castiçal, precisamos determinar se um novo castiçal abriu ou não. Há muitas maneiras de fazer isso, mas o mais simples é verificar o volume de carrapatos. Assim, se o volume do carrapato é igual a um, isso indica a abertura de uma nova barra, e você deve verificar os termos de TS e colocar as encomendas. Implementá-lo da seguinte maneira: Crie uma matriz variável do tipo MqlRates do tamanho de um elemento. Usando a função Copy Rates (), obtenha nela os valores da última barra. Então verifique o volume do carrapato e se for maior do que um, termine a função, se não, então continue os cálculos. Em seguida, usando a diretiva define declaramos algumas constantes mnemônicas: Então declaramos o array: e usando a função CopyBuffer () obtemos os valores do indicador nos arrays apropriados. Quero focar sua atenção em como os dados são armazenados nas variáveis ​​da matriz. A barra mais antiga (historicamente) é armazenada no primeiro elemento da matriz (zero). A barra mais recente (atual) no último, BARCOUNT-1 (Fig. 2). Figura 2. A ordem dos castiçais e os valores dos índices da matriz E assim nós obtivemos os valores OHIC Heiken-Ashi, e resta verificar as condições para a abertura ou manutenção de uma posição. Considere em detalhe o processamento do sinal de venda. Como eu mencionei antes, temos os valores de três castiçais Heiken-Ashi. O valor atual está localizado nas células com o número BARCOUNT-1 2, e não é necessário para nós. Os valores anteriores estão nas células BARCOUNT-2 1, e as barras anteriores estão em BARCOUNT-3 0 (ver Fig. 2), e com base nessas duas barras verificamos os termos e condições de fazer o comércio. Então, precisamos verificar se há posições abertas no instrumento. Para fazer isso, usaremos a classe CPositionInfo de classes de negociação da biblioteca padrão. Esta classe nos permite obter informações sobre posições abertas. Usando o método Select (Symbol) determinamos a presença de posições abertas no nosso instrumento, e se estiverem presentes, então usando o método Type () determinamos o tipo de posições abertas. Se no momento atual temos uma posição aberta para comprar, então precisamos fechá-lo. Para fazer isso, usamos os métodos de classe CTrade da biblioteca de classes padrão. Que é projetado para realizar operações comerciais. Usando o método PositionClose (símbolo de string constante, ulong desvio), fecharemos a compra, onde o símbolo é o nome do instrumento eo segundo parâmetro, desvio, é o desvio permitido do preço de fechamento. Em seguida, verificar a combinação de castiçais de acordo com o nosso TS. Já que já verificamos a direção dos castiçais recém-formados (com o índice BARCOUNT-2), só precisamos verificar o castiçal antes dele (com o índice BARCOUNT-3) e executar as etapas necessárias para abrir a posição. Aqui é necessário voltar sua atenção para o uso de três métodos da classe CTrade: Método PositionOpen (símbolo, tipo de ordem, volume, preço, sl, tp, comentário) Usado para abrir uma posição onde símbolo é o nome do instrumento, Ordertype - tipo de ordem, volume - o tamanho do lote, preço - preço de compra, sl - Stop, tp - lucro, comentário - um comentário. Método PositionModify (símbolo, sl, tp) Usado para alterar o valor do stop e lucro, onde símbolo - o nome do instrumento, sl - Stop, tp - profit. Gostaria de chamar sua atenção para o fato de que antes de usar este método, você deve verificar a presença de uma posição aberta. O método ResultRetcodeDescription () é usado para obter a descrição do erro de código na forma de uma linha. No cálculo do stoploss variável, o valor do haHigh BARCOUNT-2 é um cálculo, recebido do indicador, e necessita de normalização, feito pela função NormalizeDouble (haHigh BARCOUNT-2, Dígitos) para ser usado corretamente. Isso completa o processamento do sinal para vender. Para comprar, usamos o mesmo princípio. Aqui está o código completo do Expert Advisor: O texto completo do Expert Advisor pode ser encontrado no arquivo anexado HeikenAshiExpert. mq5. Copie para o catálogo. MQL5 Especialistas, em seguida, execute o MetaEditor através do menu Tools - ampgt Editor MetaQuotes Language ou use a tecla F4. Em seguida, na janela Navegador, abra a guia Especialistas e faça o download do arquivo HeikenAshiExpert. mq5, clicando duas vezes nele, na janela de edição e compile pressionando F7. Se todas as operações foram realizadas corretamente, então na guia Consultores Especialistas, na janela Navegador, o arquivo HeikenAshiExpert será crated. O indicador HeikenAshi. mq5 deve ser compilado da mesma forma, está localizado no catálogo MQL5 Indicators Examples. 4. Testando o sistema de comércio em dados históricos Para verificar a viabilidade do nosso sistema de comércio, vamos usar o testador de estratégia MetaTrader 5, que é uma parte da plataforma de negociação. O testador é executado através do menu do terminal View - ampgt Strategy Tester ou pressionando a combinação de teclas Ctrl R. Uma vez que é lançado, localizamos a guia Configurações (Figura 3). Figura 3. Configurações do Strategy Tester Configurando o Expert Advisor - escolha uma lista de nossos Expert Advisors, indique o intervalo de testes entre o início de 2000 até o final de 2009, o valor do depósito inicial é de 10.000 USD, desative a otimização Têm apenas um parâmetro de entrada, e nós só queremos verificar a viabilidade do TS). O teste será feito usando dois pares de moedas. Decidi escolher os pares de moedas EURUSD e GBPUSD. Para o teste, eu decidi tomar os seguintes intervalos de tempo: H3, H6 e H12. Você vai perguntar porquê A resposta é porque eu queria testar o TS em intervalos de tempo, que não estavam presentes no terminal MetaTrader4. Então aqui vamos nós. Selecionamos a moeda de teste EURUSD, o período de teste H3 e clique em Iniciar. Após a conclusão do teste, vemos duas novas guias na janela do testador: Resultados (Fig. 4) e Gráfico (Fig. 5). Figura 4. Teste de estratégia de resultados EURUSD H3 A partir dos resultados dos testes (Fig. 4) Pode-se observar que para o período entre o início de 2000 eo final de 2009, com os parâmetros fornecidos, o TS produziu uma perda de -2560,60 USD. O gráfico (Figura 5) mostra a distribuição de lucros e perdas ao longo do tempo, o que nos dá a oportunidade de rever o desempenho de TS ao longo do tempo, e fazer uma análise de erros do sistema. Figura 5. Guia Gráfico do Testador de Estratégia (EURUSD H3) Eu quase esqueci de mencionar que a guia Resultados, por padrão, cria um relatório simples. Além disso, temos a capacidade de visualizar transações, ordens e relatórios de arquivos escritos. Para fazer isso, basta colocar o cursor sobre a guia, clicar com o botão direito do mouse e selecionar o item de menu apropriado: Figura 6. Menu Contexto da guia Resultados do Testador de Estratégia Aqui estão os resultados dos testes em um período de seis horas (H6): Figura 7. Guia Resultados do Testador de Estratégia (EURUSD H6) durante um período de 12 horas (H12). Figura 8. Guia Resultados do Testador de Estratégia (EURUSD H12) Parece que no par de moedas, como o EURUSD, nossa estratégia não é eficaz. Mas podemos notar que a variação do período de trabalho afeta significativamente o resultado. Estendemos nosso teste para o par de moedas GBPUSD, a fim de fazer conclusões finais sobre a eficiência do nosso TS. Figura 9. Guia Resultados do Testador de Estratégia (GBPUSD H12) Figura 11. Guia Resultados do Testador de Estratégia (GBPUSD H12) Figura 12. Guia Resultados do Testador de Estratégia (GBPUSD H12) Vemos que usando um par de moedas, como o GBPUSD, o nosso sistema demonstrou resultados positivos em dois casos separados. Durante um período de doze horas, recebemos um lucro considerável de 8903,23 USD, embora tenha sido recebido ao longo de nove anos. Aqueles que estão interessados ​​podem testar outros pares de moedas. Minha suposição é que quanto mais volátil o par é, o melhor resultado deve ser obtido, e o período de tempo mais longo deve ser usado. Conclusão Em conclusão, eu enfatizo, que este sistema de comércio não é o Santo Graal e não pode ser usado por conta própria. No entanto, se com sinais adicionais (análise de velas, análise de ondas, indicadores, tendências), separamos os sinais de reversão dos sinais de consolidação, em seguida, em alguns instrumentos de negociação volátil, pode ser bastante viável, embora improvável trazer um lucro louco. Nani Desu Ka - O que é isto (japonês) Traduzido do russo por MetaQuotes Software Corp. Artigo original: mql5 / ru / articles / 91Heiken Uso de indicador de Ashi Nós recebemos diversos pedidos para explicar como usar o indicador de Heiken Ashi. Como é indicador popular e seu uso é bastante incomum, decidimos explicá-lo no fórum, que muitos usuários podem se beneficiar. Tomamos uma de suas modificações (HeikenAshiSmoothed) e analisamos. Heiken Ashi candlestick tem 4 valores, como candlestick regular. Você pode vê-los na janela de dados do Metatrader (ctrld). À medida que você move o cursor no gráfico, vê como os números mudam com uma vela diferente. Você pode encontrar a imagem cheia aqui: eacreator / images / heikenashismoothed1.PNG Como você pode ver na imagem nós distinguimos que o valor na janela dos dados corresponde a que parte da vela. Você pode fazer a mesma coisa com qualquer indicador. Basta colocar o cursor em algum lugar no gráfico e verificar os números na janela de dados. Você deve ser capaz de entender que número significa o quê. Os modos na janela de dados do Metatrader e no site da Web (linha de saída do indicador / valor) estão sempre na mesma ordem (os nomes dos modos podem ser diferentes para alguns indicadores), então você deve saber qual escolher. Vamos ver vários exemplos. 1) Sinal de gatilho na primeira vela de cor de cal: Valor 2 Valor 1 (tipo de sinal: instantâneo) 2) Sinal de disparo na primeira vela vermelha: Valor 2EA para quotHeiken Ashi Smoothedquot Olá, alguém pode criar uma EA para o quotHeiken Ashi Smoothedquot Indicador EA Deve fazer o seguinte: Quando a vela do indicador é vermelho, abra um comércio vender e logo uma vela verde aparece, fechar o comércio vender e abrir um comércio de compra ao mesmo tempo. Quando a vela do indicador é verde, abra um comércio de compra e assim que uma vela vermelha aparece, fechar o comércio de compra e abrir um comércio de venda ao mesmo tempo. Portanto, é sempre apenas um único comércio aberto. Sem perda de parada, sem lucro. A EA deve permitir entrar os lotes que você deseja negociar. E também deve aumentar automaticamente o tamanho do lote, quando o saldo aumentou. Vamos dizer, você tem 10.000 e quer arriscar 1 do equilíbrio, a EA deve trocar automaticamente o tamanho correspondente. Portanto, também deve ser possível inserir a porcentagem máxima de seu saldo que você deseja arriscar para o comércio. O prazo não importa. Obrigado já por qualquer ajuda -) Registrado Nov 2007 Estado: Tentando modo manual novamente 2,209 Posts, se você não tem stoploss é impossível calcular um risco. SkyNet é auto-consciente Juntado Dezembro 2006 Status: Membro 135 Posts se você não tem stoploss é impossível calcular um risco. Desculpe eu quero dizer 1 do saldo para o cálculo o que lotes para usar, não um moneymanagement real -) Eu criei este EA um tempo atrás e usá-lo de vez em quando durante trending (não agitado) condições de negociação. A EA abre um comércio quando a cor da vela muda e fecha quando a cor da vela muda. Ele coloca os comércios um após o outro com base em mudanças de cor. Eu também incorporado tomar lucro, stop loss, breakeven e gestão do tempo. O EA faz bem em prazos mais elevados, especialmente em H4 durante os mercados de tendências. Eu nunca poderia encontrar um EA na internet que usou Heiken Ashi suavizado de uma forma simplista. Então aqui está. HeyOtis, obrigado pela EA eu estava de volta testá-lo ea falha que eu aviso é que ele abre negociação uma vez que as mudanças de cor e vela é quotCLOSEDquot que é a falha principal, porque pelo tempo que abre o comércio sua tarde de uma entrada. Se você pode desenvolver e EA que abre comércios em quot BREAKOUTquot do heikhen ashi ele wud ser muito melhor leme dar u uma imagem do meu sistema manual que eu mix heikhen ashi com gráficos LINE. Nota de Pls isto é carta de GBP / USD no frame de tempo de 1HR usando gráficos de linha com ashi de heken suavizado. 55 EMA nós filtro para tendência de modo tendo apenas comércios acima de 55 EMA cada gráfico de linha de tempo quebra a nuvem ashi heken. Se uma EA poderia ser baseada neste, eu acho que wed tem algo interessante na nossa mão. Imagem anexa (clique para ampliar) Entrou em Dez 2017 Status: Member 7 Posts GoodBoy, eu fiz algumas alterações para a EA e incorporou alguns elementos do seu estilo de negociação. Eu mudei o EA para colocar negócios se a vela se abre como uma cor diferente. Tenho notado, no entanto, que as condições de negociação agitada pode desencadear problemas. Eu também incorporou um EMA 55 em H4 como um filtro para o período de tempo H1. Achei que isso fosse um pouco mais confiável do que o EMA no mesmo período de tempo. Eu incorporei algumas notas na seção de variáveis ​​se você gostaria de fazer qualquer alteração sendo que isso está intimamente alined com seu sistema de negociação e você provavelmente saberá os melhores parâmetros para definir.

No comments:

Post a Comment