English Русский 中文 Español Deutsch 日本語 한국어 Français Italiano Türkçe
Como desenvolver um sistema de negociação baseado no indicador MACD

Como desenvolver um sistema de negociação baseado no indicador MACD

MetaTrader 5Negociação | 19 julho 2022, 08:46
1 021 0
Mohamed Abdelmaaboud
Mohamed Abdelmaaboud

Introdução

Neste artigo, nós estudaremos uma das ferramentas de negociação mais populares e usadas. Nós falaremos sobre o indicador Moving Average Convergence Divergence (MACD). Nós vamos estudá-lo em detalhes e ver como nós podemos nos beneficiar de usá-lo na negociação. Em artigos anteriores, nós já mencionamos que é muito importante identificar a tendência ou a direção do mercado para tomar a decisão de negociação adequada nessa direção e estar no lugar certo.

Assim, o primeiro passo é determinar a direção do mercado. Existem dois tipos diferentes de movimento de acordo com a direção:

  • Movimento direcional.
  • Movimento não direcional.

Movimento direcional: significa que nós podemos encontrar claramente uma direção na qual os preços se movem, para cima ou para baixo. Assim, de acordo com estes tipos de movimentos, nós podemos identificar dois tipos diferentes de tendência: a tendência de alta e a tendência de baixa.

  • Tendência de alta: significa que a direção do preço está subindo ou o preço sobe, o que significa que o preço está crescendo. Normalmente, isso significa que há um controle dos compradores ou touros, e esse estado de mercado é frequentemente chamado de mercado em alta. Esse movimento é exibido na próxima figura, na qual os preços criam novas máximas e mínimas ascendentes.


Tendência de alta

  • Tendência de baixa: significa que a direção do preço está para baixo ou o preço se move para baixo. ou seja, o preço está diminuindo. Pode-se dizer que há um controle dos vendedores ou ursos, então esse estado de mercado é muitas vezes referido como um mercado de baixa. Esse estado é exibido na figura abaixo, na qual os preços criam novas mínimas e máximas descendentes.


Tendência de baixa

Movimento não direcional: significa que nós não podemos encontrar uma direção clara do movimento de preços, ou seja, determinar se os preços sobem ou descem. Este tipo de movimento pode ser chamado de movimento lateral. Assim, de um modo geral, qualquer movimento, exceto a tendência de alta ou a tendência de baixa, pode ser referido como lateralizado. Existem muitas formações que podem ser descritas como uma formação lateral.

Agora que nós identificamos a ação do preço e descobrimos como determinar sua direção, há outra coisa que eu preciso mencionar. Ele é algo mais avançado sobre a ação do preço, pois há outra dimensão: nós temos que identificar o momento para nos referirmos à velocidade do movimento do preço. Existem muitas ferramentas que podem nos ajudar a determinar o momento e determinar se a direção é forte ou não.

Uma dessas ferramentas é o indicador Moving Average Convergence Divergence (MACD), que é um dos indicadores mais populares e comumente usados entre os traders técnicos. Neste artigo, nós estudaremos esse indicador com mais detalhes e aprenderemos a projetar um sistema de negociação baseado nele. Para isso, nós abordaremos os seguintes tópicos:

Nós aprenderemos sobre o indicador MACD com mais detalhes: o que ele mede e como ele é calculado, e nós veremos um exemplo - isso está na parte da 'Definição do MACD'. Em seguida, nós aprenderemos estratégias simples que podem ser usadas com o MACD e que podem ser úteis para a nossa negociação - a parte da 'Estratégia do MACD'. Depois disso, na parte do 'Esquema do MACD', nós aprenderemos como projetar um plano que pode ser útil ao projetar um sistema de negociação para as estratégias MACD mencionadas. Em seguida, nós aprenderemos como projetar esse sistema de negociação para essas estratégias mencionadas.

Novamente, nós usaremos a plataforma de negociação MetaTrader 5 e o Editor de Linguagem MetaQuotes, integrado a MetaTrader 5, para projetar este sistema de negociação. Caso não tenha ela, você pode baixá-la no seguinte link:https://www.metatrader5.com/pt/download

Após baixá-la e instalá-la, você verá a seguinte janela da MetaTrader 5:

 Plataforma de negociação MT5

Depois disso, você pode abrir o Editor Linguagem MetaQuotes pressionando F4 na MetaTrader 5 aberta ou usando o menu Ferramentas -> Editor de Linguagem MetaQuotes, conforme mostrado na janela a seguir:

Abertura da MQL5

Ou pressionar o botão da IDE:

Botão da IDE da plataforma MT5

Em seguida, a seguinte janela será aberta para o Edito de Linguagem MetaQuotes:

Metaeditor - Nova janela do arquivo

Esta janela oferece várias opções do que você pode fazer usando o editor, entre elas:

1. Abrir um novo arquivo para criar um Expert Advisor que pode executar as condições do programa de forma automática.

2. Abrir um novo arquivo para criar um Indicador Personalizado para nos ajudar a ler o gráfico com clareza e ver o que não aparece nos gráficos.

3. Abrir um novo arquivo para criar um Script que possa executar instruções únicas.

Neste artigo, nós escolheremos a primeira opção para criar um Expert Advisor que pode ser executado e executar as instruções do programa de forma automática.

Além disso, eu aconselho você a testar tudo o que aprender antes de usá-lo. Se você precisar aprofundar o seu conhecimento, você deve praticar e aplicar o que aprendeu sozinho, pois isso o ajudará a encontrar novas ideias e "insights" que podem ser úteis para a sua negociação.

Ressalva: Qualquer informação fornecida aqui é apenas para fins informativos e sem fins comerciais ou de aconselhamento. Ela não é garantia de nenhum tipo de resultado. Se você optar por usar esses materiais em qualquer uma de suas contas de negociação, estará fazendo isso por sua conta e risco, sendo o único responsável.

Agora, vamos passar por nossos tópicos para aprender mais sobre a negociação e como criar um sistema de negociação com base nesse novo conhecimento.


Definição do MACD

Nesta parte deste tópico interessante, nós aprenderemos com mais detalhes sobre uma das ferramentas mais populares e úteis que podem ser usadas na negociação - Moving Average Conversion Divergence, conhecido como o MACD (geralmente pronunciado como MACD ou "MAC - Dee", ainda que isso não seja tão importante). O importante é aprender como esse indicador pode ser usado, o que ele mede e como ele é calculado. Esse conhecimento pode ser útil para nós e nossas negociações, pois ele pode melhorar os nossos resultados e abrir nossos olhos para novas ideias que podem ser benéficas na negociação.

O que é o MACD?

Ele é o Moving Average Conversion Divergence, é um indicador oscilador criado ou desenvolvido por Gerald Appel. Ele usa duas médias móveis exponenciais em seu cálculo. Se você quiser saber mais sobre as médias móveis e seus tipos, leia o meu artigo anterior Como desenvolver sistemas baseados em médias móveis. O MACD é um indicador de seguimento de tendência também, pois ele segue a tendência e a confirma.

Ele é composto por duas linhas:

  • A Linha MACD, que é a mais rápida. Ele é o resultado da diferença entre duas médias móveis exponenciais: o período da primeira é de 12 e da segunda é de 26 por padrão, mas você pode alterar conforme suas preferências e necessidades de negociação.,
  • A linha do Sinal, que é a mais lenta. Ele é o resultado da média exponencial suavizada de 9 períodos da Linha MACD e é por isso que essa linha é a mais lenta, pois ela é uma média móvel da diferença entre as duas médias móveis.

Há outro componente do indicador MACD — o histograma MACD. Ele é o resultado da diferença entre a Linha MACD e a Linha de Sinal. Ele mostra a diferença entre as duas linhas MACD e de Sinal e como ela pode ser larga ou estreita. Mas neste artigo nós vamos nos concentrar nas duas linhas e estratégias que podem ser usadas utilizando-as.

Assim, o cálculo do indicador MACD consiste nas seguintes etapas:

  1. Obter a média móvel exponencial de 12 períodos (12 EMA).
  2. Obter a média móvel exponencial de 26 períodos (26 EMA).
  3. Obter a diferença entre 12 EMA e 26 EMA = Linha MACD.
  4. Obter a média móvel de 9 períodos para a Linha MACD = Linha do Sinal.

Onde EMA = (Fechamento*(2/(n+1)))+(MA anterior*(1-(2/(n+1)))). Observe que a primeira média móvel calculada é simples e seguida pela média móvel exponencial no cálculo.

Vejamos um exemplo de como aplicar este cálculo:

Nós precisamos de um dado com no mínimo um período igual a 34, pois serão 12 períodos para calcular a EMA de 12 e 26 períodos para calcular a EMA de 26, a diferença entre elas é a Linha MACD. Então, nós precisamos de mais 9 períodos da Linha MACD para calcular a Linha de Sinal. Portanto, se nós tivermos os seguintes dados para os períodos necessários:

Período Fechamento
1 100
2 130
3 140
4 130
5 120
6 140
7 160
8 170
9 155
10 140
11 160
12 180
13 190
14 200
15 210
16 200
17 190
18 185
19 195
20 200
21 210
22 220
23 215
24 225
25 230
26 235
27 230
28 225
29 220
30 215
31 225
32 235
33 240
34 245

Agora nós podemos calcular o indicador MACD, primeiro nós vamos calcular a EMA de 12 e ela será o seguinte:

12 EMA

Então, nós vamos calcular a EMA de 26:

26 EMA

Em seguida, nós calcularemos a linha MACD calculando a diferença entre a EMA de 12 e a EMA de 26 e ela será o mesmo que o seguinte:

Linha MACD

E então, calculando a linha MACD:

Linha de sinal

Assim, nós calculamos a linha MACD para este exemplo. Preste atenção que nós não precisamos calculá-lo manualmente, pois este é um indicador embutido disponível diretamente na MetaTrader 5. Ao entender cada detalhe do indicador, nós podemos aprender melhor o conceito. Você verá que ele aparece diferente na MetaTrader 5 ao inseri-lo porque, como eu mencionei, ele tem duas linhas (linha MACD e linha de Sinal), mas a diferença aparecerá da seguinte forma:

  • Barras que representam a Linha MACD
  • Linha que representa a Linha de Sinal

Mas ela é o mesmo indicador que as duas linhas, não há diferença, exceto pela aparência. Agora vamos ver como inserir o indicador e como ele aparecerá no gráfico.

Na plataforma MetaTrader 5 aberta, clique no menu Inserir e escolha Indicadores -> Osciladores -> MACD.

Inserção do MACD

Isso abrirá a janela de parâmetros do MACD:

Janela de inserção do MACD

A janela apresenta os seguintes parâmetros do MACD:

1,2,3: determina os períodos a serem utilizados no cálculo do MACD.

4: determina os tipos de preço a serem usados no cálculo do MACD.

5: define a cor e a espessura da barra para a linha do MACD.

6: define a cor, o estilo da linha e a espessura da linha de sinal.

Após determinar os parâmetros desejados do MACD e pressionar ok, o indicador aparecerá no gráfico da seguinte forma:

MACD anexado

Agora nós aprendemos o que é o indicador MACD, como nós podemos calculá-lo e como ele aparece no gráfico.


Estratégia do MACD

Nesta parte, nós aprenderemos duas estratégias simples que podem ser usadas em nossas negociações com base no indicador MACD. A estratégia dependerá do cruzamento. Como nós mencionamos, o indicador MACD é um indicador oscilador e ele oscila em torno de zero. O próprio MACD consiste em duas linhas e de acordo com esses dois conceitos nós o usaremos em nossas estratégias.

  • Estratégia um: Detector do Setup MACD.

De acordo com essa estratégia, nós precisamos identificar o sinal do mercado: se é um sinal de compra ou um sinal de venda. Em outras palavras, nós precisamos identificar a direção do mercado, se ele é de alta ou baixa, e isso será identificado pelo MACD. Se a linha principal do MACD cruzar para cima do nível zero, esta será um sinal de compra ou um sinal de alta e vice-versa, se a linha principal do MACD cruzar abaixo do nível zero, esta será um sinal de venda ou baixa.

Então,

Linha principal do MACD > 0 = Sinal de Alta

Linha principal do MACD < 0 = Sinal.de Baixa

  • Estratégia dois: Cruzamento das linhas do MACD

De acordo com essa estratégia, nós precisamos identificar os sinais gerados se houver um sinal de compra ou um sinal de venda com base na linha principal do MACD e no cruzamento da linha de sinal. Se a linha principal do MACD cruzar acima da linha de sinal, este será um sinal de compra e se a linha principal do MACD cruzar abaixo da linha de sinal, este será um sinal venda.

Então,

Linha principal do MACD > Linha de sinal do MACD = Sinal de Compra

Linha principal do MACD < linha de sinal do MACD = Sinal de Venda

E essas são duas estratégias simples que nós podemos usar com base no indicador MACD. De um modo geral, existem muitas estratégias que podem ser usadas no MACD e que seja muito útil. Mas nós vamos nos referir apenas a estratégias simples que podem ser usadas para entender o conceito de MACD. A seguir, nós aprenderemos através dos tópicos a seguir como projetar um sistema de negociação usando essas estratégias simples mencionadas.


Esquema do MACD

Nesta parte, nós precisamos criar um plano que nos ajude a desenvolver um sistema de negociação para as duas estratégias mencionadas para informar ao computador o que fazer exatamente. Esse esquema é para nos ajudar passo a passo o que nós precisamos fazer para criar este sistema de negociação.

  • Estratégia um: Detector do Setup MACD

De acordo com essa estratégia, nós precisamos dizer ao computador para verificar o valor da linha principal do MACD a cada tick e, em seguida, gerar o sinal com base no valor comparado com o nível zero. Se a linha principal do MACD estiver acima de zero, nós precisamos que o programa nos dê um comentário no gráfico: "Bullish Setup As MACD MainLine is..." seguido pelo valor atual da linha principal do MACD. Ou se a linha principal do MACD estiver abaixo de zero, nós precisamos que o programa nos dê um comentário no gráfico com "Bearish Setup As MACD MainLine is..." seguido pelo valor atual da linha principal do MACD.

A imagem a seguir mostra o esquema desta estratégia:

Esquema da estratégia

  • Estratégia dois: Cruzamento das linhas do MACD

De acordo com essa estratégia, nós precisamos dizer ao computador para nos fornecer um sinal adequado no cruzamento entre as linhas MACD (linha Principal e linha de Sinal). Assim, o programa verificará as linhas MACD a cada tick e quando a linha principal do MACD cruzar acima da linha de sinal do MACD, o programa deve gerar um comentário no gráfico igual a "Buying Signal As MACD MainLine is Above MACD SignalLine" seguido por uma nova linha com o comentário "MACD Main Line Value is..." seguido pelo valor da linha principal do MACD atual e por uma nova linha com o comentário "MACD Signal Line Value is..." seguido pelo valor da linha de sinal do MACD atual.

A imagem a seguir mostra o esquema desta estratégia:

Esquema da estratégia de sinais

Sistema de negociação MACD

Nesta parte, nós aprendemos como codificar essas estratégias para criar nosso sistema de negociação usando a linguagem de programação MQL5. O programa resultante deve então ser executado na plataforma de negociação MetaTrader 5 para nos fornecer saídas predeterminadas de acordo com as condições predeterminadas. Mas antes de criar essas duas estratégias simples, nós aprenderemos como criar um programa que possa mostrar os valores do MACD no gráfico como um comentário.

O código a seguir exibirá um comentário com o valor da linha principal do MACD:

//+------------------------------------------------------------------+
//|                                  Simple MACD MainLine System.mq5 |
//|                                  Copyright 2022, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
void OnTick()
  {
   //cretaing an array for prices
   double MACDMainLine[];
   
   //Defining MACD and its parameters
   int MACDDef = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE);
   
   //Sorting price array from current data
   ArraySetAsSeries(MACDMainLine,true);
   
   //Storing results after defining MA, line, current data
   CopyBuffer(MACDDef,0,0,3,MACDMainLine);
   
   //Get values of current data
   float MACDMainLineVal = (MACDMainLine[0]);
   
   //Commenting on the chart the value of MACD
   Comment("MACD Value is ",MACDMainLineVal);
  }
//+------------------------------------------------------------------+

E este Expert Advisor irá gerar o que nós precisamos: o valor da linha principal do MACD no gráfico. Aqui nós teremos o seguinte:

Sinal do sistema da linha principal do MACD simples

Agora, nós precisamos anexar o arquivo ao gráfico para gerar o valor da linha principal do MACD de forma automática. Encontramos o programa no Navegador que pode ser aberto ao pressionar ctrl+N na MetaTrader 5:

MACD Navi 1


Então, nós precisamos executar este arquivo e podemos fazer isso arrastando e soltando o arquivo no gráfico ou clicando duas vezes no arquivo e, após isso, você pode encontrar a seguinte janela:

Janela do Simple MACD MainLine System

Habilite a opção "Permiitir Negociação Automatizada" e clique em OK, o Expert Advisor será anexado ao gráfico e gerará a linha principal do MACD da seguinte forma:

Simple MACD MainLine System anexado

Agora, nós precisamos fazer mais ao escrever um código que possa gerar não apenas a linha principal do MACD, mas também a linha de sinal do MACD. Abaixo está o código para criar um programa que pode exibir um comentário no gráfico com a linha principal do MACD e uma nova linha com a linha de sinal do MACD:

//+------------------------------------------------------------------+
//|                                      Simple MACD TwoLines System |
//|                                  Copyright 2022, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
void OnTick()
  {
   //cretaing an array for prices for MACD main line, MACD signal line
   double MACDMainLine[];
   double MACDSignalLine[];
   
   //Defining MACD and its parameters
   int MACDDef = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE);
   
   //Sorting price array from current data for MACD main line, MACD signal line
   ArraySetAsSeries(MACDMainLine,true);
   ArraySetAsSeries(MACDSignalLine,true);
   
   //Storing results after defining MA, line, current data for MACD main line, MACD signal line
   CopyBuffer(MACDDef,0,0,3,MACDMainLine);
   CopyBuffer(MACDDef,1,0,3,MACDSignalLine);
   
   //Get values of current data for MACD main line, MACD signal line
   float MACDMainLineVal = (MACDMainLine[0]);
   float MACDSignalLineVal = (MACDSignalLine[0]);
   
   
   //Commenting on the chart the values of MACD main line and MACD signal line
   Comment("MACD Main Line Value is ",MACDMainLineVal,"\n" 
   "MACD Signal Line Value is ",MACDSignalLineVal);
  }
//+------------------------------------------------------------------+

Depois de escrever e testar este código, ele irá gerar a linha principal do MACD e a linha de sinal do MACD conforme exibido na imagem a seguir:

Sinal do Simple MACD TwoLines System

Agora, nós precisamos anexar este arquivo do Expert Advisor ao gráfico para gerar os valores da linha do MACD e da linha de sinal do MACD no gráfico como um comentário. Então, selecionamos o programa no Navegador:

MACD Navi 2

Clicamos duas vezes ou arrastamos e soltamos o arquivo no gráfico. Após isso, a seguinte janela do Expert Advisor será aberta:

Janlea do Simple MACD TwoLines System

Após pressionar OK o expert será anexado, os valores serão gerados no gráfico de forma automática e a imagem a seguir representa isso:

Simple MACD TwoLines System anexado

Agora, nós precisamos codificar nossas duas estratégias, cruzamento da linha principal do MACD com o nível zero e o cruzamento entre a linha principal do MACD e a linha de sinal do MACD. Observe que aqui nós mencionaremos apenas os sinais gerados sem lucros, pois existem muitas ferramentas que podem ser usadas para esse fim, como o próprio indicador ou a ação do preço. Aqui nós vamos nos concentrar nos sinais gerados. Vamos continuar criando o código dessas estratégias.

  • Estratégia um: Detector do Setup MACD — geramos o sinal atual do mercado de acordo com o cruzamento da linha principal do MACD com o nível zero.

Linha principal do MACD > 0 = Sinal de Alta

Linha principal do MACD < 0 = Sinal.de Baixa

Abaixo está o código de um programa que gera comentários com o Setup do Mercado de acordo com a linha principal do MACD e o cruzamento do nível zero e o valor da linha principal do MACD:

