Detectando o mercado de ações forex


5 maneiras de identificar a direção da tendência.


Nossos cursos Premium Trading & amp; Mentorship.


Junte-se à nossa equipe, aprenda nossas estratégias exatas de negociação, receba um novo vídeo com as melhores configurações todas as semanas e beneficie-se de nossa orientação contínua em nossa comunidade privada.


5 maneiras de identificar a direção da tendência.


Negociar com a tendência é negociar com o fluxo. Quando a tendência prevalecente é alta, por que você iria querer procurar por lançamentos curtos quando comprasse poderia resultar em negócios muito mais suaves? Muitos comerciantes amadores, mesmo quando enfrentam uma tendência duradoura que tem ocorrido por meses, não conseguem parar de tentar prever as reversões, enquanto que poderiam ganhar muito mais dinheiro simplesmente juntando-se à tendência.


Mas, mesmo que você não seja um comerciante que segue a tendência, você pode combinar o conceito de negociação com a maior tendência temporal com sua abordagem comercial regular: você começa no cronograma Diário e ver se a tendência é para cima, para baixo ou para os lados e você usa Essa informação em seu prazo de execução mais baixo para o tempo de seus negócios (leia aqui: como realizar uma análise multi-horário). Para poder ler corretamente a ação do preço, as tendências e a direção da tendência, apresentaremos as formas mais eficazes de analisar um gráfico.


Em nosso curso de negociação Forex, você aprenderá ainda mais sobre essa forma de leitura e preço de negociação.


Introdução: as diferentes fases do mercado.


Antes de começarmos a pensar em como identificar a tendência, devemos primeiro esclarecer o que estamos procurando. Os mercados podem fazer uma das três coisas: subir, descer ou se mover de lado.


A imagem acima mostra os três cenários possíveis e como os mercados continuam alternando entre as fases. Mas saber o que aconteceu depois do fato é sempre a parte fácil. A parte difícil é descobrir o que está acontecendo atualmente quando os mercados se movem em tempo real e o espaço à direita está vazio - é aí que este artigo entra. Para ser claro, o artigo não pretende mostrar-lhe como identificar as entradas de negociação , mas para entender os preços e as tendências de uma forma mais eficiente.


1. A maneira simples: gráfico de linha.


A maioria dos traders usa apenas barras e velas quando se trata de observar gráficos, mas esquece completamente de uma ferramenta muito eficaz e simples que lhes permite olhar através de toda a desordem e ruído: o gráfico de linhas. O objetivo das barras e velas é fornecer informações detalhadas sobre o que está acontecendo em seus gráficos, mas isso é realmente necessário quando se trata de identificar a tendência geral? Provavelmente não.


Um operador faria bem em diminuir o zoom de vez em quando (pelo menos uma vez por semana) e mudar para o gráfico de linhas para obter uma imagem melhor e mais clara do que está acontecendo atualmente. E como nosso único objetivo é identificar a direção, o gráfico de linhas é um ponto de partida perfeito, especialmente quando estamos no período mais alto e queremos apenas identificar a direção geral do mercado.


2. Altos e baixos.


Esta é a minha maneira favorita de analisar gráficos e, embora pareça tão simples, geralmente é tudo o que você precisa. A análise técnica convencional diz que, durante uma tendência de alta, você tem níveis mais elevados, porque os compradores estão na maioria e aumentam o preço mais alto, e os níveis baixos também são maiores, porque os compradores continuam comprando os mergulhos mais cedo e mais cedo. Funciona da mesma forma durante uma tendência de baixa: as baixas são mais baixas quando o excedente do vendedor move os preços para baixo e os altos são mais baixos porque os vendedores vendem mais cedo e os compradores não estão tão interessados.


Novamente, não é muito importante ficar totalmente perdido se você estiver usando a direção da tendência apenas como um filtro para seus negócios. Na maioria dos casos, você deve ser capaz de dizer com relativa rapidez se você está em uma tendência de alta, em uma tendência de baixa ou em um intervalo.


Regra geral: se você não consegue dizer o que está acontecendo nos seus gráficos rapidamente, geralmente é melhor ficar de lado até que você possa ver claramente novamente.


3. Médias móveis.


Médias móveis são, sem dúvida, entre as ferramentas de negociação mais populares e são ótimas para identificar a direção do mercado também. No entanto, há algumas coisas que devem estar cientes quando se trata de analisar a direção da tendência com médias móveis.


A duração da média móvel causa um grande impacto quando você recebe um sinal quando os mercados mudam. Uma pequena média móvel (rápida) pode dar muitos sinais iniciais e falsos porque reage cedo demais a movimentos menores de preço. Por outro lado, uma média móvel rápida pode fazer com que você saia cedo quando a tendência está prestes a mudar. Uma média lenta pode fornecer sinais muito tarde. Ou pode ajudá-lo a aumentar as tendências ao filtrar o ruído.


Na imagem abaixo, usamos o 50 EMA, que é uma média móvel de médio prazo. Você pode ver isso durante uma tendência de alta, o preço sempre ficou bem acima da média móvel e, uma vez que o preço cruzou a média móvel, entrou em um intervalo. Em um intervalo, o preço não presta muita atenção às médias móveis porque elas estão no meio do intervalo, portanto, na média.


Se você quiser usar as médias móveis como um filtro, você pode aplicar os 50 MA ao período diário e, em seguida, apenas procurar negociações na direção do MA diário nos prazos mais baixos.


4. Canais e linhas de tendência.


Canais e linhas de tendência são outra maneira de identificar a direção de uma tendência e também podem ajudá-lo a entender melhor os mercados de alcance.


Considerando que as médias móveis e a análise de altos e baixos também podem ser usadas durante os estágios iniciais das tendências, as linhas de tendência são mais adequadas para os estágios de tendências posteriores porque você precisa de pelo menos 2 pontos de toque (melhor 3) para desenhar uma linha de tendência.


Eu uso principalmente linhas de tendência para identificar mudanças nas tendências estabelecidas; quando você tem uma forte tendência e, de repente, a linha de tendência quebra, pode sinalizar a transição para uma nova tendência. As linhas de tendência durante os intervalos são ideais quando se trata de encontrar cenários de fuga quando o preço entra no modo de tendência novamente. Além disso, as linhas de tendência podem ser combinadas com médias móveis muito bem devido às características complementares.


Se você quiser saber mais sobre as linhas de tendência, reserve alguns minutos e assista ao nosso vídeo aqui: aprenda como desenhar linhas de tendência.


5. Como usar o indicador ADX.


O ADX é um indicador que você pode usar para determinar a direção da tendência e também a força. O indicador ADX vem com três linhas: a linha ADX que informa a força da tendência (eliminamos essa linha em nosso exemplo, uma vez que só queremos analisar a direção da tendência), a linha + DI que mostra a força alta (linha verde) e a linha - DI que mostra a força de baixa (linha vermelha).


Como você pode ver na captura de tela abaixo, o ADX sinaliza uma tendência de alta quando a linha verde está em cima da linha vermelha, e sinaliza uma tendência de baixa quando a linha vermelha é maior do que a linha verde. Quando o preço está variando, as duas linhas DI estão muito próximas e se deslocam em torno do meio.


O ADX pode ser combinado com médias móveis muito bem e você pode ver que uma vez que as linhas DI cruzam, o preço também atravessa a média móvel. No vídeo abaixo, explicamos como usar o ADX com mais detalhes com os outros conceitos.


Combinando as melhores ferramentas de negociação.


Como vimos neste artigo, cada ferramenta e conceito tem suas vantagens e limitações - nada funcionará o tempo todo. No entanto, não é necessário que você encontre uma maneira de alcançar uma winrate de 100% (o que não acontecerá de qualquer maneira), desde que seus vencedores sejam maiores do que suas perdas.


No final, tudo se resume a quão bem você escolhe suas ferramentas de negociação, como as entende e como é bom quando se trata de aplicá-las às condições do mercado.


Como determinar se um mercado está variando?


Como determinar se um mercado está variando?


Anexe também sua linha de tendência instantânea para ver se o sistema está tendendo.


RSI & gt; 60 Forte tendência de alta.


RSI & lt; 40 Tendência de baixa forte.


RSI entre 40-50 tendência de baixa fraca.


RSI entre 50-60 fraco tendência de subida.


sistema de negociação BB fxlovers.


mercado variando quando o bb20 superior e inferior está fora do bb50 superior e inferior, e o bb50 é plano.


com esses indicadores podemos determinar a condição do mercado (variando e tendendo)


Eu tenho usado este sistema por meio ano e o resultado é muito bom.


Detectando e negociando mercados vinculados à faixa.


Enviado por Edward Revy em 17 de dezembro de 2009 - 13:05.


Participe para descobrir novas ideias, indicadores e ferramentas para obter controle adicional sobre a negociação com limite de intervalo.


O fato é que, durante mercados em alta tendência, a maioria dos operadores Forex negociam lucrativa e confortavelmente, mas uma vez terminada a tendência, surgem todos os tipos de problemas: os sistemas que seguem tendências não funcionam mais, a frequência de falsos sinais de entrada aumenta, trazendo perdas adicionais lucros acumulados.


Levando em consideração que o mercado Forex gasta até 50% do tempo em um estado lateral sem tendência, o conhecimento de como lidar com os mercados vinculados ao intervalo torna-se vital.


Qual é a coisa mais simples que sabemos sobre o mercado de alcance?


. Seu começo é difícil de detectar. Muitas vezes, quando percebemos que o mercado está variando, já fizemos alguns erros e pagamos por ele.


Existem várias estratégias que dizem como negociar durante os mercados de limites de oferta, mas há poucas que ensinam como identificar mercados ligados ao intervalo em seus estágios iniciais, para que possamos realmente ter uma escolha: negociar ou evitá-lo.


Negociação Forex com limite de faixa (diretrizes gerais)


# 1: discutiremos métodos e ideias para detectar e negociar em mercados com limite de alcance. Esses métodos não vão protegê-lo completamente do clima do mercado em constante mudança, mas o ajudarão a antecipar e fazer “previsões do tempo” com precisão adicional.


# 2: Vamos usar a regra principal: se o mercado não é tendência, trate-o sempre como um mercado abrangente.


Ao usar sinais indicadores, se um indicador não mostrar mais sinais de uma tendência saudável, trate-o imediatamente como um começo de um mercado limitado por intervalo até novas melhorias.


# 3: Existem poucos sistemas que podem negociar muito bem em ambos: mercados de tendências e tendências, mais frequentemente é um ou outro. Se o seu sistema de negociação continuar perdendo durante os mercados, você tem duas opções: a. interromper a negociação durante os mercados com limite de faixa; b. faça um sistema adicional para usar durante este período.


# 1 Negociação com limites de alcance (50 SMA angle)


Enviado por Edward Revy em 17 de dezembro de 2009 - 17:40.


Um dos métodos para detectar um mercado com limite de alcance é observar o ângulo da média móvel.


Se, por exemplo, nossa média móvel (MA) estiver aumentando rapidamente - o ângulo da linha MA no gráfico ficará mais acentuado e mais inclinado.


Já nesta fase inicial, podemos fazer uma conclusão: se o ângulo da média móvel está subindo - a tendência está ficando mais forte. Se o ângulo está caindo - a tendência está ficando mais fraca.


Se o ângulo da média móvel for insignificante, próximo do plano ou plano - sabemos que o mercado entrou em seu modo lateral.


Agora vamos dar uma olhada em 50 SMA (independentemente do intervalo de tempo) e seu ângulo no gráfico.


A direção na qual a média móvel está indo não é importante. o ângulo em que sobe ou desce é o que nos interessa.


Primeiro de tudo, é uma orientação visual - quando a média móvel está na horizontal, sabemos que a tendência foi pausada ou inexistente.


Mas nós não paramos apenas na avaliação visual. Já existe uma ferramenta para nos ajudar a calcular os números / ângulos para melhor precisão e confirmação adicional.


Este é um indicador MT4 personalizado: MAAngle. mq4.


Calcula o ângulo da média móvel (MA) a qualquer momento e exibe-o como um histograma. Quando o MA fica completamente vazio - o indicador é amarelo, outras vezes ele mostra se o MA está subindo ou descendo e quão rápido ele o faz.


Mas isso não é tudo. Você pode alterar as configurações do indicador, especialmente Angle Threshold para tornar o histograma mais (ou menos) sensível a alterações de ângulo.


Então, isso concluirá nosso primeiro método de detecção de mercados de alcance.


Eu tenho muito mais ideias e métodos para compartilhar. Fique ligado!


Usando os níveis de Fibonacci para detectar mercados de limite e tendência de alcance.


Usando os níveis de Fibonacci para detectar mercados de limite e tendência de alcance.


(Por que não devemos comprar breakouts):


O mercado FX oscila regularmente entre os mercados de limite de faixa e de tendência. Na faixa de condições de mercado, os traders normalmente adotam uma abordagem de compra simples baixa, vendem alta, onde os climas de tendência do mercado exigem que os traders negociem com a tendência. No entanto, detectar se o mercado está atualmente em um ambiente de limite ou tendência de variação pode ser complicado e dispendioso se aplicado de modo impreciso. Com isso dito, os níveis de Fibonacci podem fornecer uma visão valiosa para o clima de mercado atual e a abordagem comercial adequada.


O primeiro gráfico abaixo mostra uma recuperação significativa no sentido ascendente, à medida que a tendência inverteu a direção, o mercado então passou por todos os 3 níveis de Fibonacci comumente usados; 38,2%, 50% e 61,8%. Devido ao fato de que nenhum dos nossos níveis de Fibonacci estabeleceu nosso novo suporte, podemos extrapolar que uma tendência não é provável. É importante ter em mente que existem tendências quando há uma distribuição desigual de compradores e vendedores, forçando o mercado a novos preços altos / baixos. No entanto, devido ao fato de que o mercado caiu abaixo de cada linha de Fibonacci, indica que os compradores não estavam de fato no controle do mercado. Por fim, observe como o mercado atingiu um novo mínimo "ligeiramente" antes de reverter novamente para o lado positivo. Se vendêssemos a descoberto o mercado a um preço ligeiramente novo, teríamos certamente saído do mercado com prejuízo.


Podemos agora ver como o mercado subiu de volta para o lado positivo e encontrou uma nova resistência (menor) no nível de Fibonacci de 50%; medido agora de nossos recentes preços altos para baixos. Devido ao fato de que o progresso do mercado foi interrompido em um nível específico de Fibonacci nos diz que naquele momento, os vendedores tinham de fato tomado o controle do mercado, já que não permitiriam que os compradores nos obrigassem a recuar para as altas recentes. uma tendência descendente subsequente é agora mais provável.


Essas observações também nos ensinam uma valiosa lição contra a prática de comprar novos máximos ou vender novas mínimas. A sabedoria convencional determina que, se o mercado atingir um novo preço alto, os curtos (stops) serão acionados, o que levará o mercado a níveis ainda mais altos. No entanto, após um estudo cuidadoso dos dois gráficos acima, ficamos sabendo que, se uma nova tendência estiver intacta, o mercado "deveria ter" encontrado um novo nível de suporte / resistência em uma das linhas de Fibonacci anteriores. Após o primeiro rali ter sido concluído, e como o mercado recuou para os mínimos recentes, o fato de o mercado não encontrar um novo suporte (mais alto) em um dos nossos níveis de Fibonacci nos diz que os compradores não estavam de fato, no controle, e uma distribuição relativamente igual de poder permaneceu entre as forças de compra e venda que têm uma chance maior de nos manter em um ambiente de mercado de faixa perpétua. Por outro lado, devido ao fato de que o mercado encontrou nova resistência menor em um nível de Fibonacci indica uma pressão de venda mais forte, e uma maior probabilidade de uma nova tendência para o lado negativo agora irá emergir.


O DailyFX fornece notícias e análises técnicas sobre as tendências que influenciam os mercados monetários globais.


Várias maneiras de encontrar uma tendência no MQL5.


Introdução.


Qualquer trader conhece a regra "Tendência é seu amigo, siga a tendência", mas quase todo mundo tem sua própria idéia sobre o que é uma tendência. Quase todos os traders ouviram ou leram histórias horríveis, que contam como os comerciantes, que negociavam contra a tendência, se arruinaram.


Qualquer negociador daria muito a oportunidade de detectar com precisão uma tendência a qualquer momento. Talvez este seja o Santo Graal que todos estão procurando. Neste artigo, vamos considerar várias maneiras de detectar uma tendência. Para ser mais preciso - como programar várias formas clássicas de detectar uma tendência por meio do MQL5.


1. O que é uma tendência e por que conhecê-la


Primeiro de tudo, vamos formular o conceito geral de uma tendência.


Tendência - é uma tendência de longo prazo (direção) de mudança de preço no mercado. A partir dessa definição geral de tendência vêm as conseqüências:


A direção da mudança de preço depende do prazo, no qual as séries de tempo de preço são consideradas. A direção da mudança de preço depende do ponto de referência, a partir do qual se inicia a análise de timeseries para identificar uma tendência.


Vamos ilustrar esse conceito:


Figura 1. Análise de Tendências.


Olhando para a figura, você pode ver que a tendência geral desde o final de 2005 até maio de 2006 está crescendo (seta verde no gráfico). Mas se considerarmos pedaços menores de tabela de preços, você verá que em fevereiro de 2006 a tendência foi claramente para baixo (seta vermelha no gráfico), e quase todo o mês de janeiro o preço estava no corredor lateral (seta amarela).


Portanto, antes de identificar uma tendência, é necessário determinar em que período você está interessado. Para o comércio, o período de tempo determina primeiro o tempo de manutenção da posição no mercado, desde a sua abertura até o fechamento. Além disso, dependentes são os níveis de paradas de proteção e fechamento esperado, bem como a frequência das operações comerciais.


O objetivo deste artigo é ajudar novos traders a usar com competência ferramentas de detecção de tendências, fornecidas pela plataforma MetaTrader 5. Este artigo também visa dar conhecimentos básicos de escrita de indicadores simples, que automatizam esse processo. O objetivo final é escrever especialistas simples, que usam esses indicadores para negociação automatizada.


Por definição, vamos considerar o gráfico de preço diário (período de tempo D1 no terminal) do instrumento mais líquido no mercado Forex - EURUSD. O tempo de permanência em tal período pode variar de vários dias a vários meses. Assim, o objetivo - é levar centenas e até milhares de pontos, e as perdas de parada de proteção estão localizadas a uma distância de várias centenas de pontos.


Em geral, todos os descritos abaixo podem ser usados ​​em qualquer período de tempo. No entanto, tenha em mente que quanto menor for o cronograma do gráfico, o maior impacto no comércio tem o componente de ruído, causado por notícias, especulações de mercado dos principais participantes e outros fatores, afetando a volatilidade do mercado.


Se levarmos em conta, quanto mais longa for a tendência, menos provável ela mudará, então, ao negociar com a tendência, é mais provável ganhar do que perder dinheiro. Agora você precisa entender como detectar uma tendência no gráfico de preços. Isso será discutido neste artigo.


2. Como detectar uma tendência.


Aqui estão algumas formas conhecidas de detecção de tendências:


Movendo Médias Por picos de ziguezague Por indicações de ADX Por NRTR Por cor dos castiçais de Heiken Ashi.


Consideraremos consistentemente todos esses métodos, suas vantagens e desvantagens. Então, vamos compará-los no mesmo período da história.


2.1. Detecção de tendência usando a média móvel.


Talvez, a maneira mais fácil de detectar uma tendência e sua direção - usando médias móveis. Uma das primeiras ferramentas de análise técnica - média móvel - ainda é usada em diferentes variações e é a base da maioria dos indicadores. Os traders usam uma média móvel e um conjunto inteiro deles, que às vezes é chamado de "fã".


Vamos formular uma regra simples para uma média móvel: a tendência aumenta se, em um dado período de tempo, o preço de fechamento da barra estiver acima da média móvel.


Neste caso, usaremos o preço de fechamento da barra para reduzir o número de mudanças de tendência "falsas", quando o preço flutuar para cima e para baixo perto da média móvel (o chamado "salto").


Vamos ilustrar esse método:


Figura 2. Identificando uma tendência usando a média móvel.


Aqui usamos o gráfico EURUSD D1 e uma média móvel simples com período 200, construído sobre os preços de fechamento (linha vermelha no gráfico). Na parte inferior da figura você pode ver o indicador de tendência especialmente desenvolvido - MATrendDetector. A direção da tendência é indicada pela posição do histograma do indicador, em relação ao eixo zero. +1 corresponde à tendência ascendente. -1 - tendência descendente. Além disso, discutiremos este e outros indicadores usados ​​neste artigo.


Você pode ver que, quando a barra fecha acima / abaixo da média móvel, o preço muitas vezes se transforma em direção oposta. Ou seja esse método fornece muitos sinais falsos. É por isso que o seu uso em especialistas e indicadores é muito limitado, apenas como um filtro muito "bruto" de tendência.


2.2. Detecção de tendência usando três médias móveis.


O que pode ser feito para melhorar a qualidade da detecção de tendências usando médias móveis? Por exemplo, você pode usar duas ou mais médias móveis com períodos diferentes. Então, a regra de detecção de tendência para qualquer número (mais de um) de médias móveis com períodos diferentes será a seguinte:


A tendência aumenta se, em um determinado período de tempo, todas as médias móveis são plotadas na ordem crescente correta no fechamento da barra. A tendência diminui se, em um dado período de tempo, todas as médias móveis são plotadas em ordem de queda correta no fechamento da barra.


Aqui usamos os seguintes termos:


Ordem ascendente correta - cada média móvel deve ser maior que todas as outras médias móveis com período mais alto. Ordem de queda correta - cada média móvel deve ser menor que todas as outras médias móveis com período mais alto.


Essa "ordem correta de médias" também é chamada de abertura para cima / para baixo do ventilador de médias, devido à semelhança visual.


Vamos ilustrar esse método:


Figura 3. Detecção de tendência usando várias médias móveis.


Aqui usamos o gráfico EURUSD D1 e médias móveis simples com períodos 200 (linha vermelha grossa), 50 (linha amarela de espessura média) e 21 (linha roxa fina), construídos com base nos preços de fechamento.


Na parte inferior da figura você pode ver o indicador de tendência especialmente desenvolvido - FanTrendDetector. A direção da tendência é indicada pela posição do histograma do indicador, em relação ao eixo zero. +1 corresponde à tendência ascendente. -1 - tendência descendente. Se o valor do histograma for igual a zero, isso significa que a tendência não pode ser detectada. Há também o indicador MATrendDetector para comparação.


É evidente que o número de falsos alarmes de mudança de tendência foi reduzido. Mas o atraso na detecção de tendências foi aumentado. Isso faz sentido - até que todas as médias móveis estejam alinhadas na ordem "correta", isso pode levar algum tempo. O que é melhor e o que não é - depende do sistema de negociação, que usa esses métodos.


Neste caso, os valores de período das médias não são selecionados de qualquer forma, mas são mais amplamente utilizados pelos comerciantes e pelo autor do artigo. Ao selecionar um conjunto de médias e seu número, você pode tentar melhorar as características desse método de detecção de tendências para um par de moedas específico.


2.3. Detecção de tendência usando o máximo e mínimo do indicador ZigZag.


Agora vamos nos aproximar da detecção de tendências a partir da perspectiva de clássicos de análise técnica. A saber, usaremos a seguinte regra de Charles Dow:


A tendência aumenta se cada próximo máximo local do gráfico de preços for maior que o máximo local anterior e cada gráfico local de preço mínimo subseqüente também for maior que o mínimo local anterior. A tendência diminui se cada mínimo local subseqüente do gráfico de preços for menor que o mínimo local anterior e cada gráfico de preço máximo subseqüente local também for menor que o máximo local anterior.


Vamos encontrar máximos / mínimos locais pelos topos do indicador Zigzag.


Vamos ilustrar esse método:


Figura 4. Detecção de tendência usando o indicador ZigZag.


Aqui usamos o gráfico EURUSD D1 e o Zigzag com os seguintes parâmetros: ExtDepth = 5, ExtDeviation = 5, ExtBackstep = 3.


Na parte inferior da figura você pode ver o indicador de tendência especialmente desenvolvido - ZigZagTrendDetector.


A principal desvantagem deste método de detecção de tendências - em tempo real, é impossível entender se o extremo já está formado ou não. Na história, os extremos podem ser vistos muito bem, e você pode entender onde eles foram formados. No entanto, quando o preço muda em tempo real, o extremo formado pode subitamente desaparecer ou aparecer novamente. Para ver isso, basta olhar para as linhas do Zigzag que traçam no modo de teste visual de qualquer especialista.


Essa desvantagem torna este método inútil para uso prático no comércio. Mas é muito útil para a análise técnica de dados históricos encontrar padrões e avaliar a qualidade de vários sistemas de negociação.


2.4. Detecção de tendência usando o indicador ADX.


O seguinte caminho considerado - é a detecção de tendências usando o indicador ADX (Average Direcional Movement Index). Este indicador é usado não apenas para detectar a direção da tendência, mas também para avaliar sua força. Este é um recurso muito valioso do indicador ADX. A força da tendência é determinada pela linha ADX principal - se o valor for maior que 20 (o nível geralmente aceito, mas não necessariamente o melhor no momento), então a tendência é forte o suficiente.


A direção da tendência é determinada pelas linhas + DI e - DI entre si. Este indicador usa a suavização de todas as três linhas com média exponencial e, portanto, tem um atraso de resposta à mudança de tendência.


Vamos formular a regra da detecção de tendências:


A tendência aumenta, se a linha + DI for maior que a linha - DI. A tendência diminui, se a linha + DI for menor que a linha - DI.


Nesse caso, a linha de tendência ADX não é usada para detectar uma tendência. É necessário reduzir o número de sinais falsos deste indicador. Se a tendência for fraca (ADX é menor que 20), é melhor esperar até que ela se torne mais forte e só então começar a negociar com a tendência.


Vamos ilustrar esse método:


Figura 5. Identificando uma tendência usando o indicador ADX.


Aqui usamos o gráfico EURUSD D1 e o indicador ADX com os seguintes parâmetros: PeriodADX = 21 (linha azul grossa - valor da força da tendência ADX, linha verde fina - valor de + DI, linha vermelha fina - valor de - DI).


Na parte inferior da figura você pode ver o indicador de tendência especialmente desenvolvido - ADXTrendDetector. Para comparação, no gráfico superior (carmesim) do indicador ADXTrendDetector, o filtro de força de tendência foi desabilitado (ADXTrendLevel = 0), e no gráfico inferior (azul) - foi habilitado (ADXTrendLevel = 20).


Observe que a parte do chamado "salto" na detecção da direção da tendência foi descartada quando ativamos o filtro de força de tendência. É desejável usar este filtro no trabalho real. Melhoria adicional da qualidade do indicador pode ser alcançada pela seleção hábil de parâmetros externos de acordo com a situação atual no mercado (flat / range / trend) e dependendo da natureza do movimento do par de moedas.


Em geral, esse indicador fornece uma boa oportunidade para criar sistemas de negociação de rastreamento de tendência à medida que as entradas são filtradas.


2.5. Detecção de tendência usando o indicador NRTR.


O seguinte método de detecção de uma tendência - usando o indicador NRTR (Nick Rypock Trailing Reverse). Este indicador está sempre localizado a uma distância constante dos preços extremos atingidos - preços mais baixos nas tendências de alta e preços mais altos nas tendências de baixa. A idéia principal deste indicador - pequenos movimentos corretivos contra a tendência principal deve ser ignorada, e o movimento contra a tendência principal, excedendo certo nível, sinaliza mudanças na direção da tendência.


A partir dessa declaração, vem a regra de detectar a direção da tendência:


A tendência aumenta - se a linha do indicador corresponder à tendência de alta no fechamento da barra. A tendência diminui - se a linha do indicador corresponder à tendência de baixa no fechamento da barra.


Para reduzir a influência de reversões falsas de tendência nas flutuações de preço, usaremos os preços de fechamento para verificar a posição da linha NRTR.


Vamos ilustrar esse método:


Figura 6. Identificando uma tendência usando o indicador NRTR.


Estes grandes pontos azuis correspondem à tendência ascendente, enquanto os grandes pontos vermelhos - para a tendência descendente. Na parte inferior do gráfico exibido nosso indicador de tendência NRTRTrendDetector, descrito abaixo.


2.6. Detecção de tendências usando três velas Heiken Ashi.


Outra maneira popular de detectar uma tendência - é usar os candelabros Heiken Ashi. Gráficos Heiken Ashi são os gráficos de castiçais japoneses modificados. Seus valores são parcialmente calculados com a vela anterior.


Vamos ilustrar esse método:


Figura 7. Detecção de Tendência por Cor de Castiçais de Heiken Ashi.


Como você pode ver, este método também não está livre de sinais "falsos", quando o preço flutua em um corredor lateral. Mas o pior é que esse indicador pode redesenhar não apenas a última barra, mas também a penúltima. Ou seja o sinal no qual nós entramos, pode ser revertido na próxima barra. Isso se deve ao fato de que, quando a cor dos castiçais é determinada, duas barras são analisadas, por isso, recomenda-se usar esse método em conjunto com outros sinais de suporte.


3. Indicadores de tendência.


Agora vamos criar indicadores de tendência.


3.1. Indicador de tendência com base na média móvel.


O indicador mais fácil, como a maneira mais fácil de determinar uma tendência, com base na média móvel. Vamos considerar, de que partes consiste. O código-fonte completo do indicador está no arquivo MATrendDetector. MQ5, anexado ao artigo.


No início do programa indicador vem a linha, que conecta a biblioteca para calcular as várias médias móveis. Esta biblioteca é fornecida com o Terminal do Cliente e está pronta para uso imediatamente após a instalação. Aqui está esta linha:


Vamos usar uma função dele, que calcula uma média móvel simples:


Aqui você define os parâmetros de entrada:


position - índice inicial no array price [], a partir do qual começa o cálculo. período - período de média móvel, deve ser maior que zero. price [] - array, que contém a faixa de preço especificada durante o posicionamento do indicador no gráfico. Por padrão, os preços de fechamento da barra Fechar [] são usados.


A função retorna o valor calculado da média móvel.


A próxima parte do texto contém as configurações iniciais para exibir o indicador na tela:


Os seguintes parâmetros estão definidos:


#property indicator_separate_window informa ao terminal MetaTrader 5 para exibir o gráfico indicador em uma janela separada. #property indicator_applied_price PRICE_CLOSE - tipo de preço usado por padrão. #property indicator_minimum -1.4 - valor mínimo do eixo vertical, exibido na janela do indicador. #property indicator_maximum +1.4 - valor máximo do eixo vertical, exibido na janela do indicador.


Os dois últimos parâmetros permitem que você defina uma escala fixa para exibir o gráfico do indicador. Isso é possível porque sabemos os valores mínimo e máximo do nosso indicador - de -1 a +1 inclusive. Isso é feito para o gráfico parecer bonito, não para sobrepor as bordas das janelas e o título do indicador na janela.


#property indicator_buffers 1 - número de buffers para o cálculo do indicador. Nós usamos apenas um buffer. #property indicator_plots 1 - número de séries gráficas no indicador. Exibimos apenas um gráfico na tela. #property indicator_type1 DRAW_HISTOGRAM - exibe o gráfico do indicador como histograma. #property indicator_color1 Black - cor padrão do gráfico indicador. #property indicator_width1 2 - largura da linha do gráfico do indicador, neste caso é a largura das colunas do histograma.


Em seguida, vem a parte para inserir os parâmetros externos do indicador, que podem ser alterados durante a colocação do indicador no gráfico e, mais tarde, quando estiver funcionando:


Existe apenas um parâmetro - o valor do período médio móvel.


A próxima parte essencial do indicador - funções, que processam vários eventos, que ocorrem quando o indicador funciona no gráfico.


A primeira vem a função de inicialização - OnInit (). É chamado imediatamente após carregar o indicador. Em nosso indicador, parece o seguinte:


A função SetIndexBuffer () liga a matriz previamente declarada, na qual armazenamos os valores da tendência TrendBuffer [], com um dos buffers do indicador. Temos apenas um buffer de indicador e seu índice é igual a zero.


A função PlotIndexSetInteger () define o número de barras iniciais sem desenhá-las na janela do indicador.


Como é matematicamente impossível calcular uma média móvel simples do número de barras menores que seu período, vamos especificar o número de barras, igual ao período da média móvel.


Em seguida vem a função, que processa eventos sobre a necessidade de recalcular um indicador - OnCalculate ():


Essa função é chamada pela primeira vez após a inicialização do indicador e ainda a cada vez que os dados de preço são alterados. Por exemplo, quando surge um novo tick no símbolo para o qual o indicador é calculado. Vamos considerar isso em detalhes.


Primeiro, verifique se há número suficiente de barras em um gráfico - se ele for menor que o período da média móvel, então não há nada para calcular e essa função termina com o operador de retorno. Se o número de barras for suficiente para cálculos, determine a barra inicial, a partir da qual o indicador será calculado. Isso é feito para não recalcular todos os valores do indicador em cada faixa de preço.


Aqui nós usamos o mecanismo, fornecido pelo terminal. Toda vez que você chama uma função de manipulador, verifica o valor do argumento da função _prev_calculated - este é o número de barras, processadas na chamada anterior da função OnCalculate (). Se for zero, recalcule todos os valores do indicador. Caso contrário, recalcule apenas a última barra com o índice _prev_calculated - 1.


O loop de cálculo dos valores do buffer de indicador é realizado pelo operador for - em seu corpo, chamamos a função de detecção de tendências TrendDetector para cada valor de buffer de indicador recalculado. Assim, substituindo apenas esta função, podemos implementar diferentes algoritmos para calcular a direção da tendência. Neste caso, o resto das partes do indicador de fato permanecem inalteradas (é possível que os parâmetros externos estejam mudando).


Agora vamos considerar a função de detecção de tendências em si - TrendDetector.


A função executa as seguintes tarefas:


Calcula a média móvel simples, começando da barra, definida pelo argumento _shift. Ele usa a função de biblioteca SimpleMA. Compara os valores de preço nessa barra com o valor médio móvel. Se o valor do preço for maior que o valor médio móvel, ele retornará 1, ou se o valor do preço for menor do que o valor médio móvel, retornará -1, caso contrário, retornará zero.


Se a função retornou zero, isso significa que a tendência não pôde ser detectada.


O resultado do trabalho do indicador pode ser visto na Figura 2 e na Figura 3.


3.2. Indicador de tendência baseado em "Fan" de médias móveis.


Agora vamos ver, com base nesse indicador, você pode criar um indicador um pouco mais complexo, que usa o "ventilador" das médias móveis para detectar uma tendência.


O código fonte completo do indicador está no arquivo FanTrendDetector. MQ5, anexado ao artigo.


As diferenças deste indicador em relação ao anterior são as seguintes:


Períodos de três médias móveis são definidos nos parâmetros externos: Outra função TrendDetector:


A função verifica se as médias móveis estão localizadas na ordem correta, comparando-as entre si usando o if. outros operadores e sua ordem. Se as médias estiverem organizadas em ordem crescente, ela retornará 1 - tendência de alta. Se as médias são organizadas em ordem decrescente, então retorna -1 - tendência de baixa. Se ambas as condições, marcadas em if block, forem falsas, ela retornará zero (a tendência não pôde ser detectada). A função tem dois argumentos de entrada - a mudança no buffer da barra analisada e o próprio buffer com uma série de preços.


O restante das partes do indicador é o mesmo que no anterior.


3.3. Indicador de tendência baseado no indicador ZigZag.


Agora vamos considerar o indicador, que usa fraturas do Zigzag para determinar os extremos e detectar a direção da tendência de acordo com Charles Dow. O código-fonte completo do indicador está no arquivo ZigZagTrendDetector. MQ5, anexado ao artigo.


As variáveis ​​externas são atribuídas com valores de parâmetros do indicador externo ZigZag:


Uma diferença importante deste indicador - o número de buffers de indicador. Aqui, além do buffer de exibição, usamos mais dois buffers de cálculo. Portanto, alteramos a configuração apropriada no código do indicador:


Adicione dois buffers adicionais. Eles armazenarão os extremos, obtidos do indicador externo ZigZag:


Também é necessário fazer alterações no manipulador de eventos de inicialização do indicador - defina esses dois buffers adicionais como buffers de cálculo:


No código de cálculo da função OnCalculate, também temos que fornecer a leitura de fraturas em ziguezague em nossos buffers. Isto se faz do seguinte modo:


A função TrendDetector é assim:


Aqui nós procuramos os últimos quatro extremos do ziguezague. Observe que a pesquisa retorna no histórico. É por isso que, o índice no loop for diminui em cada iteração de pesquisa para zero. Se os extremos forem encontrados, eles serão comparados entre si quanto à consistência da definição de tendência, de acordo com a Dow. Existem dois possíveis locais extremos - para tendência de alta e para tendência de baixa. Essas variantes são verificadas pelo if. outros operadores.


3.4. Indicador de tendência baseado no indicador ADX.


Considere o indicador de tendência ADXTrendDetector, que usa o indicador ADX. O código fonte completo do indicador está no arquivo ADXTrendDetector. MQ5, anexado ao artigo. Os parâmetros externos são atribuídos com valores do indicador externo ADX:


A função TrendDetector é assim:


Usando o CopyBuffer (), obtenha os valores necessários dos buffers de indicador do indicador externo ADX para o número de barras, fornecido pelo argumento _shift. Em seguida, analise as posições das linhas + DI e - DI em relação umas às outras. Se necessário, considere a força da tendência - se ela for menor que a definida, a tendência não será detectada.


3.5. Indicador de tendência baseado no indicador NTRT.


A estrutura do indicador de tendência NRTRTrendDetector, baseada em NRTR, é semelhante à anterior. O código fonte completo do indicador está no arquivo NRTRTrendDetector. MQ5, anexado ao artigo.


A primeira diferença - no bloco de parâmetros externos:


A segunda diferença - na função TrendDetector de detectar a direção da tendência:


Aqui nós lemos os valores de dois buffers do indicador externo NRTR com índices 0 e 1. Os valores no buffer de suporte são diferentes de zero quando há tendência de alta, e os valores no buffer de resistência são diferentes de zero quando há a tendência de baixa .


3.6. Indicador de tendência baseado em castiçais Heiken Ashi.


Agora vamos considerar o indicador de tendência, que usa os candelabros Heiken Ashi.


Nesse caso, não chamaremos o indicador externo, mas calcularemos velas por nós mesmos. Isso irá melhorar o desempenho do indicador e liberar a CPU para tarefas mais importantes. O código fonte completo do indicador está no arquivo HeikenAshiTrendDetector. MQ5, anexado ao artigo.


Como o indicador Heiken Ashi não assume a configuração de parâmetros externos, podemos remover o bloco com os operadores de entrada. Grandes mudanças nos aguardam no manipulador do evento de recálculo de indicadores. Aqui, usaremos uma variante alternativa do manipulador, que fornece acesso a todas as matrizes de preços do gráfico atual.


A função OnCalculate () agora se parece com isso:


Quanto a determinar a cor das velas de Heiken Ashi, precisamos apenas de dois preços - o de abrir e fechar, e depois contar apenas com eles.


Depois de detectar a direção da tendência por meio da chamada de função TrendDetector, salve os valores de preço atuais dos castiçais Heiken Ashi em variáveis ​​intermediárias, abrir e fechar. A função TrendDetector parece muito simples. Você pode inseri-lo no OnCalculate, mas para maior versatilidade em caso de desenvolvimento e complexidade adicionais do algoritmo, deixamos essa função. Aqui está esta função:


Os argumentos da função são dois preços para o candelabro Heiken Ashi - abrir e fechar, pelo qual sua direção é determinada.


4. Exemplo do uso do indicador de detecção de tendências no especialista.


