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

Mohamed Abdelmaaboud | 8 julho, 2022

Introdução

Este é um novo artigo de nossa série em que aprendemos como desenvolver sistemas de negociação com base em estratégias simples usando os indicadores técnicos mais usados. Desta vez nós vamos discutir o indicador Commodity Channel Index (CCI). Como sempre, eu tentarei explicar os fundamentos do tópico para ajudá-lo a entender a ideia e o seu uso. Em última análise, essa maneira pode fornecer insights e novas ideias que você pode usar em sua negociação.

Neste artigo, nós projetaremos um sistema de negociação baseado no indicador CCI. Tópicos a serem abordados:

Nós começaremos com informações detalhadas sobre o que é o indicador Commodity Channel Index (CCI), o que ele mede, e como nós podemos calculá-lo. Quando nós entendermos os fundamentos e as raízes do que nós estamos fazendo, nós poderemos usar as ferramentas com mais eficiência e encontrar mais ideias e insights sobre isso. É isso que nós vamos discutir no tópico "Definição do CCI". Em seguida, nós trabalharemos em uma estratégia simples que pode ser usada com o CCI durante diferentes tendências ou condições de mercado — é isso que nós aprenderemos na parte "Estratégia CCI". Em seguida, nós aprenderemos como nós podemos projetar um sistema de negociação com base nessa estratégia, planejando o que nós precisamos projetar e o que queremos que o computador faça — parte "modelo do sistema de negociação CCI". Em seguida, nós aprenderemos como projetar o que nós planejamos pelo modelo do sistema de negociação — parte "sistema de negociação CCI".

Nós usaremos a plataforma de negociação MetaTrader 5 e o Editor de Linguagem MetaQuotes neste artigo. Você pode baixar a MetaTrader 5 neste link: https://www.metatrader5.com/pt/download

Depois de baixar e instalar a MetaTrader 5, você verá a plataforma como na imagem a seguir:

Plataforma MT5

Em seguida, você poderá abrir o Editor de Linguagem MetaQuotes pressionando F4, enquanto a plataforma de negociação estiver aberta, ou selecionando o menu Ferramentas na plataforma e clicando em Editor de Linguagem MetaQuotes:

 Abertura da MQL

Ou pressione o botão IDE na barra de ferramentas da MetaTrader 5:

Botão IDE da MT5

Aqui eu preciso mencionar o benefício da programação na negociação, pois ela pode nos ajudar a ser disciplinados. A disciplina é um fator importante para o nosso sucesso na negociação, porque as emoções podem ser prejudiciais à negociação: a decisão certa deve ser tomada de acordo com o plano de negociação vencedor, mas acontece com a maioria dos traders que eles não podem tomar a ação ou decisão certa por causa do medo, ganância ou outras emoções.

Os recursos de programação vêm a nosso favor já que podemos programar nosso plano de negociação de acordo com nossas condições e executá-lo. O programa fará o que nós precisamos de acordo com as nossas regras sem envolver emoções que possam afetar a nossa negociação, o que significa que a programação nos ajudará a ser disciplinados. É aqui que a MQL5 é útil, pois nos ajuda a programar nossas condições e planos de negociação de uma maneira que ela possa ser executada automaticamente na plataforma de negociação. Estes programas podem variar de muito simples à complexos, dependendo do nosso plano de negociação.

Ressalva: Todo o conteúdo deste artigo é feito apenas para fins educacionais, somente. Portanto, você será responsável por qualquer ação que tomar com base no conteúdo deste artigo, pois o conteúdo deste artigo não garante nenhum tipo de resultado.

Agora, nós estamos prontos para iniciar o nosso artigo para construir um novo bloco em nossa jornada de aprendizado. Então, vamos fazer isso... 


Definição do CCI

Nesta parte, nós conheceremos mais detalhadamente o indicador Commodity Channel Index (CCI): o que ele mede, como ele é calculado e como usá-lo. 

O indicador Commodity Channel index (CCI) criado por Donald Lambert é um indicador de momentum que mede o preço atual em relação a uma média de preço de um determinado período de tempo. Quando Lambert criou este indicador, o objetivo inicial era medir movimentos cíclicos em commodities, mas também pode medir outros instrumentos financeiros. O CCI pode ser usado para identificar a força e as reversões da tendência e este é um resultado normal de acordo com a sua natureza como indicador de momentum.

De acordo com o cálculo do CCI e o que ele mede, quando o CCI está alto significa que os preços estão muito acima da sua média e vice-versa, quando o CCI está baixo significa que os preços estão muito abaixo da sua média.

O CCI é calculado nas seguintes etapas:

TP = (Máxima + Mínima + Fechamento)/3

SMA de TP = Soma de TP/n

Desvio médio = Soma de Abs(TP-SMA)/n

CCI = (TP-SMA doTP)/(0.015*Desvio Médio)

Agora, vamos dar um exemplo para aplicar este cálculo:

Suponha que nós temos os seguintes dados para um instrumento por um período de 14 dias:

Dias Máxima Mínima Encerramento
1 100 90 110
2 130 100 120
3 140 110 130
4 130 100 120
5 120 95 110
6 140 120 130
7 160 130 150
8 170 150 160
9 155 130 140
10 140 120 130
11 160 140 150
12   180 160 170
13   190 170 190
14   200 180 210

Veja como nós podemos calcular o CCI usando esses dados:

TP = (Máxima + Mínima + Fechamento)/3

Assim, após o cálculo do Preço Típico, veremos o seguinte:

Exemplo CCI1

SMA de TP = Soma de TP/n

O resultado é o seguinte:

Exemplo CCI2

Abs (TP-SMA)

Aqui nós teremos o seguinte:

Exemplo CCI3

Desvio médio = Soma de Abs(TP-SMA)/n

Exemplo CCI4

CCI = (TP-SMA do TP)/(0.015*Desvio Médio)

CCI = (196.67-141.19)/(0.015*22.86)

CCI = 55.48/0.3429

CCI = 161.80

Atualmente, nós não precisamos calcular os indicadores manualmente porque a MetaTrader 5 oferece indicadores integrados prontos para uso. Você pode usá-lo imediatamente selecionando o indicador CCI na plataforma, conforme mostrado na figura a seguir:

Inserção do CCI

Após selecionar o CCI, a seguinte janela será exibida:

 Janela do CCI

A janela anterior do indicador mostra os seus parâmetros:

Depois de especificar todos os parâmetros, pressionamos Ok e o indicador aparecerá no gráfico:

Indicador CCI no gráfico

O CCI é um oscilador que oscila em torno e entre 100 e -100


Estratégia do CCI

Nesta parte, nós falaremos sobre as duas estratégias simples que podem ser usadas com o CCI. Uma das estratégias pode ser usada de acordo com a tendência ou direção do mercado (tendência de alta, tendência de baixa e lateralização). O outro é um simples cruzamento entre o valor CCI com zero e 100 ou -100. Antes de falarmos sobre essas estratégias, eu preciso mencionar que existem muitas estratégias que podem ser usadas com o CCI. Você deve testar cada estratégia por conta própria em uma conta de demonstração para ver se é útil ou não em sua negociação antes de usá-la em uma conta real com dinheiro real.

Então, as estratégias são as seguintes.

Primeira estratégia: Usar o CCI de acordo com a tendência do mercado

A tendência de alta é a direção do mercado durante a qual os preços criam novas máximas e mínimas ascendentes, o que significa que há um controle dos compradores à medida que os preços sobem. Nesta condição de mercado, nós podemos usar o CCI como um provedor de sinal para gerar um sinal de compra quando a linha do CCI ultrapassar o nível 100. Então, CCI > 100. Então, nós podemos usar outra ferramenta eficaz, como price action, por exemplo, para obter lucro.

CCI > 100 = compra

O sinal de take profit (lucro) pode ser usado a partir de outra ferramenta que pode ser mais útil, como o price action, rompendo abaixo da mínima anterior

A tendência de baixa é a tendência que é o oposto da tendência de alta: os preços criam novas mínimas e máximas descendentes, o que significa que há um controle dos vendedores e os preços caem. Nesse mercado, o CCI também pode ser usado para gerar sinais: um sinal de venda aparece quando a linha do CCI rompe abaixo do nível -100. Price action pode ser usado para obter lucros.

CCI < -100 = venda

O sinal de take profit (lucro) pode ser obtido de outra ferramenta que pode ser mais útil, como o price action, rompendo acima da máxima anterior

Durante os movimentos laterais, nós podemos descobrir que há um equilíbrio entre compradores e vendedores para que ninguém prevaleça visualmente no mercado. É qualquer situação, exceto uma tendência de alta ou tendência de baixa.

Durante as lateralizações nós podemos usar o CCI para gerar os sinais. Quando a linha do CCI romper abaixo do nível -100, este será um sinal de compra e quando a linha CCI romper acima de 100, isso será um take profit. Ou quando a linha do CCI romper acima de 100, este será um sinal de venda e quando a linha do CCI romper abaixo de -100, isso será um take profit.

CCI < -100 = compra
CCI > 100 = take profit
CCI > 100 = venda

CCI < -100 = take profit

Segunda estratégia: Sinais de cruzamento no nível zero:

Neste artigo, nós podemos usar o CCI de uma maneira diferente, pois nós podemos tomar a ação de entrar no mercado de acordo com o cruzamento no nível zero e obter lucros de acordo com o cruzamento nos valores 100 e -100 conforme nosso tipo de posição (compra ou venda).

Veja o valor do CCI subir para o nível zero. Quando o valor do CCI ultrapassar o nível zero, este será um sinal de compra e nós podemos obter lucro quando o valor do CCI ultrapassar 100.

CCI > 0 = Compra
CCI > 100 = take profit 

Veja o valor do CCI subir para o nível zero. Quando o valor do CCI rompe abaixo do nível zero, este será um sinal de venda e podemos nós lucrar quando o valor do CCI romper abaixo de -100.

CCI < 0 = Compra
CCI < 100 = take profit 

Modelo do sistema de negociação do CCI

Agora, nós chegamos à parte mais interessante deste artigo, pois nós precisamos programar essas estratégias mencionadas para automatizar os sinais ao observar o CCI manualmente.

Então, nós precisamos agora codificar essas estratégias mencionadas e informar ao computador o que fazer de acordo com o que nós precisamos exatamente. Nós começaremos desenvolvendo passo a passo um plano para isso.

Primeira estratégia: Usar o CCI de acordo com a tendência do mercado:

Nós precisamos que o programa verifique o valor do CCI a cada tick e faça algo de acordo com o valor do CCI.

Se o CCI estiver acima de 100, compra, caso contrário, não faça nada.

Plano de tendência de alta do CCI

Verificamos o valor do CCI a cada tick e tomamos uma ação de acordo com esse valor.

Se o valor do CCI for inferior a -100, venda, caso contrário, não faça nada.

Plano de tendência de baixa do CCI

Durante as lateralizações, nós precisamos que o programa verifique o valor do CCI e faça algo de acordo com isso.

Se o valor do CCI estiver abaixo de -100, recebemos um sinal de compra ou de take profit. Se o CCI não está abaixo de -100, verificamos se o CCI está acima de -100 e abaixo de 100; não devemos fazer nada (esperar), caso contrário, geramos uma venda caso o CCI esteja acima de 100. Verificamos se o CCI está abaixo de -100, para gerar um take profit, caso contrário, se o valor do CCI estiver abaixo de 100 e acima de -100 não devemos fazer nada (esperar).

Planta lateral do CCI

Segunda estratégia: Sinais de cruzamento no nível zero:

Verificamos a cada tick o valor do CCI e o nível zero. Quando o valor do CCI for maior que zero, geramos um sinal de compra no gráfico e quando o valor do CCI ficar acima de 100, geramos um sinal de take profit no gráfico.

Estratégia de cruzamento do CCI no nível zero - sinal de compra

Verificamos o valor do CCI e o nível zero a cada tick e quando o valor do CCI estiver abaixo do nível zero, geramos um sinal de venda no gráfico e, quando o valor do CCI estiver abaixo de -100, geramos um sinal de take profit.

Estratégia de cruzamento do CCI no nível zero - sinal de venda

Sistema de negociação do CCI

Agora, nós precisamos escrever a estratégia mencionada em código para o computador fazer o que nós precisamos.

Primeiro, nós precisamos codificar um programa simples que mostre os valores do CCI no gráfico. A programação consiste nos seguintes passos:

  1. Criar uma matriz de preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Traçar os valores do CCI e mostrar esses valores no gráfico.

Veja a seguir como codificar as etapas anteriores para criar um programa que pode permitir que o computador exiba os valores do CCI no gráfico automaticamente:

//+------------------------------------------------------------------+
//|                                            Simple CCI 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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //Charting CCI values
   Comment ("CCI Value = ",CCIValue);
  }
//+------------------------------------------------------------------+

Após isso, nós podemos encontrar este programa (Simple CCI System) no Navegador, selecioná-lo e executá-lo na plataforma de negociação:

Navegador com o CCI atualizado

O programa (Simple CCI System) pode ser aberto com o duplo clique do mouse ou arrastando-o e soltando-o no gráfico. Após isso, a seguinte janela será aberta:

Janela do Simple CCI System

Após habilitar a opção "Permitir a Negociação Automatizada" e pressionar ok, o programa (EA) Simple CCI System será anexado ao gráfico e o valor do CCI será visualizado no gráfico:

Simple CCI System anexado 

Agora, nós vamos aprender como codificar as duas estratégias mencionadas:

CCI > 100 = compra


Nós faremos os seguintes passos:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição dos sinais do CCI durante a tendência de alta.

Veja como codificar essas etapas:

//+------------------------------------------------------------------+
//|                                         Uptrend CCI Strategy.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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals for uptrend
   if(CCIValue> 100)
   Comment ("UPTREND CCI - BUY SIGNAL ");
   
  }
//+------------------------------------------------------------------+

Após isso, nós podemos encontrar o programa Uptrend CCI Strategy no Navegador:

Uptrend strategy CCI no Navegador

Abrimos novamente o programa CCI Uptrend Strategy clicando duas vezes ou arrastando-o e soltando-o no gráfico. A seguinte janela será aberta:

Janela do Uptrend CCI strategy

Após habilitar "Permitir a Negociação Automatizada" e pressionar ok, o programa (EA) - Uptrend CCI Strategy - será anexado ao gráfico:

Uptrend CCI strategy anexada

Os sinais da Estratégia do CCI para a tendência de alta serão exibidos de acordo com esta estratégia:

Uptrend CCI Strategy - Sinal de Compra

CCI < -100 = venda

Nós codificaremos os seguintes passos:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição dos sinais do CCI durante a tendência de baixa.

Abaixo está o código do programa que pode ser iniciado na plataforma de negociação e executar o que nós precisamos de maneira automática:

//+------------------------------------------------------------------+
//|                                       Downtrend CCI Strategy.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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals
   if(CCIValue< -100)
   Comment ("DOWNTREND CCI - SHORT SIGNAL ");
  }
//+------------------------------------------------------------------+

Encontramos o programa Downtrend CCI Strategy no Navegador:

Downtrend strategy CCI no navegador

Abrimos o programa Downtrend CCI Strategy clicando duas vezes ou arrastando-o e soltando-o no gráfico. A seguinte janela será aberta:

Janela Downtrend CCI strategy

Habilitamos "Permitir Negociação Automatizada" e pressionamos ok, o programa (EA) - Downtrend CCI Strategy - será anexado ao gráfico:

Downtrend CCI strategy anexado

Os sinais do programa Downtrend CCI Strategy aparecem de acordo com esta estratégia da mesma forma como a imagem a seguir:

Downtrend CCI Strategy - Sinal de Venda

CCI < -100 = compra

CCI > 100 = take profit

Passos:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição do sinal de compra do CCI durante as lateralizações.

Codificamos estas etapas para criar um programa que possa fazer o que nós precisamos:

//+------------------------------------------------------------------+
//|                                  Sideways CCI Strategy - Buy.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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals
   if(CCIValue< -100)
   Comment ("SIDEWAYS CCI - BUY SIGNAL ");
   
   if(CCIValue> 100)
   Comment ("SIDEWAYS CCI - TAKE PROFIT");
  }
//+------------------------------------------------------------------+

Encontramos o programa Sideways CCI Strategy - Buy no Navegador:

 Sideways buy strategy CCI no navegador

Abra-o clicando duas vezes ou arrastando-o e soltando-o. A seguinte janela será aberta:


Janela do Sideways CCI buy strategy

Habilitamos "Permitir Negociação Automatizada" e pressionamos ok, o programa (EA) -Sideways CCI Strategy - Buy -será anexado ao gráfico:

Sideways CCI buy strategy anexado

Então, nós podemos encontrar os sinais que aparecem de acordo com a estratégia Sideways CCI Strategy - Buy:

Sideways CCI - Compra

O sinal de take profit está em CCI > 100 = take profit. Exemplo:

Sideways CCI - Buy - TP

    • Para sinais de venda:

CCI > 100 = venda

CCI < -100 = take profit

Nós vamos codificar isso através das seguintes etapas:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição do sinal de venda do CCI durante as lateralizações.

Segue como é codificar essas etapas para criar o programa Sideways CCI Strategy - Short:

//+------------------------------------------------------------------+
//|                                Sideways CCI Strategy - Short.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()
  {

   dou   //Creating an array of pricesble ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals
   if(CCIValue> 100)
   Comment ("SIDEWAYS CCI - SHORT SIGNAL ");
   
   if(CCIValue< -100)
   Comment ("SIDEWAYS CCI - TAKE PROFIT");
  }
//+------------------------------------------------------------------+

Após isso, o programa Sideways CCI Strategy - Short pode ser encontrado no Navegador:

Sideways short strategy CCI no navegador

Abrimos o Sideways CCI Strategy - Short clicando duas vezes ou arrastando-o e soltando-o no gráfico. A seguinte janela será aberta:

Janela do Sideways CCI short strategy

Após habilitar "Permitir a Negociação Automatizada" e pressionar ok, o programa (EA) -Sideways CCI Strategy - Short - será anexado ao gráfico e será o mesmo que o seguinte:

Sideways CCI short strategy anexado

Os sinais aparecerão de acordo com esta estratégia Sideways CCI Strategy - Short:

Sideways CCI - Venda

Nós podemos receber o sinal de take profit quando CCI < -100 = take profit:

Sideways CCI - Short - TP

CCI > 0 = Compra
CCI > 100 = take profit 

Nós vamos codificar isso através das seguintes etapas:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição do valor do CCI e do nível zero para o cruzamento.

Passos para criar o programa Zero crossover CCI Strategy - Buy:

//+------------------------------------------------------------------+
//|                            Zero crossover CCI Strategy - Buy.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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
  
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals
   if(CCIValue > 0)
   Comment ("Zero crossover CCI - BUY SIGNAL ");
   
   if(CCIValue > 100)
   Comment ("Zero crossover CCI - TAKE PROFIT");
  }
//+------------------------------------------------------------------+

Encontramos o programaZero crossover CCI Strategy - Buy no Navegador:

Zero crossover buy strategy CCI no navegador

Abrimos este programa clicando duas vezes ou arrastando-o e soltando-o ele no gráfico. A seguinte janela será aberta:

Janela do Zero crossover CCI strategy - Buy


Após habilitar "Permitir a Negociação Automatizada" e pressionar ok, o programa (EA) - Zero crossover CCI Strategy - Buy - será anexado ao gráfico:

Zero crossover CCI strategy - Buy anexado

Os sinais aparecerão de acordo com a estratégia Zero crossover CCI Strategy - Buy:

Zero crossover CCI strategy - Buy

Nós podemos receber o sinal de take profit quando o CCI > 100 = take profit, a imagem a seguir é um exemplo disso:

Zero crossover CCI strategy - Buy - TP

