Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 1495

 
Sergey Izhutov #:

Era isso que eu estava pensando hoje à noite também, que deveria guardá-lo. Ainda não fiz amizade com os índices. Lembro-me vagamente de que, no 4, escrevi Close > MA e funcionou lá. Vou tentar comentar a alça e ver quais são os resultados

Uma vez me recomendaram "fazer amizade" com o depurador do MetaEditor. Depois que me familiarizei mais ou menos com o depurador, 99,9% das perguntas desapareceram sozinhas. Você coloca qualquer variável na observação e vê seus valores, depois os compara e entende onde há um problema no código. É uma ferramenta muito conveniente. Eu a recomendo.

Saudações, Vladimir.

 
MrBrooklin #:


Obrigado, vou dar uma olhada)

 
Se você minimizar o testador por um tempo, o trabalho ficará mais rápido.
 
Ivan Ivanov #:
Se você minimizar o testador por um tempo, o trabalho ficará mais rápido.

Sempre foi assim.

 
Ajuda, no indicador, se ele for iniciado no testador, não funcion ará
void OnDeinit(const int Reason)

Existe alguma outra maneira de saber pelo indicador que o teste foi concluído?

 
EgorKim #:
Por favor, se o indicador estiver em execução no testador, ele não funcionará
.

Há alguma outra maneira de saber pelo indicador que o teste foi concluído?

Normalmente, não. Não é padrão, é mais fácil ver visualmente. O arquivo de registro do testador deve parar de crescer, ainda é uma tarefa a ser rastreada. A data de conclusão do teste também não é fácil de descobrir.
 
Valeriy Yastremskiy #:
Normalmente não. Não é padrão, é mais fácil de ver visualmente. O arquivo de registro do testador deve parar de crescer, é um desafio rastreá-lo. Também não é fácil encontrar a data de término do teste.

Chegada do tique?

 
Artyom Trishkin #:

Está chegando o tique-taque?

o tempo é emulado)))) e como controlá-lo?, o trabalho do testador termina! para mim, o testador no 5ka funciona como é)))) e, é claro, não chama o ondeinit nos indicadores apenas por tristeza.

 

O Meta Editor gera o erro'ArrayMinimum' - a constante não pode ser modificada e 'ArrayMaximum' - a constante não pode ser modificada, bem como '=' - uso de operação ilegal ao atribuir a variável PrevClose no código a seguir:

ulong copied = CopyTicksRange(Symbol(), ticks, COPY_TICKS_INFO, t0, t1); 
ArrayResize(ticks, copied, 100000);
double PrevClose = ticks[copied-1]; // Получаем последний элемент массива как значение PrevClose
double highestHigh = ArrayMaximum(ticks, 0, copied - 1); // Находим максимальное значение в массиве ticks
double lowestLow = ArrayMinimum(ticks, 0, copied - 1); // Находим минимальное значение в массиве ticks
 
maxvoronin74 'ArrayMinimum' - a constante não pode ser modificada e 'ArrayMaximum' - a constante não pode ser modificada, bem como '=' - uso de operação ilegal ao atribuir a variável PrevClose no código a seguir:

"Find the maximum value in the ticks array"- o valor máximo do que estamos encontrando?

ticks[copied-1].bid ou ticks[copied-1].flags

Brincadeira)))))


Provavelmente você confundiu CopyTicks com CopyRates, embora lá você também tenha uma matriz de estruturas e especifique qual elemento da estrutura você precisa.

double PrevClose = rates[copied-1].close;

Você tem uma linha extra em seu código.

ArrayResize(ticks, copied, 100000);
Você não precisa dela porque CopyTicks e CopyRates, ao copiar, distribuem o tamanho da matriz por si só.