Indicadores não aparecem na Tela do MT5 - página 3

 
Rogerio Giannetti Torres:

Até pouco tempo havia punição a que jogasse lixo na ruas, então a questão não é infrigir regra mas sim de princípios. o que importa é a intenção do ato e criar perfil falso para atacar outra pessoa não é uma atitude para bater palmas.

Quanto a empáfia do dito cujo, isso é um problema dele e de quem se sentir ultrajado.

Quanto a sua explicação, lamento mas você está em erro,  pois o comando ChartIndicatorAdd,  cria sim uma cópia na thread de interface  e  um shortname é atribuído a esse indicador.

Quanto ao meu perfil ele é verificado.

Rogério boa noite,

Sem querer me meter nessa discussão do que é certo ou errado(no quesito de comportamento).

Mas me chamou a atenção os pontos levantados pelos dois, fui atras de informação e infelizmente a documentação é totalmente interpretativa. Ai com a sua resposta me levantou essa duvida de estar duplicando o indicador(me corrija se entendi errado, por favor). Mas, enfim...Peguei esse exemplo que postei e joguei no gráfico, e na janela de dados e indicadores apareceu apenas um.

Quando você diz que, "o comando ChartIndicatorAdd,  cria sim uma cópia na thread de interface  e  um shortname é atribuído a esse indicador. ", eu havia entendido que dois indicadores apareceriam na janela de indicadores, por ter um ShortName "novo".

Você poderia me explicar isso? realmente como o Flavio disse, a parte de manipulação gráfica é bem chatinha, pelo menos para mim, e venho estudando sobre o tema recentemente, mas sempre me deparo com algumas armadilhas.



 
Jonathan Pereira:



Jonathan,

o que eu comentei não está na documentação, esse comentário foi baseado na observação de que ao remover um EA com gráficos inseridos pelo comando ChartIndicatorAdd estes  permaneciam nas respectivas janelas e para remove-los com o ChartIndicatorDelete era necessário o nome abreviado, abaixo tem o código que uso on OnDeinit.

Note  que ChartIndicatorAdd só faz inserir uma cópia do indicador (instanciado) na janela gráfica ou em nova nova janela e que a propriedade INDICATOR_SHORTNAME é para a classe de indicadores customizados e não é obrigatório.

Por fim, o ReleaseaIndicator remove a instância do indicador no EA, mas não remove o gráfico que foi inserido pelo ChartIndicatorAdd.

Abraços e bons negócios.


   long total_windows;
   if(ChartGetInteger(0, CHART_WINDOWS_TOTAL, 0, total_windows))
      for(int i = (int)total_windows - 1; i >= 0; i--)
        {
         long total_indicators = ChartIndicatorsTotal(0, i);
         for(int j = 0; j < total_indicators; j++)
           {
            ChartIndicatorDelete(0, i, ChartIndicatorName(0, i, 0));
           }
        }
 
Rogerio Giannetti Torres:

....

Rogerio, Entendi e muito obrigado pela resposta.

Estava dando uma olhada na documentação, pois fiquei curioso, e entendi o seguinte.

Realmente a função  ChartIndicatorAdd cria uma "copia" do indicador para a tela, porem diferente do EA, não temos acesso ao handler do indicador.

Quanto a excluir ele do gráfico eu fiz um teste assim..

ChartIndicatorDelete(0, total, "ADX("+period+")");


Eu usei o nome como é recomendado criar o short_name do indicador, e funcionou perfeitamente. Mas realmente, se não usar isso na OnDenit ele vai adicionando vairas e vairas vezes na tela. E Pior que isso não fica claro na documentação, uma pegadinha realmente.

Então eu conclui que essa função de adicionar o indicador na tela, foi uma forma de atender alguns usuários que queriam a todo custo usar o mesmo indicador do robô na tela, pois de resto não faz sentido seu uso, rsrsrsrs...


Obrigado mais uma vez pela discussão técnica, que tende a acrescentar no conhecimento de todos os usuários do fórum. 

 
Jonathan Pereira:


Então eu conclui que essa função de adicionar o indicador na tela, foi uma forma de atender alguns usuários que queriam a todo custo usar o mesmo indicador do robô na tela, pois de resto não faz sentido seu uso, rsrsrsrs...


Opa,

isso é verdade, mas até hoje não tive um cliente que não quisesse ver os indicadores na tela, pior é no MT4, como não existe essa função, você tem que explicar para  colocar manualmente e depois salvar um template.

Bom final de semana.

 

Só para deixar claro...

Sim sou sarcástico com quem é preguiçoso e quer tudo fácil. Sou original e sincero. Estou aqui para ajudar. E, quando posso.

Existem 2 corretoras que atolam este fórum com incautos de todas as vertentes, TODA santa SEMANA, parece até maldição... Faço parte deste fórum há anos, sei do que estou falando.

Moderadores vem e vão...

Fica o Highlander Giannetti, que nunca vi tamanha perseverança, e nós, pouquíssimos programadores que ainda restam neste fórum, que temos nosso limite bem baixo para preguiça e malandragem com essa horda de incautos diários...  Você logo mais vai me dar razão e vai espanar também...

E, SIM, o MQL5 é uma colcha de retalhos que está sendo consertada, mas a passos muito curtos. Existem desde imbecilidades de nomenclaturas de funções até bizarrices provavelmente de Garbage Collection, por isso dá um monte de m* no backtest. De novo, sei do que estou falando, nos anos 80 participei no desenvolvimento de compiladores, sei da encrenca do que é performance versus utilidade...

Enfim... Desculpem qq coisa que os tenha ofendido...

Mas, vou continuar sendo eu... Apenas prometo que ajudarei apenas a quem merece... Me abstenho do resto... Pra mim, já deu...

Live Long and Prosper...

;)

 

E... não faça mais isso... pega mal...



 

Instalei o Hilo escadinha da forma como instalo todos os indicadores. Porém não consigo anexá-lo ao meta trader 5.

 
Oedepassos #:

Instalei o Hilo escadinha da forma como instalo todos os indicadores. Porém não consigo anexá-lo ao meta trader 5.

Bom dia.

Veja qual informação aparece na aba expert e nos informe aqui.
Razão: