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 406

 
bergkamp.:
aqui está um exemplo ... se você apenas colocar o sono no final do código, como funcionará ?

Se você não se importa que a função de partida não comece após 30 segundos (e portanto a EA não realizará nenhuma ação durante este tempo), então, por favor, coloque o sono.

 

O Expert Advisor está testando bem no testador em modo visual, mas na otimização é completamente lento, embora haja apenas dois parâmetros para otimização e um pequeno período de tempo, qual é a razão para isso?

 
vadynik:

O Expert Advisor está testando bem no testador em modo visual, mas na otimização é completamente lento, embora haja apenas dois parâmetros para otimização e um pequeno período de tempo, qual é a razão para isso?

A otimização leva muito mais tempo do que uma única execução de teste, mesmo em modo visual. Tente aumentar a etapa de mudanças de parâmetros. Ou mudar para testes a preços de abertura.
 
khorosh:

Se você não se importa que a função de início não comece depois que a função for iniciada por 30 segundos (e, portanto, a EA não tomará nenhuma ação durante esse tempo), então, por favor, coloque o sono.

portanto, após 30 seg. a função de partida e todas as funções sequenciais serão reiniciadas com a chegada de um tick ? e voltarão a dormir por 30 seg. ... estou errado ? e o especialista fará todas as suas ações no mesmo tick ?
 
bergkamp.:
portanto, após 30 seg. a função de partida e todas as funções sequenciais recomeçarão com a chegada de um único tique ? e voltarão a dormir por 30 seg... estou errado?
Sim, enquanto o sono está funcionando, a função start() não termina e, portanto, não reinicia.
 
vadynik:


O otimista pode ser desacelerado por objetos gráficos?

E por que as etiquetas ainda aparecem se o CLR_NONE está definido?

Não há gráficos quando se trata de otimizar. Pergunta: "Onde, então, as marcas aparecem???"
 
vadynik:


O otimista pode ser desacelerado por objetos gráficos?

E por que se CLR_NONE estiver definido, as etiquetas ainda aparecem?


Parece que se objetos gráficos são criados em uma EA, a otimização de tal EA é de todo impossível. No entanto, não posso dizer com certeza. Pelo menos, meu Expert Advisor, utilizando linhas de tendência, não está otimizado. Não posso dizer nada sobre rótulos, preciso ter o código completo.
 
khorosh:
Sim, enquanto o sono estiver em funcionamento, o início() não termina e, portanto, não reinicia.
é necessário de qualquer forma() ?
 
bergkamp.:
é necessário um start-up de qualquer forma ?
Depende de você se precisa ou não dele para o trabalho de especialista, não consigo ver o código do seu especialista. Se for um pouco de pipsqueak com alvos de centavos, talvez seja necessário.
 

Há uma função para fechar todas as ordens, ela fecha a partir da última aberta, por favor, informe como refazê-la para que comece a fechar a partir da primeira aberta e termine com a última.


//+------------------------------------------------------------------+
//|                 Закрыть все ордера                               |
//+------------------------------------------------------------------+


double ClossAllOrders ()

{
  int total = OrdersTotal();
  for(int i=total-1;i>=0;i--)
  {
    OrderSelect(i, SELECT_BY_POS);
    int type   = OrderType();

    bool result = false;
    
    switch(type)
    {
      //Close opened long positions
      case OP_BUY       : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), Slippage, Lime );
                          break;
      
      //Close opened short positions
      case OP_SELL      : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), Slippage, Lime );
                          break;

      //Close pending orders
      case OP_BUYLIMIT  :
      case OP_BUYSTOP   :
      case OP_SELLLIMIT :
      case OP_SELLSTOP  : result = OrderDelete( OrderTicket() );
    }
    
    if(result == false)
    {
      Print("Order " , OrderTicket() , " failed to close. Error:" , GetLastError() );
      Sleep(500);
    }  
  }
}

// End