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

 
smart:


Você pode me dizer, quando um EA vem com um conjunto, em que pasta eu devo colocá-lo? Obrigado.


C:Arquivos de programa MT4 de especialistas
 
orb:

Boa tarde!

Você pode ajudar, lendo de um arquivo, há uma linha (e na verdade falando será mais, mas não importa), fica preso, como se não visse o fim do arquivo...

Corrigido parece, agora outro problema ao ler de um arquivo, os valores na matriz são 0, suspeito que as casas decimais estejam erradas. Estou anexando o código e uma linha do arquivo para deixar claro do que estou falando. Isto é o que você obtém ao testar através da impressão:

Histxmas[0][0]=0; Histxmas[0][1]=0; Histxmas[0][2]=0; Histxmas[0][3]=0.

Código:

 int qq=0;
 while (FileIsEnding(h3)==false)
 {
  Histxmas[qq][0]=StrToDouble(FileReadString(h3));
  Print("Histxmas[",qq,"][",0,"]=",Histxmas[qq][0]);
  Histxmas[qq][1]=StrToDouble(FileReadString(h3));
  Print("Histxmas[",qq,"][",1,"]=",Histxmas[qq][1]);
  Histxmas[qq][3]=StrToDouble(FileReadString(h3));
  Print("Histxmas[",qq,"][",2,"]=",Histxmas[qq][2]);
  Histxmas[qq][4]=StrToDouble(FileReadString(h3));
  Print("Histxmas[",qq,"][",3,"]=",Histxmas[qq][3]);
  qq++;
}

Arquivo:

 
orb:

Resolvi, agora tenho outro problema ao ler do arquivo, os valores no array são 0, suspeito que o número de casas decimais está errado. Estou anexando o código e uma linha do arquivo para deixar claro do que estou falando. Isto é o que você obtém ao testar através da impressão:

Histxmas[0][0]=0; Histxmas[0][1]=0; Histxmas[0][2]=0; Histxmas[0][3]=0.

Código:

Arquivo:


Talvez o problema seja com os delimitadores. Verifique int FileOpen( string filename, int mode, int delimiter=';') operador e seu arquivo.
 

Boa tarde.

Já me arrebentava o cérebro.

Por que as negociações em demonstração não se abrem com este código no A...ri: tudo está bem no testador.

   if(BSo==OP_BUY && NeedOrder1 && !b1)
   {
        urb=NormalizeDouble(Ask,Digits);
        tp=NormalizeDouble(urb+TakeProfit*Point,Digits);
        sll=NormalizeDouble(niz-tr,Digits);
        if(Ask-sll<STP*Point) {Print ("Стоплосс слишком близко к цене "+sll); Sleep(20000);return(0);}

    

      tick=OrderSend(Symbol(),OP_BUY,Lot,urb,200,sll,tp,CMM,MAGIC+1,0,Red);
      if(tick>0)
      {
         ticknum=0;
         while(ticknum<90 && !OrderSelect(tick,SELECT_BY_TICKET))
         {
            ticknum++; Sleep(2000);
         }
      }

   }
 
Stells:

Boa tarde.

Já me arrebentava o cérebro.

Por que as negociações em demonstração não se abrem com este código no A...ri: tudo está bem no testador.


que opções você já tentou?
 
sergeev:

E que opções você já tentou?


Eu tentei de tudo, até dei a um amigo.

Ele tem a mesma coisa, não negocia na demonstração.

Eu inseri um sinal em paralelo, para desenhar uma flecha.

A seta desenha, a ordem não abre. :((

 
e que opções você já tentou abrir um pedido?
 
sergeev:
E que variantes de parâmetros de abertura de pedidos você já tentou?


Assim mesmo.

Coloquei imediatamente um takeprofit e um stoploss.

Claro que você pode abrir um pedido e depois modificá-lo, mas sempre funcionou no A...ri.

 

Rapazes, eu fiz um contador aqui...ele determina o valor mínimo para um n período...isso é correto ou não?

 for(int i=0; i<N; i++){
    A=low[i];
    if (min<A)   {  min=A;   }
    }
 

Rapazes, eu fiz um contador aqui...ele determina o valor mínimo para um n período...isso é correto ou não?

 for(int i=0; i<N; i++){
    A=low[i];
    if (min<A)   {  min=A;   }
    }
Razão: