Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 893

 
Bem, agora o fórum também está com problemas: o post não está completo, mas não aceita edições...
 
tuner:
Você poderia, por exemplo, mudar o cronograma de forma programática e depois mudar de volta se necessário.
Acho que não é assim que as variáveis são reiniciadas.
 
tuner:
Ou tente salvar o modelo e depois carregá-lo de volta em
Será que isso é possível?
 

Eu não sei o que...

Escrevi três versões do Expert Advisor, todas compiladas sem erros, mas no testador algo estranho acontece - no M5 abre uma posição e não a fecha, mas no M1 abre em cada tic e fecha na próxima, independentemente das condições prescritas.

 
abeiks:
Acho que não é assim que as variáveis são reiniciadas.
As variáveis externas são redefinidas porque o OnInit() é chamado quando o prazo é alterado
 
abeiks:
Será que isso é possível?
Provavelmente... há funções incorporadas no MQl4 relacionadas a modelos de salvamento e carregamento: ChartSaveTemplate, ChartApplyTemplate
 
rapid_minus:

Eu não sei o que...

Escrevi três versões do EA, todas compiladas sem erros, mas no testador acontece algo estranho - no M5 abre uma posição e não a fecha, mas no M1 abre em cada tic e fecha na próxima, independentemente das condições prescritas.

Diga-me, por favor, se você escrever uma função multiplicadora

double f(double a1, double a2)
{
 return(a1*a2+1);
}

Esta função resultará alguma vez em 2*2=4 ou não?

Quero dizer que nenhum compilador verifica a lógica do código. E seus Conselheiros Especialistas estão cheios de erros lógicos.

 
AlexeyVik:

Diga-me, por favor, se você escrever uma função de multiplicação

Esta função resultará alguma vez em 2*2=4 ou não?

Quero dizer, nenhum compilador verifica a lógica do código. E seus Conselheiros Especialistas estão cheios de erros lógicos.

Só uma coisa eu não entendo - quais exatamente?

ZZY: e qual erro pode se comportar de maneira diferente em diferentes TFs?

ZZZY: por exemplo, onde está o erro lógico aqui:

void CritClose() 
{ 
  for (int ord = OrdersTotal()-1 ; ord >= 0; ord--) 
  { 
    if(!OrderSelect(ord,SELECT_BY_POS,MODE_TRADES))Comment("Не найдено открытых ордеров. Ошибка #",GetLastError());
     
    if (OrderSymbol() == Symbol()) 
    {if ((OrderMagicNumber()==10011 || OrderMagicNumber()==10033 || OrderMagicNumber()==10133)&&(((условие А) && (условие Б)&&(условие В)) || ((условие Г) && (условие Д)&&(условие Е))))      
          {        
          ord_close=OrderClose(OrderTicket(),0.1, Bid, 0, Red);          
            if (ord_close = false)          
               { Comment("Закрытие позиции БАЙ завершилось с ошибкой #",GetLastError()); }            
               else  { Ord=0; }
          }
      else if (... и т.д....
 

Ow! Guru! Você quebrou seu dedo na palma da mão?

 
rapid_minus:

Eu entendo. a única coisa que não entendo é quais?

ZS: e qual erro pode se comportar de maneira diferente em diferentes TFs?

ZZY: por exemplo, onde está o erro lógico aqui:

O erro lógico aqui é que a estrutura do programa está errada. Após o comentário "Não encontrado ... "o código continuará a ser executado como se tivesse sido encontrado. Vladimir, você vai ler um livro didático?
Razão: