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

 
Andrey Kaunov #:

Colegas, estou perplexo. Preciso de alguma ajuda.

Eu tenho um indicador de funcionamento normal, fiz a partir de dois, mas não é essa a questão. Quero ocultar o primeiro bloco de variáveis externas, mas quando retiro qualquer entrada neste bloco após a compilação, o terminal com o indicador instalado no gráfico fica pendurado.

O fragmento de código da linha 76 a 86

Também fica pendurado se eu mover todo este bloco mais baixo que outras variáveis e mesmo se eu mover as variáveis mais externas para cima ou para baixo:

Se eu mudar a ordem das variáveis dentro do bloco, ele se compila normalmente. O terminal não congela.

Eu não entendo o que está acontecendo. Talvez eu esteja perdendo algo óbvio, meu olho está borrado (((( Estou anexando o código

Substituir a entrada por const

e regozije-se!

 
Maxim Kuznetsov #:

substituir a entrada por const

e regozije-se!

Não ajuda, ainda pendura o terminal ao adicionar um indicador ao gráfico.

 
Andrey Kaunov #:

Não ajuda, o terminal ainda fica pendurado quando se adiciona um indicador ao gráfico.

Ele compila?

Então se o parâmetro tem um atributo de entrada, ele funciona, mas se const, ele pendura ?

não existe tal milagre

 
Andrey Kaunov #:

É um shaitan, eu não entendo nada. Talvez eu não veja algo óbvio, meu olho está embaçado (((( Eu anexei o código

Da linha 379 em diante você tem recorrência ao indicador (chamada propriamente dita). Há parâmetros lá e você precisa combiná-los também após alterar a ordem dos parâmetros.

 
Nikolay Ivanov #:

Da linha 379 em diante, você tem recorrência ao indicador (chamando a si mesmo). Há parâmetros lá e você precisa ajustá-los também após alterar a ordem dos parâmetros.

Muito obrigado, Nikolay.

Sim, eu deveria ter cavado mais fundo. Estou preso aos parâmetros.

 

Você pode me dizer por que o laço interno não funciona neste ciclo?

for (int Try=0; Try<1;) 

  {  Print("цикл 1");

      for (int Try2=0; Try2<1;) 

        {  Print("цикл 2"); Try=1; Try2=1;
...


O "ciclo 2" não é impresso. Somente "ciclo 1".

 
Quem sabe como fixar o tamanho do OBJ_RECTANGLE_LABEL para que ele seja o mesmo em monitores diferentes? Eu fiz um pequeno painel do tamanho do painel OneClickTrading embutido (em pixels), mas em monitores diferentes a mina muda de tamanho, mas o painel embutido não muda.
 
Ivan Butko #:

Você pode me dizer por que o laço interno não funciona neste ciclo?

for (int Try=0; Try<1;) 

  {  Print("цикл 1");

      for (int Try2=0; Try2<1;) 

        {  Print("цикл 2"); Try=1; Try2=1;
...


O "ciclo 2" não é impresso. Somente "ciclo 1

tudo imprime, alerta.

void OnStart()
  {
//---
for (int Try=0; Try<1;) 

  { Alert("цикл 1");

      for (int Try2=0; Try2<1;) 

        {  Alert("цикл 2"); Try=1; Try2=1;
        }}
   
  }
//+------------------------------------------------------------------+

2022.03.20 10:28:29.373 Roteiro qqq EURUSD,M1: removido
2022.03.20 10:28:29.373 qqq EURUSD,M1: razão uninit 0
2022.03.20 10:28:29.373 qqq EURUSD,M1: Alerta: Ciclo 2
2022.03.20 10:28:29.357 qqq EURUSD,M1: Alerta: Ciclo 1
2022.03.20 10:28:29.326 qqq EURUSD,M1: inicializado

 
Valeriy Yastremskiy #:

tudo imprime, alertas

2022.03.20 10:28:29.373 Roteiro qqq EURUSD,M1: removido
2022.03.20 10:28:29.373 qqq EURUSD,M1: razão uninit 0
2022.03.20 10:28:29.373 qqq EURUSD,M1: Alerta: Ciclo 2
2022.03.20 10:28:29.357 qqq EURUSD,M1: Alerta: Ciclo 1
2022.03.20 10:28:29.326 qqq EURUSD,M1: inicializado

Obrigado pelo cheque! Eu vou olhar para

 
EVGENII SHELIPOV #:

Boa tarde!!!!

Ajude-me a mudar uma função que calcula apenas as perdas de ordens não lucrativas em uma grade de ordens

Precisamos mudar a função que calcula apenas o tamanho mínimo do lote a partir de cada pedido na rede de pedidos. Lote mínimo=0,01

Obrigado!!!!

Descreva mais claramente o que você quer
Razão: