Número da barra de sinal para o indicador de repintura: Mudança de barra para usar como sinal?

Características funcionais e parâmetros de especialistas da expforex.com
Benefícios de especialistas prontos versus programação / freelance.
Características funcionais e parâmetros de especialistas da expforex.com
Benefícios de especialistas prontos versus programação / freelance.

Miniatura do Vídeo sobre Forex e MetaTrader

Descrição

Vamos examinar exemplos de como os indicadores se comportam, focando naqueles que desenham e nos que não desenham. Por exemplo, considere como um indicador de barra (Candle) pode funcionar de forma diferente em comparação com outros.

Diferenças de sinais na programação. Usando o parâmetro shift

Para entender melhor como os indicadores funcionam, é útil explorar exemplos de indicadores que desenham e indicadores que não desenham.

Indicadores que desenham (Repaint) são aqueles que plotam diretamente no gráfico de preços, enquanto indicadores que não desenham exibem sua saída em uma janela separada.?????? NÃO

Desenhando ou Indicadores de Redesenho são ferramentas técnicas usadas no trading que modificam seus sinais (como setas) ou alteram a direção do sinal para fornecer indicações mais precisas nas bars (Candles) atuais ou anteriores.

Bar = Candle = barra :

Gráfico de Barra igual a Candle no MetaTrader

Esses indicadores possuem a capacidade de redesenhar seus sinais, o que pode ser considerado uma violação da integridade do trading e uma prática enganosa.

Alguns indicadores redesenham intencionalmente seus sinais para melhorar o apelo visual, tornando o gráfico mais esteticamente agradável.

Outros indicadores realizam o redesenho como parte de seus cálculos matemáticos para melhorar a precisão e a confiabilidade dos sinais que geram.

No entanto, é comportamento normal para todos os indicadores desenharem na 0ª bar (Candle) ou na bar atual (Candle). Esse desenho inicial garante que o indicador esteja devidamente alinhado com os dados de mercado mais recentes.

Vamos explorar as razões subjacentes pelas quais os indicadores redesenham seus sinais e as implicações que isso tem para as estratégias de trading.

A diferença nos sinais entre esses dois tipos de indicadores pode ser significativa, portanto, entender seu comportamento é crucial ao programar estratégias de trading.

Uma maneira de influenciar como os indicadores se comportam é usando o parâmetro shift, que permite deslocar a saída do indicador para frente ou para trás no tempo.

Experimentando com diferentes valores do parâmetro shift, você pode ajustar seus indicadores para alinhar melhor com sua estratégia de trading, aumentando assim suas chances de sucesso no mercado.

E você pode verificar tais indicadores com a ajuda do testador de estratégias usando nosso Expert Advisor universal:

EA The xCustomEA: Consultor de Trading Universal para iCustom Indicators. Construtor de Estratégia Personalizada

Ou no testador de estratégias usando nosso Simulador:

Forex Tester Pad é um simulador de trading Forex para testador de estratégias. Trading usando indicadores.

Prefácio

Este artigo foi escrito a pedido de nossos parceiros.

Ao solicitar a programação de Expert Advisor, você pode ajustar a bar de sinal em todos os meus consultores.

É comum encontrar reclamações online de que alguns Expert Advisors não funcionam corretamente devido aos seus indicadores.

Vou explicar esses sinais em detalhes e demonstrar o contrário: todos os indicadores desenham, e eles devem simplesmente ser usados corretamente.

Existe uma versão em vídeo deste artigo, mas antes de assistir, recomendo ler a versão em texto para uma compreensão mais profunda.

Shift (0,1,2…..) Número da Bar (Candle)

Este parâmetro representa o número da Bar a partir da qual seus indicadores irão pegar um sinal.

Ao solicitar um Expert Advisor, você deve especificar os seguintes parâmetros de definição de sinal: abrir um negócio imediatamente após o sinal, ou esperar até que o sinal seja formado em uma Bar fechada e abrir um negócio apenas na abertura da próxima Bar.

Devido aos seus algoritmos, alguns indicadores têm uma definição clara: em qual Bar o sinal é dado?

Se falarmos sobre a clareza e execução correta da ordem, então o negócio deve ser processado apenas em uma Bar fechada, ou seja, parâmetro shift=1.

Se for necessário abrir um NEGÓCIO imediatamente após a ocorrência de um sinal na Bar atual e o indicador permitir isso, é necessário definir shift=0.

Expert Advisor

O EA é escrito usando nosso modelo para escrever um EA. Todas as funções do consultor são descritas nesta página: Funções do Consultor Forex.

Você pode baixar o pacote no link Bar de Sinal Pacote de Teste

1. Indicador de Média Móvel Moving Average Indicator

O indicador padrão do terminal MT4 inclui o período de média, preços de média e o tipo de média nas configurações.

Estratégia de Trading: Cruzamento de médias. A interseção da MA lenta e da MA rápida.

Código da Estratégia:

double ExampleMA=iMA(Symbol(),0,20,0,MODE_SMA,PRICE_CLOSE,shift); // Chamada MA Exemplo
double ExampleMA2=iMA(Symbol(),0,50,0,MODE_SMA,PRICE_CLOSE,shift); // Chamada MA Exemplo
double ExampleMA23=iMA(Symbol(),0,20,0,MODE_SMA,PRICE_CLOSE,shift+1); // Chamada MA Exemplo
double ExampleMA22=iMA(Symbol(),0,50,0,MODE_SMA,PRICE_CLOSE,shift+1); // Chamada MA Exemplo

if(ExampleMA23<ExampleMA22 && ExampleMA>ExampleMA2) Sig=1;
if(ExampleMA23>ExampleMA22 && ExampleMA<ExampleMA2) Sig=2;

     

Exemplos de Trabalho com Shift = 0

Exemplo de Cruzamento de Indicador - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Exemplos de Trabalho com Shift = 1

Indicador de Média Móvel 2 - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Explicação: Este indicador não desenha, permitindo seu uso com qualquer shift.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador de Média Móvel

2. Cruzamento de Indicador Indicator Cross

Um indicador personalizado baseado na estratégia de cruzamento de MA com recursos adicionais. Desenha de forma proeminente com precisão. O cruzamento em 1 Bar desenha uma seta na Bar 0 e redesenha continuamente.

Estratégia de Trading: Trading com Setas

Código da Estratégia:

int Sig=0;
  if(shift!=-1)
  {
    double UP=iCustom(Symbol(),0,"cross",0,shift);
    double DN=iCustom(Symbol(),0,"cross",1,shift);
  }
  if(shift==-1)
    for(int i=1;i<=100;i++)
    {
      UP=iCustom(Symbol(),0,"cross",0,i);
      DN=iCustom(Symbol(),0,"cross",1,i);
      if(UP!=EMPTY_VALUE || DN!=EMPTY_VALUE) break;
    }

  if(UP!=EMPTY_VALUE){Sig=1;}
  if(DN!=EMPTY_VALUE){Sig=2;}

Exemplos de Trabalho com Shift = 0

Indicador de Média Móvel - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Exemplos de Trabalho com Shift = 1

Cruzamento de Indicador 1 - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Exemplos de Trabalho com Shift = -1

Indicador CurrencyPowerMeter - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Explicação: Este indicador desenha de forma proeminente, e o desenvolvedor redesenha deliberadamente o sinal. Portanto, é arriscado usar este indicador como um indicador de sinal.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador CurrencyPowerMeter

3. Indicador CurrencyPowerMeter

Um indicador personalizado que mede a força das moedas. Este indicador opera usando objetos, portanto, o shift é irrelevante. A estratégia de trading para este indicador baseia-se em puxar o valor não do buffer do indicador mas da indicação do objeto no gráfico.

Estratégia de Trading: Negociar a diferença entre forças das moedas

Código da Estratégia:

double EUR_HOUR[1];
  double GBP_HOUR[1];
  double AUD_HOUR[1];
  double NZD_HOUR[1];
  double USD_HOUR[1];
  double CAD_HOUR[1];
  double CHF_HOUR[1];
  double JPY_HOUR[1];

  double PervayaValuta;
  double VtorayaValuta;
  string note=" Autenticação CONFIGURAÇÕES ==";
  string username = "";
  string password = "";
  double trend;
  string DATATRend;

  trend=iCustom(Symbol(),0,"CurrencyPowerMeter",0,0);

  EUR_HOUR[0]=StringToDouble(ObjectDescription("CPMEUR_Str_h"));
  GBP_HOUR[0]=StringToDouble(ObjectDescription("CPMGBP_Str_h"));
  AUD_HOUR[0]=StringToDouble(ObjectDescription("CPMAUD_Str_h"));
  NZD_HOUR[0]=StringToDouble(ObjectDescription("CPMNZD_Str_h"));
  USD_HOUR[0]=StringToDouble(ObjectDescription("CPMUSD_Str_h"));
  CAD_HOUR[0]=StringToDouble(ObjectDescription("CPMCAD_Str_h"));
  CHF_HOUR[0]=StringToDouble(ObjectDescription("CPMCHF_Str_h"));
  JPY_HOUR[0]=StringToDouble(ObjectDescription("CPMJPY_Str_h"));

  if(StringSubstr(Symbol(),0,3)=="USD") PervayaValuta=USD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="GBP") PervayaValuta=GBP_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="EUR") PervayaValuta=EUR_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="AUD") PervayaValuta=AUD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="NZD") PervayaValuta=NZD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="CAD") PervayaValuta=CAD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="CHF") PervayaValuta=CHF_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="JPY") PervayaValuta=JPY_HOUR[0];

  if(StringSubstr(Symbol(),3,3)=="USD") VtorayaValuta=USD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="GBP") VtorayaValuta=GBP_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="EUR") VtorayaValuta=EUR_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="AUD") VtorayaValuta=AUD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="NZD") VtorayaValuta=NZD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="CAD") VtorayaValuta=CAD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="CHF") VtorayaValuta=CHF_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="JPY") VtorayaValuta=JPY_HOUR[0];

  if(PervayaValuta - VtorayaValuta > 0) return(1);
  if(PervayaValuta - VtorayaValuta < 0) return(2);
  return(0);

Exemplos de Trabalho

Exemplo de Indicador CurrencyPowerMeter - Número da Bar de Sinal para Indicador Repaint: Shift da Bar a Usar para Sinal?

Explicação: Este indicador não possui buffers de indicador e é baseado em objetos. Portanto, a bar de sinal não importa. Tais indicadores não podem ser testados ou otimizados e funcionam apenas em tempo real.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador CurrencyPowerMeter

4. Indicador de Tendência Fiji

Um indicador personalizado que funciona com sinais de MA e ATR na forma de setas. Ele não desenha o indicador, mas com um pequeno truque, o indicador pega dados de Bars fechadas, mas coloca uma seta na Bar 0 atual. É uma ilusão de engano.

Estratégia de Trading: Trading nas setas do indicador

Código da Estratégia:

int Sig=0;

double DNSignal=iCustom(Symbol(),0,"Fiji Trend",3,shift); // Exemplo de chamada de indicador personalizado
double UPSignal=iCustom(Symbol(),0,"Fiji Trend",2,shift); // Exemplo de chamada de indicador personalizado
double DNTrend=iCustom(Symbol(),0,"Fiji Trend",1,shift); // Exemplo de chamada de indicador personalizado
double UPTrend=iCustom(Symbol(),0,"Fiji Trend",0,shift); // Exemplo de chamada de indicador personalizado

// Especificar Sinais para Abertura:
if( UPSignal!=EMPTY_VALUE) Sig=1;
if( DNSignal!=EMPTY_VALUE) Sig=2;

Exemplos de Trabalho com Shift = 0

Exemplos de Trabalho com Shift = 1

Explicação: Este indicador não desenha. No entanto, ele coloca sinais usando o truque mencionado anteriormente. É um dos poucos indicadores que fornecem sinais razoavelmente bons.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador de Tendência Fiji

5. Indicador Fisher

Um indicador personalizado que opera em Bars Hi-Lo e calcula sinais com base em suas fórmulas. Ele desenha conforme demonstrado pelos testes e redesenha 3-5 Bars em Bars fechadas, apresentado na forma de um histograma.

Estratégia de Trading: Trading de Histograma. Cruzamento do histograma com as marcas 0.

Código da Estratégia:

int Sig=0;

double DNSignal=iCustom(Symbol(),0,"Fiji Trend",3,shift); // Exemplo de chamada de indicador personalizado

double Fisher1=iCustom(Symbol(),0,"fisher",0,shift);
double Fisher2=iCustom(Symbol(),0,"fisher",0,shift);

if( Fisher1>0 && Fisher2>0 ){ Sig=1; }
if( Fisher1<0 && Fisher2<0 ){ Sig=2; }

// 1 - Comprar, 2 - Vender

return(Sig);

Exemplos de Trabalho com Shift = 0

Exemplos de Trabalho com Shift = 1

Explicação: Este indicador desenha, então não recomendo pegar sinais dele.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador Fisher

6. Indicador de Cor HMA

Um indicador personalizado que opera em MA e calcula sinais com base em suas fórmulas.

Estratégia de Trading: Trading de Mudança de Cor

Código da Estratégia:

int Sig=0;

double HMARED=iCustom(Symbol(),0,"HMA Color",3,shift);
double HMAGREEN=iCustom(Symbol(),0,"HMA Color",1,shift);

double HMARED2=iCustom(Symbol(),0,"HMA Color",3,shift+1);
double HMAGREEN2=iCustom(Symbol(),0,"HMA Color",1,shift+1);

// Especificar Sinais para Abertura:
if(HMAGREEN!=EMPTY_VALUE && HMAGREEN2==EMPTY_VALUE) Sig=1;
if(HMARED!=EMPTY_VALUE && HMARED2==EMPTY_VALUE) Sig=2;

Exemplos de Trabalho com Shift = 0

Exemplos de Trabalho com Shift = 1

Explicação: Este indicador não desenha. No entanto, ele coloca sinais usando o truque mencionado anteriormente. É um dos poucos indicadores que fornecem sinais razoavelmente bons.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador de Cor HMA

7. Indicador MACD

Indicador padrão do terminal MT.

Estratégia de Trading: Trading na interseção da linha de sinal e do histograma

Código da Estratégia:

int Sig=0;

double MACD_SIGNAL1=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,shift); // Chamada MACD Exemplo

double MACD_SIGNAL2=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,shift+1); // Chamada MACD Exemplo

double MACD_MAIN1=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_MAIN,shift); // Chamada MACD Exemplo
double MACD_MAIN2=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_MAIN,shift+1); // Chamada MACD Exemplo

if(MACD_SIGNAL2<MACD_MAIN2 && MACD_SIGNAL1>MACD_MAIN1) Sig=1;
if(MACD_SIGNAL2>MACD_MAIN2 && MACD_SIGNAL1<MACD_MAIN1) Sig=2;

Exemplos de Trabalho com Shift = 0

Exemplos de Trabalho com Shift = 1

Explicação: Este indicador não redesenha em 1 Bar fechada, então você pode usar livremente shift=1.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador MACD

8. Indicador ZIGZAG

Indicador padrão do terminal MT. Constrói topos e fundos com base no alto-baixo de uma área específica.

Estratégia de Trading: Negociar na formação de topos e fundos. Não é recomendado negociar no indicador com posições. É uma boa estratégia de limite.

Código da Estratégia:

int Sig=0;

double PriceZZ1=GetExtremumZZPrice(Symbol(),0,1);
double PriceZZ2=GetExtremumZZPrice(Symbol(),0,2);

double priceUP, priceDN;

if(PriceZZ2>PriceZZ1) { priceUP=PriceZZ2; priceDN=PriceZZ1; Sig=2; }
if(PriceZZ2<PriceZZ1) { priceUP=PriceZZ1; priceDN=PriceZZ2; Sig=1; }

Exemplos de Trabalho com Shift = 0

Explicação: Este indicador desenha topos e fundos, portanto, o shift é irrelevante. As condições únicas da estratégia permitem uma negociação bem-sucedida neste indicador.

Exemplo em Vídeo:

Miniatura do Vídeo sobre Indicador ZIGZAG

9. BARS Trabalho sob Demanda

Opera nas Bars padrão do terminal MT.

Estratégia de Trading: Se a Bar for de alta, abra uma compra; se a Bar for de baixa, abra uma venda.

Código da Estratégia:

int Sig=0;

if(Open[shift] < Close[shift]) Sig=1;
if(Open[shift] > Close[shift]) Sig=2;

Exemplos de Trabalho com Shift = 0

Exemplos de Trabalho com Shift = 1

Explicação: Um exemplo perfeito de como o parâmetro shift funciona, demonstrando como você pode negociar estratégias baseadas neste parâmetro.

Exemplo em Vídeo:

Miniatura do Vídeo sobre BARS Trabalho sob Demanda

Conclusões

Este artigo informativo fornece exemplos úteis de como usar vários indicadores com diferentes valores do parâmetro shift.

Cada indicador é único; portanto, ao criar um Expert Advisor, o tipo de indicador e seu sinal devem ser levados em conta.

Antes de contratar um programador para criar um Expert Advisor, é importante primeiro testar seu indicador para quaisquer possíveis problemas com redesenho.

Isso é crucial, pois a confiabilidade e a eficácia das negociações do seu robô dependerão da precisão do seu indicador.

Portanto, recomenda-se que você verifique e teste minuciosamente seu indicador antes de prosseguir com a criação do seu Expert Advisor.

Advisor

O EA é escrito usando nosso modelo para escrever um EA.

Todas as funções do consultor são descritas nesta página: Funções do Consultor Forex.

Se você deseja criar um alerta para o seu indicador, por favor, leia nosso artigo:

Dúvidas?

Se você tiver qualquer dúvida, por favor, pergunte. Não vendemos porco no saco.

Cada um de nossos produtos pode ser testado antes da compra.

Agradecemos seu feedback e desejos para nossos produtos e nos esforçamos para manter altos padrões de qualidade.

Obrigado por estar conosco!

Você tem uma pergunta?

Leave a Reply

Your email address will not be published. Required fields are marked *

This post is also available in: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어


     

    Aviso de risco:


    O desempenho comercial passado não garante resultados futuros.

    A negociação de divisas com margem comporta um elevado grau de risco e pode não ser adequada para todos os investidores.

    Tem em atenção que a utilização de robôs de negociação envolve um risco substancial e que podes perder mais do que o teu investimento inicial.

    Procede com cautela, avalia cuidadosamente a tua situação financeira e considera a possibilidade de procurar aconselhamento junto de um profissional qualificado.

    Isenção de responsabilidade

    Este site utiliza cookies para melhorar sua experiência. Ao usar este site, você concorda com nossa Política de Proteção de Dados e Aviso Legal.
    Leia mais