//+------------------------------------------------------------------+
//|                                         MACD Setup Dectector.mq5 |
//|                                  Copyright 2022, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
void OnTick()
  {
   //cretaing an array for prices for MACD main line
   double MACDMainLine[];
   
   //Defining MACD and its parameters
   int MACDDef = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE);
   
   //Sorting price array from current data
   ArraySetAsSeries(MACDMainLine,true);
   
   //Storing results after defining MA, line, current data
   CopyBuffer(MACDDef,0,0,3,MACDMainLine);
   
   //Get values of current data
   float MACDMainLineVal = (MACDMainLine[0]);
   
   //Commenting on the chart the value of MACD
   if (MACDMainLineVal>0)
   Comment("Bullish Setup As MACD MainLine is ",MACDMainLineVal);
   
   if (MACDMainLineVal<0)
   Comment("Bearish Setup As MACD MainLine is ",MACDMainLineVal);
  }
//+------------------------------------------------------------------+

Após escrever este código e testá-lo, a figura a seguir mostra como ele pode gerar a configuração atual de acordo com o cruzamento entre a linha principal do MACD e o nível zero:

Sinal do Setup de Alta:

Sinal do MACD Setup Detector bullish

Sinal do Setup de Baixa

Sinal MACD Setup Detector bearish

Agora, nós precisamos anexar esse EA ao gráfico para gerar esses sinais, arrastando e soltando o arquivo no gráfico ou clicando duas vezes nele na janela do Navegador:

MACD Navi 3

Isso abrirá a seguinte janela do Expert Advisor:

Janela do MACD Setup Detector

Após pressionar OK, o EA será anexado ao gráfico e os sinais serão gerados no gráfico como comentários.

Sinal do Setup de alta com o valor da linha principal do MACD:

MACD Setup Detector anexado

Sinal do Setup de baixa com o valor da linha principal do MACD:

MACD Setup Detector anexado - Baixa

  • Estratégia dois: Cruzamento das linhas do MACD — gera os sinais de compra e venda por cruzamento entre a linha principal do MACD e a linha de sinal do MACD:

Linha principal do MACD > Linha de sinal do MACD = Sinal de Compra

Linha principal do MACD < linha de sinal do MACD = Sinal de Venda

O código a seguir cria um programa gerando comentários no gráfico com um sinal para compra ou venda de acordo com a linha principal do MACD e o cruzamento da linha de sinal do MACD com duas novas linhas com os valores da linha principal e de sinal do MACD:

//+------------------------------------------------------------------+
//|                          MACD Lines Crossover Signals System.mq5 |
//|                                  Copyright 2022, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
void OnTick()
  {
   //cretaing an array for prices for MACD main line, MACD signal line
   double MACDMainLine[];
   double MACDSignalLine[];
   
   //Defining MACD and its parameters
   int MACDDef = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE);
   
   //Sorting price array from current data for MACD main line, MACD signal line
   ArraySetAsSeries(MACDMainLine,true);
   ArraySetAsSeries(MACDSignalLine,true);
   
   //Storing results after defining MA, line, current data for MACD main line, MACD signal line
   CopyBuffer(MACDDef,0,0,3,MACDMainLine);
   CopyBuffer(MACDDef,1,0,3,MACDSignalLine);
   
   //Get values of current data for MACD main line, MACD signal line
   float MACDMainLineVal = (MACDMainLine[0]);
   float MACDSignalLineVal = (MACDSignalLine[0]);
   
   
   //Commenting on the chart the value of MACD
   if (MACDMainLineVal>MACDSignalLineVal)
   Comment("Buying Signal As MACD MainLine is Above MACD SignalLine","\n"
   "MACD Main Line Value is ",MACDMainLineVal,"\n" 
   "MACD Signal Line Value is ",MACDSignalLineVal);
   
   if (MACDMainLineVal<MACDSignalLineVal)
   Comment("Shorting Signal As MACD MainLine is Below MACD SignalLine","\n"
   "MACD Main Line Value is ",MACDMainLineVal,"\n" 
   "MACD Signal Line Value is ",MACDSignalLineVal);
  }
//+------------------------------------------------------------------+

Após escrever este código e testá-lo, nós obteremos um programa que gera os sinais e valores das linhas.

O sinal de Compra com menção que a linha principal do MACD está acima da linha de sinal e principal do MACD e os valores da linha de sinal do MACD:

Sinal de compra do MACD Lines Crossover Signals

Sinal de Venda com menção de que a linha principal MACD está abaixo da linha de sinal MACD e as novas linhas com os valores das linhas:

Sinal de Venda do MACD Lines Crossover Signals

Após escrever o código, anexar o arquivo do expert ao gráfico para gerar os sinais clicando duas vezes no arquivo ou arrastando e soltando-o no gráfico a partir da janela do Navegador:

MACD Navi 4


Após isso, o EA será anexado ao gráfico e exibirá os sinais no gráfico.

Sinal de Compra com o motivo segundo a estratégia, logo serão geradas novas linhas com os valores das linhas de MACD como comentário:

MACD Lines Crossover Signals anexado

Sinal de Venda com o motivo segundo a estratégia, logo serão geradas duas novas linhas com os valores das linhas de MACD como comentários:

MACD Lines Crossover Signals anexado - venda


Conclusão

O indicador Moving Average Convergence Divergence (MACD) é uma das ferramentas mais úteis que podem beneficiar a nossa negociação. Ele possui muitas estratégias úteis que podem ser úteis para obter os melhores resultados na negociação. É muito importante aprender a automatizar esta ótima ferramenta e criar um sistema de negociação que possa nos ajudar a tornar a negociação mais fácil, eficaz, lucrativa e neste artigo eu tentei compartilhar com você alguns conceitos.

Nós consideramos em detalhes o próprio indicador MACD, o que ele significa e como nós calculamos ele com um exemplo aplicável para aprofundar o nosso entendimento com este indicador. Conhecemos estratégias simples que podem ser usadas pelo MACD dependendo dos conceitos de cruzamento. criamos esquemas para aprender a projetar um sistema de negociação para essas estratégias, aprendemos como codificar o MACD e mencionamos as estratégias em detalhes para criar um sistema de negociação por essas estratégias. Eu aconselho você a testar qualquer coisa que você saiba antes de usar em uma conta real para se certificar de que ela é adequada para a sua negociação e seu plano.

Eu acredito que se o leitor conhece algo em detalhes, isso poderá levar a novos insights e ideias relacionadas ou não relacionadas ao tema, espero que após ler este artigo seja possível abrir os nossos olhos para novas ideias que podem fazer a diferença e ser útil para a nossa negociação em obter os melhores resultados. Então, eu espero que você ache este artigo útil para você e sua negociação.

Traduzido do Inglês pela MetaQuotes Ltd.
Artigo original: https://www.mql5.com/en/articles/10674

Desenvolvendo um EA de negociação do zero (Parte 24): Dado robustez ao sistema (I) Desenvolvendo um EA de negociação do zero (Parte 24): Dado robustez ao sistema (I)
Neste artigo iremos deixar o sistema mais robusto, de forma que ele fique mais estável e seguro de ser usado. Uma das formas de se conseguir robustez é procuramos reutilizar ao máximo o código, desta forma ele será testado o tempo todo e em diversas ocasiões diferente, mas esta é apenas uma das formas, outra forma é o uso da programação OOP.
Ciência de Dados e Aprendizado de Máquina (Parte 02): Regressão Logística Ciência de Dados e Aprendizado de Máquina (Parte 02): Regressão Logística
A classificação de dados é uma coisa crucial para um algotrader e um programador. Neste artigo, nós vamos nos concentrar em um dos algoritmos de classificação logística que provavelmente podem nos ajudar a identificar os Sims ou Nãos, as Altas e Baixas, Compras e Vendas.
Gráficos na biblioteca DoEasy (Parte 98): Movendo pontos de ancoragem de objetos gráficos padrão estendidos Gráficos na biblioteca DoEasy (Parte 98): Movendo pontos de ancoragem de objetos gráficos padrão estendidos
Neste artigo, continuaremos a desenvolver objetos gráficos padrão estendidos e criaremos uma funcionalidade que move os pontos de ancoragem de objetos gráficos compostos por meio de pontos de controle usados para gerir as coordenadas dos pontos de ancoragem do objeto gráfico em questão.
Desenvolvendo um EA de negociação do zero (Parte 23): Um novo sistema de ordens (VI) Desenvolvendo um EA de negociação do zero (Parte 23): Um novo sistema de ordens (VI)
Deixando o sistema de ordens mais fluido. Aqui irei mostrar como e onde mudar no código para se ter algo mais fluído, onde você pode modificar os limites da posição muito mais rapidamente.