CCI < 0 = Compra
CCI < -100 = take profit 

Nós vamos codificar isso através das seguintes etapas:

  1. Criar uma matriz para os preços.
  2. Classificar a matriz de preços a partir dos dados atuais.
  3. Definir as propriedades do CCI.
  4. Classificar os resultados.
  5. Obter o valor dos dados atuais.
  6. Configuração da condição do valor do CCI e do nível zero para o cruzamento.

Passos para criar o programa Zero crossover CCI Strategy - Short:

//+------------------------------------------------------------------+
//|                          Zero crossover CCI Strategy - Short.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()
  {
   //Creating an array of prices
   double ArrayOfPrices[];
   
   //Sorting price array from current data
   ArraySetAsSeries(ArrayOfPrices,true);
   
   //CCI properties Definition
   int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE);
   
   //Storing results
   CopyBuffer(CCIDef,0,0,3,ArrayOfPrices);
   
   //Getting value of current data
   double CCIValue = (ArrayOfPrices[0]);
   
   //CCI signals
   if(CCIValue < 0)
   Comment ("Zero crossover CCI - SHORT SIGNAL ");
   
   if(CCIValue < -100)
   Comment ("Zero crossover CCI - TAKE PROFIT");
  }
//+------------------------------------------------------------------+

Após isso, encontramos o programaZero crossover CCI Strategy - Short no Navegador:

Zero crossover short strategy CCI no navegador

Abrimos o programa Zero crossover CCI Strategy - Short clicando duas vezes nele ou arrastando-o e soltando-o no gráfico. A seguinte janela será aberta:

Janela do Zero crossover CCI strategy - Short

Após habilitar "Permitir a Negociação Automatizada" e pressionar ok, o programa (EA) - Zero crossover CCI Strategy - Short - será anexado ao gráfico:

Zero crossover CCI strategy - Short anexado

Os sinais aparecerão de acordo com esta estratégia -Zero crossover CCI Strategy - Short:

Zero crossover CCI strategy - Short

Nós podemos receber o sinal de take profit quando CCI < -100 = take profit, a imagem a seguir é um exemplo para isso:

Zero crossover CCI strategy - Short - TP

Conclusão

O indicador Commodities Channel Index - CCI - é outra ferramenta que pode ser usada a nosso favor para ser benéfica para a nossa negociação e obter melhores resultados após testar todas as estratégias do CCI e otimizá-la no caso de ser lucrativa após o teste. Você pode considerar que este artigo é uma introdução a uma nova ferramenta que pode ser usada em sua negociação, caso ela seja adequada ao seu plano e estilo de negociação. 

Neste artigo, nós vimos o que é o indicador CCI, o que ele significa, o que mede e como nós podemos calculá-lo. Vimos um exemplo para aprofundar nosso conhecimento e conscientização sobre essa ferramenta, que pode ser um motivo para abrir os nossos olhos para mais insights e novas ideias.

Então, nós conhecemos estratégias simples que podem ser usadas pelo CCI em diferentes condições de mercado (tendência de alta, tendência de baixa e lateralização) e a estratégia de cruzamento no nível zero. Como eu mencionei, existem muitas estratégias que podem ser usadas pelo CCI e que você pode aprender mais para saber quais delas podem ser úteis para sua negociação, mas eu acredito que quando você conhece o básico de algo, seu uso será mais eficaz.

Então, nós sabíamos como projetar um plano para essa estratégia que pode ser útil para escrever nosso programa para projetar um sistema de negociação por CCI. Então, nós sabíamos como codificar essa estratégia em MQL5 e como anexar e executar esse sistema de negociação em nossa plataforma de negociação MetaTrader 5 para gerar sinais automáticos e, então, saber como os sinais podem ser gerados em nossos gráficos.

O que eu preciso confirmar agora é que você deve testar qualquer nova estratégia antes de usá-la ao vivo em sua conta real. Eu espero que você ache este artigo útil para você e sua negociação por meio de informações incluídas ou abrindo seus olhos para novas ideias ou insights que podem ser usados em sua negociação.