Vamos criar um Expert Advisor, que usa diferentes indicadores. Será interessante comparar os resultados de especialistas, que usam diferentes formas de detecção de tendências. Primeiro, verifique os resultados com os parâmetros padrão e tente ajustá-los para encontrar os melhores.


Neste caso, o propósito de criar Expert Advisors - é comparar métodos de detecção de tendências por precisão e velocidade. Portanto, vamos formular os princípios gerais de criação de todos os Expert Advisors:


A posição Buy abre quando a tendência muda de baixo para cima ou de indefinido para cima. Sell position opens when trend changes from the up to the down or from the undefined to the down. Position closes when trend changes its direction to reverse or undefined.


All trend indicators that we've created contain indicator buffer with zero index , which stores the required data about trend direction. We'll use it in Expert Advisors to get a signal to open/close position.


Because we need trading functions, we've included the corresponding library, that is installed along with MetaTrader 5. This library contains the CTrade class and several methods of working with positions and orders. This simplifies the routine work with trading functions. The library is included in the following line:


We will use two methods from it: position opening and closing. The first method allows you to open a position of given direction and volume:


The input arguments are as follows:


symbol - name of instrument for trade, for example, "EURUSD". order_type - direction of position opening, short or long. volume - volume of opened position in lots, for example, 0.10. price - opening price. sl - price of Stop Loss. tp - price of Take Profit. comment - comment, shown when position is displayed in trade terminal.


The second method allows you to close a position:


The input arguments are as follows:


symbol - name of instrument for trade, for example, "EURUSD". deviation - maximal allowed deviation from current price (in points) when closing a position.


Let's consider in details the structure of Expert Advisor, that uses the MATrendDetector indicator. Full source code of Expert Advisor is in the MATrendExpert. MQ5 file, attached to the article. The first major block of the expert - is block of setting external parameters.


The Lots parameter of Expert Advisor - is the size of the lot, used when position is opened. To get comparative results of different methods of trend detection, we use the permanent lot without money management. All the other external parameters are used by trend indicators, discussed above. The list and purpose are exactly the same as the corresponding indicator.


The second important block of Expert Advisor - event handler of Expert Advisor initialization.


Here create handle to refer to the trend indicator, and, if creation was successful, return zero code. If failed to create indicator handle (for example, the indicator was not compiled into EX5 format), we print the message about this and return nonzero code. In this case, Expert Advisor stops its further work and it is unloaded from terminal, with corresponding message in the Journal.


Here the indicator handle is deleted and its allocated memory is released.


You don't need to do any other actions to deinitialize Expert Advisor.


Next goes the main block of Expert Advisor - handler of event about new teak by the current symbol.


Let's consider the auxiliary functions, that are used by Expert Advisor.


First of all, our Expert Advisor has to check the signal to open another new bar on the chart. For this the CheckNewBar function is used:


Presence of a new bar is determined by value of tick volume. When opening a new bar, the volume for it is initially equal to zero (since there were no quotes). With new tick coming the size becomes equal to 1.


In this function we will create the current_rates[] array of MqlRates structures, consisting of one element, copy the current prices and volumes information into it, and then check the value of tick volume.


In our event handler about new tick by the current symbol, we will use this function the following way:


So, new bar opens, and you can get a signal about the current trend direction. This is done as follows:


Since we need to track changes in the trend, it is necessary to remember the value of trend on the previous bar. In the piece of code above, for this we use the prev_signal variable. Also, you should use the flag, signaling that this is the first signal (there is no previous one yet). This is the is_first_signal variable. If the flag has value true , we initialize the prev_signal variable with initial value.


Here we use the GetSignal function, that returns the current trend direction, obtained from our indicator. Se parece com isso:


The data of trend indicator are copied from the zero buffer to our array trend_direction , consisting of one element. And the value of array element is returned from the function. Also the double type is casted to the int type to avoid compiler warning.


Before opening new position, you should check if it's necessary to close the opposite position, opened earlier. You should also check if there is already an opened position in the same direction. All this is done by the following piece of code:


In order to get access to position, first it must be selected - this is done using the PositionSelect() function for the current symbol. If the function returns true, then position exists and it was successfully selected, so you can manipulate it.


To close the opposite position the CheckPositionClose function is used:


First, check whether the position is open in the trend direction. If so, the function returns 1 and current position is not closed. If position is open in the opposite trend direction, then you must close it. This is done by the PositionClose method described above. Since the open position is no more, it returns zero.


Once all the necessary checks and actions for existing positions are made, you have to check the presence of a new signal. This is done by the following piece of code:


If there is the Buy signal, then open long position with given volume by current price SYMBOL_ASK . Since all positions are closed by the opposite signal, then Take Profit and Stop Loss are not used. The Expert Advisor is "always in the market".


In real trade it's recommended to use a protective Stop Loss in case of unforeseen circumstances, such as loss of connection with DC server and other force majeure conditions.


For the Sell signals everything is similar:


The only difference is in the sell price - SYMBOL_BID .


The presence of a signal is checked by the CheckBuySignal function - to buy and by the CheckSellSignal function - to sell. These functions are very simple and clear:


Here we check if trend has changed to the opposite direction or if trend direction has appeared. If any of these conditions is satisfied, the function returns signal presence.


In general, such scheme of Expert Advisor gives quite universal structure, that can be easily upgraded and expanded to fit more complex algorithms.


Other Expert Advisor are built exactly the same. There are significant differences only in the block of external parameters - they must correspond to the used trend indicator and must be passed as arguments when creating indicator handle.


Let's consider the results of our first Expert Advisor on history data. We will use the EURUSD history, in the range from 01.04.2004 to 06.08.2010 on daily bars. After running Expert Advisor in Strategy Tester with default parameters, we get the following results:


Figure 8. Test Results of Expert Advisor Using the MATrendDetector Indicator.

Comments