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

 
Galim_V:

Existe uma solução de software simples para o meu problema?

Há!


 
Yevhenii Levchenko:

Sim!


Obrigado pela sua resposta. Sim, nós sabemos o valor atual da troca. E eu preciso do resultado da comparação com o valor de ontem.

 
Galim_V:

Obrigado pela sua resposta. Sim, saberemos o valor atual da troca. E eu preciso do resultado da comparação com o valor de ontem.

Economize o valor de ontem em uma variável e compare! :)

 
Yevhenii Levchenko:

Economize o valor de ontem em uma variável e compare! :)

Quando você reiniciar o terminal, ele será salvo? Ou você está falando sobre a variável global do terminal?

 
Galim_V:

Quando você reiniciar o terminal, ele será salvo? Ou você está falando sobre a variável global do terminal?

Não, não vai. Para salvar, você precisa ou de uma variável global ou salvar em um arquivo
 
Yevhenii Levchenko:
Não, não vão. Você precisa ou de uma variável global ou salvar em um arquivo para que sejam salvas.

Eu estava fazendo um info-painel, mas perdi o código fonte. Ao fazer isso, evitou todas as entradas, usou funções de informante. Decidiu restaurar tudo e acrescentar este problema de troca. Foi por isso que eu fiz a pergunta. A troca não deixa nenhum vestígio na história, que é escrito pelo próprio terminal? Mas se não há outra opção senão escrever, eu gostaria de uma dica, pois não trabalhei com arquivos e global. Considerando que eu preciso comparar 20 instrumentos uma vez por dia. Obrigado pelo seu tempo.

 
Galim_V:

Eu estava fazendo um info-painel, mas perdi o código fonte. Ao fazer isso, evitou todas as entradas, usou funções de informante. Decidiu restaurar tudo e acrescentar este problema de troca. Foi por isso que eu fiz a pergunta. A troca não deixa nenhum vestígio na história, que é escrito pelo próprio terminal? Mas se não há outra opção senão escrever, eu gostaria de uma dica, pois não trabalhei com arquivos e global. Considerando que eu preciso comparar 20 instrumentos uma vez por dia. Obrigado pelo seu tempo.

É mais fácil usar uma variável global... Os arquivos são mais um incômodo...
 

Terminou o indicador no mt5 (traduzido do mt4). Eu escrevi sobre isso ontem. Funcionou bem para mim, mas não tão bem para o cliente. Pelo que entendi, os problemas apareceram quando o indicador estava adicionando ou removendo outros indicadores programmaticamente. Eu culpo a funçãoIndicatorRelease... Durante a desinicialização, os indicadores (exceto o atual) são removidos do gráfico através doChartIndicatorDelete, em seguida, a alavanca de liberação através do IndicatorRelease. A ajuda declara:

IndicatorRelease()

Удаляет хэндл индикатора и освобождает расчетную часть индикатора, если ею больше никто не пользуется.
Функция позволяет удалять хэндл индикатора, если он больше не нужен, и таким образом позволяет экономить память. Удаление хендла производится сразу, 
удаление расчетной части индикатора производится через некоторое небольшое время (если обращений к ней больше нет). 

Durante a inicialização, os cabos são criados de volta. E a princípio, contando na OnCalculate, os indicadores são novamente adicionados ao gráfico. Eu adicionei um loop vazio no OnDeinit para 1000 passes para adicionar algum atraso. Eu não tenho confiança nesta solução. Funcionou bem para mim antes (apesar de o terminal ter sido desligado uma vez hoje), e o cliente começou a trabalhar bem hoje (pelo menos por enquanto).

O algoritmo no mt4 funciona bem (nunca pendurado lá). A diferença do mt5 é que aqui os indicadores são adicionados programmaticamente (e os valores calculados dos indicadores precisam ser constantemente copiados para que possam ser utilizados). Enquanto no mt4 eles apenas copiam os amortecedores para visualização (muwings e ziguezagues... como "adicionar indicadores programmaticamente").

Você sabe, o problema pode estar relacionado com a eliminação e recriação de alças (quando os parâmetros são alterados, a desinicialização e a inicialização se sucedem imediatamente...)? Existe alguma maneira de verificar se existe ou não um cabo desse indicador?

 

Eu ainda recebo valores não normalizados após a normalização - MQL5

up    = NormalizeDouble((up == 0 ? 1 * point : up),_Digits);
down  = NormalizeDouble((down == 0 ? 1 * point : down),_Digits);
sum   = NormalizeDouble((sum == 0 ? 1 * point : sum),_Digits);
minus = NormalizeDouble((minus == 0 ? 1 * point : minus),_Digits);
if(index <= 65 && index >= 55) Print(index," ",up," ",down," ",sum," ",minus);

Mais desfavorável 1e-05, O que fazer?

 

Por favor, informe como resolver o problema com o indicador de chamada nas janelas MT5 10 X64, estou fazendo isso desta maneira:

#resource "MEU INDICADOR.ex5"

handle=iCustom(NULL,0,"\\Indicators\\\\MyIndicator");

Antes funcionava sem #resource, depois só começou a trabalhar com #resource, agora nada funciona, o erro 4804 é gerado

Razão: