[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 124

 
evillive:

Hmm, bem, ou isto... Mas eu já me vi com essa coruja e tudo está bem, nada "desaparece" em lugar algum, as ordens abertas, em geral se comportam como uma EA )

Muito obrigado, muito obrigado, é interessante! Isso significa que meu computador está com falhas!
[Excluído]  
Dimka-novitsek:

Muito obrigado, muito obrigado, interessante! Então meu computador está com problemas!
Você já tentou "reinicializá-lo"? ))
 
Olá a todos! Pessoal, alguém pode ter visto na rede, precisa de um indicador parabólico SAR que possa ser sobreposto a outros induzidos? ou quem pode ser abordado para criar um... obrigado de antemão
 
smshev:
Você já tentou "reinicializá-lo"? ))

- O quê? Desculpe, eu não entendo.
[Excluído]  
Dimka-novitsek:

- O quê? Desculpe, eu não entendo.
o software gosta de ser reinicializado com mais freqüência ))
[Deleted]  

Tarde )))) Escrevi minha primeira EA, mas acabou se tornando problemática))))))) Esta EA coloca apenas ordens de venda, embora as condições de compra sejam muito simples e pareça não vê-las.

if (ZZ2< pp1 ) { OpenPosition ("", OP_BUY, Lots_New,SLB,TPB, mn);}

if (pp1 < ZZ2) {OpenPosition("", OP_SELL, Lots_New, SLS,TPS, mn);}

Se alguém pudesse dar uma olhada no código, eu ficaria muito grato))))

Arquivos anexados:
[Deleted]  
PS: Bem, se você quiser acrescentar uma parada móvel e ter lucro, seria bom ter uma parada móvel e ter lucro.(tentei configurá-lo) quando SL ou TP acionaram a EA deve continuar a funcionar corretamente em TS (abrir e fechar pedidos por estocástico, pedido aberto deve ser apenas um)
Muito obrigado com antecedência.

PS. e se você desejar, seria bom adicionar trailing stop e zero perda=)

Arquivos anexados:
2.mq4  10 kb
 
Lisi4ka330:

Boa tarde ))) Escrevi minha primeira EA, mas acabou se tornando problemática))))))) Esta EA coloca apenas ordens de venda, embora a condição de compra seja a mais fácil e parece não vê-las.

if (ZZ2< pp1 ) { OpenPosition ("", OP_BUY, Lots_New,SLB,TPB, mn);}

if (pp1 < ZZ2) {OpenPosition("", OP_SELL, Lots_New, SLS,TPS, mn);}

Se alguém pudesse dar uma olhada no código, eu ficaria muito grato))))


Num relance rápido tudo está bem... como é com o cálculo do lote, ele passa (entendo que deve haver uma mensagem para o log) ? Experimente um fixo para começar.

E em geral, verifique assim a execução da condição comercial:

Print(DoubleToStr(pp1,Digits));
Print(DoubleToStr(ZZ2,Digits));

if (ZZ2< pp1 )
    {OpenPosition ("", OP_BUY, Lots_New,SLB ,TPB , mn);}

if (pp1 < ZZ2)
    {OpenPosition("", OP_SELL, Lots_New, SLS,TPS , mn);}
 
Lisi4ka330:

Boa tarde )))) Escrevi minha primeira EA, mas acabou se tornando problemática))))))) Esta EA coloca apenas ordens de venda, embora as condições de compra sejam muito simples e a EA pareça não vê-las.

if (ZZ2< pp1 ) { OpenPosition ("", OP_BUY, Lots_New,SLB,TPB, mn);}

if (pp1 < ZZ2) {OpenPosition("", OP_SELL, Lots_New, SLS,TPS, mn);}

Se alguém der uma olhada no código, eu ficaria muito grato))))


Estranho, em teoria não deveria ver a venda rápida porque você usa o pa em vez do pb.

double TPS= NormalizeDouble(pa-tp*po, Dígitos);// calcular Tp para venda
double SLS= NormalizeDouble(pa+sl*po, Dígitos);// calcular SL para venda

 

Existe um algoritmo de recálculo desse tipo:

   int ic=IndicatorCounted();
   if(Bars-ic-1>1) {ic=reinit();}
   int limit=Bars-ic-1; //BarsPrev=Bars; // кол-во пересчетов
   if(History!=0 && limit>History) limit=History-1; // кол-во пересчетов по истории

   for(int i=limit; i>=1; i--) // цикл по непосчитанным и предпоследнему барам
     {
      int n;
      int iShift=i+Shift;
      
      if (i==0)
      Input[i]=iClose(Symb, Period(), iShift);
      else
      Input[i]=(iHigh(Symb, Period(), iShift)+iLow(Symb, Period(), iShift))/2;
       }

Pelo que entendi, conta todas as barras, exceto a última.

Você pode me dizer como fazer para recalcular a última barra em i=0 (já existe uma condição para isso no laço)?