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 966

 
evillive:
se houver erros durante a compilação, ela não aparecerá.
Não, não há erros!!!!
 
PozitiF:

Obrigado pela resposta. Eu mesmo encontrei (o Googling sabe quase tudo) tal solução:

      int       timeframe;          // временной период графика
      double    or_op_time;         // время открытия последнего ордера
      int MaxBar = 3;               // через сколько свечей закрыть ордер
      or_op_time = Last_OrderOpTime(asset);
      
                          //  КРИТЕРИЙ ЗАКРЫТИЯ БАЙ
       
       if(!ClsB && OrderType()==OP_BUY && iBarShift( asset, timeframe, or_op_time) > MaxBar)    ClsB = true;

Parece funcionar claramente, mas eu ainda não sou bom com variáveis estáticas.

E uma pergunta relacionada - alguém explica a um novato a lógica do seguinte fragmento:

if(lastsignal==Signal)Signal=0; 
else                            
lastsignal=Signal;              

E enquanto à variável local é atribuído valores 1 ou 2 por condições, ao último sinal global não são atribuídos valores em nenhum lugar.

E outra coisa - eu não entendo como uma variável com um valor ainda não definido pode ser comparada a qualquer coisa?

   if(timeCheckSignal!=Time[0])        //МОЙ КОММЕНТ: если время открытия позиции (КОТОРОЕ ЕЩЕ НЕ ОПРЕДЕЛЕНО)...
                                       //...не равно времени открытия текущего бара, то...

Ajude-me a entender. Obrigado.

ZS: Mas o mais interessante, e para mim não é nada compreensível, é o comentário do desenvolvedor do modelo a este fragmento:

//+------------------------------------------------------------------+
// Если время торговли не истекло и мы не открывали позицию на этом баре: 
//+------------------------------------------------------------------+
 
Eu não sei como posso organizar a comparação de barras em um loop. Será um loop dentro de um loop.
int start()
  {

   int i,counted_bars=IndicatorCounted();
   int limit=Bars-1;
   if(limit>1) limit=Bars-N;
   if(limit==0) limit=counted_bars;
   if(IsTesting() || IsVisualMode()) limit=N+10;
   for(i=limit;i>=0;i--)
     {
     if(Close[i]>Open[i] && High[i]>High[i+1] && Low[i]>Low[i+1] && High[i+1]>High[i+2] && Low[i+1]>Low[i+2] && High[i+2]>High[i+3] && Low[i+2]>Low[i+3] && High[i+3]>High[i+4] && Low[i+3]>Low[i+4]) buybars++;
      //-------

     if(Open[i]>Close[i] && High[i]<High[i+1] && Low[i]<Low[i+1] && High[i+1]<High[i+2] && Low[i+1]<Low[i+2] && High[i+2]<High[i+3] && Low[i+2]<Low[i+3] && High[i+3]<High[i+4] && Low[i+3]<Low[i+4]) buybars--;

      //-------
      BuyBuffer[i]=buybars;
      }
   return(0);
  }
 
Por favor, me avise, estou escrevendo um Expert Advisor, compilando-o, sem erros, mas ele não está em nenhum lugar no Navegador, há apenas um arquivo mq4 no MetaEditor. Eu tentei em terminais diferentes, mesmo assim, mesmo que tudo estivesse bem antes.
 
antonovff:
Por favor, me avise, estou escrevendo um Expert Advisor, compilando-o, sem erros, mas ele não se encontra em nenhum lugar no navegador, há apenas um arquivo mq4 no MetaEditor. Eu tentei em terminais diferentes, mas tudo estava bem antes.
Também perdi minha EA uma vez, após a compilação, descobri que corrompi acidentalmente o diretório ao criar o Eperts\MoySovetnik e ele foi colocado em não me lembro onde, em minha opinião, a pasta raiz.
 

Saudações

O MT4 tem um recurso ou função) Enviar e-mail do terminal interno para ou sms, (por exemplo, para receber mensagens de reinicialização do servidor, etc.)?

 
PozitiF:
Também perdi minha EA após a compilação, descobri que apaguei acidentalmente o diretório ao criar o Eperts\MoySovetnik e ele foi colocado na pasta raiz durante a compilação, não me lembro onde.
Eu já baixei um novo terminal e criei um EA com uma variável declarada em seu código. Este EA aparece apenas no navegador MetaEditor no fundo, depois de todos os diretórios, como um arquivo separado como mq4 e isso é tudo, não está em nenhum outro lugar, não posso anexá-lo à carta.
 
Tenho testado minha mais simples EA não-sindicadora nos últimos três meses, desde setembro deste ano, e algo não é bom para mim: é possível que com um volume fixo de 0,1 lote um lucro de três meses seja de 29 112 centavos e nem um único negócio perdido? Qual é o senão, alguém sabe?
 
rapid_minus:
Tenho testado minha mais simples EA não-sindicadora nos últimos três meses, desde setembro deste ano, e algo não é bom para mim: é possível que com um volume fixo de 0,1 lote um lucro de três meses seja de 29 112 centavos e nem um único negócio perdido? Qual é o senão, alguém sabe?
Há muitas nuances nos testes, começando com o número de barras na história, arquivo de citações, etc. Três meses não é suficiente, pelo menos um ano. Se você não souber muito sobre isso, há boas fontes no YouTube.
 
antonovff:
Eu já baixei um novo terminal, criei um EA no código do qual uma variável é declarada, a compilação não dá erros. Este EA aparece apenas no MetaEditor, no fundo, depois de todos os diretórios, como um arquivo separado como mq4 e isso é tudo, não é mostrado em nenhum outro lugar e eu não posso anexá-lo ao gráfico.

É por isso que ele aparece na parte inferior, porque você está apagando o nome do diretório. Não apague a palavra "Especialistas" ao escrever um novo nome.