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

 
YarTrade:

Foi o que eu li. Eu queria ter certeza de ter entendido o que foi escrito corretamente.

Cavalheiros, entendo corretamente que o iVolume retorna o volume de negócios feitos por carrapato?

Não, não corretamente. iVolume retorna o volume do tick da barra especificada. Isto é, a quantidade de mudanças nos preços Ask e Bid.

Observando o indicador proposto, você pode vê-lo muito bem.

 

Olá, ainda estou tentando corrigir o código do indicador personalizado para a EA, comecei a analisar as peças e encontrei a função IndicatorCounted(), como ela pode ser substituída no código EA?

Além desta função, o indicador usa as séries de tempo Alto e Baixo, e no indicador e na EA, o código compila e executa, mas na EA ao primeiro tick falha o erro crítico, aparentemente indo além da matriz.....

Eu li sobre indicadores, como rastrear esta barra zero? sem esta função, incluir temporizador e fechar barras por período de tempo?

 
ijonhson:

Olá, ainda estou tentando corrigir o código do indicador personalizado para a EA, comecei a analisar as peças e encontrei a função IndicatorCounted(), como ela pode ser substituída no código EA?

Além desta função, o indicador utiliza as séries de tempo Alto e Baixo, e no indicador e na EA, o código compila e executa, mas na EA ao primeiro tick é um erro crítico, aparentemente indo além da matriz.....

Não há necessidade de mudá-lo. É uma função que determina o número de barras já contadas. Se você tem um desejo irreprimível de fazê-lo em ... Mas neste caso, devemos considerar apenas a última barra e ignorar todas as barras históricas.

 
ijonhson:

tentando corrigir o código de um indicador personalizado para um EA


O que você quer dizer com isso? Podemos falar sobre a mudança do código de um indicador para um EA?

IndicatorCounted(), como ele pode ser substituído no código EA?

Você sabe como um indicador difere de um EA? Em caso afirmativo, por que você precisa desta função em sua EA?


Eu li sobre os indicadores, como rastrear esta barra de zero? sem esta função, ligar o temporizador e fechar as barras por período de tempo?

Acho que há uma questão de causa e efeito. Você definiu a tarefa de forma incorreta, explique melhor o que você quer alcançar e eles lhe dirão o curso de ação correto.

 
Alexey Viktorov:

Não precisa ser alterado de forma alguma. É uma função que determina o número de barras já contadas. Se você tem um desejo irreprimível de fazê-lo em ... É claro que podemos mover o recálculo do estado do mercado para o Expert Advisor, mas neste caso devemos contar apenas com a última barra e ignorar todas as barras históricas.


"Não precisa ser mudado", ou seja, funciona corretamente com o onTick em Expert Advisors como funciona com o onCalculate em indicadores?

 
Nikolay Ivanov:

O que você quer dizer com isso? Trata-se da transferência de código de um indicador para um EA?

Você sabe como um indicador difere de um EA? Em caso afirmativo, por que você precisa desta função em sua EA?


Sim, eu transferi o código, é isso mesmo.

Preciso de um conjunto de nós indicadores para análise em cada tick

 
ijonhson:

Sim, a transferência do código está correta.

Preciso de um conjunto de nós indicadores para análise em cada tick de preferência


Se você precisa de valores indicadores em sua EA, não precisa copiar o código do indicador para a EA, você nem mesmo precisa do código do indicador. Você precisa solicitar os valores indicadores à EA, isto é feito com esta funçãohttps://docs.mql4.com/ru/indicators/icustom

iCustom - Технические индикаторы - Справочник MQL4
iCustom - Технические индикаторы - Справочник MQL4
  • docs.mql4.com
[in] input-параметры пользовательского индикатора, разделенные запятыми. Тип и порядок следования параметров должен соответствовать. Если параметры не указаны, то будут использованы значения по умолчанию.
 
Nikolay Ivanov:

Se você quiser os valores do indicador na EA, não precisa copiar o código do indicador para a EA, nem mesmo o código do indicador. Você precisa solicitar os valores indicadores à EA, isto é feito com esta funçãohttps://docs.mql4.com/ru/indicators/icustom


Muito obrigado, mas pelo que entendi da descrição da função, é necessário todo o código do indicador para obter um valor, no lugar que especifiquei, ou seja, para obter todos os topos, precisarei calcular o código do indicador n vezes (ver todas as barras uma a uma), mas preciso comparar a ordem dos topos do indicador por vários períodos de tempo.

E então eu preciso procurar manualmente por vértices

 
ijonhson:

Muito obrigado, mas tanto quanto entendi da descrição da função, ela executa todo o código do indicador para obter um valor, no local que especifiquei, ou seja, para obter todos os topos precisarei calcular o código do indicador n vezes (passar por todas as barras uma a uma), mas preciso comparar a ordem dos topos deste indicador em vários intervalos de tempo.


O prazo é um parâmetro de entrada da função, você pode entrar em qualquer um. O conjunto de barras é lido utilizando um ciclo, os valores podem ser armazenados em uma matriz

 
Nikolay Ivanov:

O cronograma é um parâmetro de entrada para a função, qualquer um pode ser inserido. O conjunto de barras é lido usando um laço, os valores podem ser salvos em uma matriz


A questão é se devo calcular o código do indicador 900 vezes por tick (3 prazos com 300 barras, por exemplo), ou 3 vezes; é claro que o icustom é menos incômodo, eu o coloco no loop e está feito; como opção vi um endereço do conjunto de valores do indicador passado para o Expert Advisor com um dll, mas não quero manter o indicador no conjunto