Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 644

 
Artyom Trishkin:

data/hora é ulong

Muito obrigado!
 
Vitaly Gorbunov:

Você não deveria ter corrigido seu código de uma vez, o homem simplesmente não entende as chaves elementares do compilador, e para escrever um código normal você precisa conhecer essas sutilezas e usar a documentação!

Eu apontei a antiguidade do vídeo e se ele o copiasse exatamente como estava no vídeo, ele teria sucesso. Mas ele se ofendeu e reclamou do cargo, o que resultou em sua eliminação, enquanto ele mesmo nem sequer vai investigar!

Acontece que não foi inteiramente em vão. Ele nem sequer tentou entender a diferença no código apresentado e nem sequer funciona dessa maneira.

Geralmente, eu também não gosto de pedir correções de código. Mas aqui acabou sendo "não é o caso". Há muito tempo tenho interesse em bibliotecas, até mesmo minha própria biblioteca. Mas tendo compreendido que tenho que passar toda a biblioteca junto com o Consultor Especialista ou código indicador, e explicar o que colocar lá... Nem todos entendem isso de uma vez, eu decidi desistir. Esta é uma resposta à réplica

E, para consertá-lo, tive que resolvê-lo e lembrar o que havia esquecido. Isso me deixou com o código acabado.
 
Sergey Maksiutenko:

Não se preocupe.

Entendo que você não pode me ajudar.

Eu removi #propriedade estrita, removi todas as propriedades exceto#propriedadebiblioteca

não ajuda.

Tente ligar o meu projeto, encontre o erro,

e afixar o código correto, se este for o problema.

Há um código de trabalho que está pronto para ser usado.
 
Ha, eu descobri o problema! Pergunto-me por que tudo funciona para mim e não para ele! Se ele me mostrar quais arquivos estão em suas bibliotecas, talvez até possamos arquivar um erro no Service Desk!
 
Sergey Maksiutenko Bem, estou pronto para afixar o conteúdo das pastas certas, caso contrário, vou considerá-lo um troll! Porque eu consegui reproduzir este problema e sei o que está errado com você!
 

Estou sentado no XP, MT4 1090 e, portanto, não terei nenhuma atualização.

Quando mudo a escala de tempo em MT4,o gráfico se move constantemente para a esquerda ou direita - se eu mudar de uma escala maior para uma menor (por exemplo, de diário para horário), os dados têm meio ano de idade na tela. Se eu mudar de uma escala menor para uma escala maior, ele mostra apenas os últimos 10 candelabros. Tenho que realizar gestos constantes para que o gráfico pareça aceitável, o que é irritante.

Para sua conveniência, escrevi um código que muda a escala no teclado e desloca a tabela para o final:


nulo OnChartEvent(const int int id,

const long &lparam,

const double &dparam,

const string &sparam)

{

string Key1_Value="1";

string Key2_Value="2";

string Key3_Value="3";


if(StringGetChar(Key1_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,5);

if(StringGetChar(Key2_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,60);

if(StringGetChar(Key3_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,1440);

ChartNavigate(0,CHART_END,0);

}


Tudo funciona, mas ChartNavigate "congela" a carta no lugar e não a deixa rolar para a esquerda. Como consertá-lo?

 
psyman:

Estou sentado no XP, MT4 1090 e, portanto, não terei nenhuma atualização.

Quando mudo a escala de tempo em MT4,o gráfico se move constantemente para a esquerda ou direita - se eu mudar de uma escala maior para uma menor (por exemplo, de diário para horário), os dados têm meio ano de idade na tela. Se eu mudar de uma escala menor para uma escala maior, ele mostra apenas os últimos 10 candelabros. Tenho que realizar gestos constantes para que o gráfico pareça aceitável, o que é irritante.

Por uma questão de conveniência, escrevi um código para mudar a escala no teclado e deslocar a tabela para o final:

Há ali um botão para fazer o próprio deslocamento do gráfico.

1

 


Se eu quiser desenhar uma linha de tendência, o autoscroll não permite rolar a carta para a esquerda.

Especialmente porque só funciona quando novos carrapatos chegam.

 
psyman:


A rolagem automática impede a rolagem do gráfico para a esquerda se, por exemplo, uma linha de tendência precisar ser traçada.

Especialmente porque só funciona quando novos carrapatos chegam.

então assim

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{
if (id==CHARTEVENT_KEYDOWN)
   {
   if(lparam=='1')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_M5);

   if(lparam=='2')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_H1);

   if(lparam=='3')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_D1);

    ChartNavigate(0,CHART_END,0);
   }
}
 
Muito obrigado.