[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 44

 
yar4i писал(а) >>

Por favor, informe como curar o erro que ocorre durante a otimização da EA: "Foram feitos 1 passes durante a otimização, 1 resultado foi descartado como insignificante".

Desmarque "Pular resultados inúteis" na guia "Resultados da otimização".

 

Para o Integer

Isso é algo para o camarada se lembrar para sempre? :-)

 

Para o Integer

Nada sequer apareceu nos meus resultados de otimização :(

Eu usei o simples Expert Advisor deste artigo Meu primeiro "graal".

 
yar4i >> :

Para o Integer

Nada mesmo apareceu nos meus resultados de otimização :(

Usei uma simples EA deste artigo Meu primeiro "graal".

Uma simples corrida faz acordos?

 

Olá a todos!

Guru-san, por favor informe - como posso selecionar a última ordem fechada usando a função OrderSelect() ou OrderHistoryTotal()?

 

Ajuda por favor!!!!!!!!

Ao compilar o Expert Advisor recebo o erro 'MagicNumber' - variável não definida C:\Program Files\MetaTrader - Alpari`experts\expertCCI_RSI.mq4 (40, 27).

Já tentei de tudo, não funciona em absoluto.......

//+------------------------------------------------------------------+
//|                                                expertCCI_RSI.mq4 |
//|                      Copyright © 2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//---- input parameters
extern int       pCCI=14;
extern int       pRSI=14;
extern double    Lots=0.1;
extern int       MagicNamber=50001;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
  
bool CheckOrders(int Type)
{
 bool Result= True;
 for(int i=0; i<OrdersTotal(); i++)
  if(OrderSelect( i, SELECT_BY_POS))
   if(OrderMagicNumber()== MagicNumber && OrderSymbol() == Symbol())
      if(OrderType()== Type)
        {
         if( Type==OP_BUY)
           if(!OrderClose(OrderTicket(),OrderLots(),Bid,0))
             Result= False;
         if( Type==OP_SELL)
           if(!OrderClose(OrderTicket(),OrderLots(),Ask,0))
             Result= False;
         } 
        else Result= False;
 return( Result); 
}
  
  
  
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
    double cci_0=iCCI(NULL,0, pCCI,1,0);
    double cci_1=iCCI(NULL,0, pCCI,1,1);
    double rsi_0=iRSI(NULL,0, pRSI,1,0);
    double rsi_1=iRSI(NULL,0, pRSI,1,1);
    
    if(( cci_0 < cci_1 && cci_0 > 100) && ( rsi_0 < rsi_1 && rsi_0 > 70))
     if( CheckOrders(OP_SELL))
      {
       if(!OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, 0, 0, NULL, MagicNumber))
         Print("Не открыт ордер Buy. Ошибка №", GetLastError()); 
       }
       
    if(( cci_0 > cci_1 && cci_0 < -100) && ( rsi_0 > rsi_1 && rsi_0 < 30))
     if( CheckOrders(OP_BUY))
      {
       if(!OrderSend(Symbol(), OP_SELL, Lots, Bid, 3, 0, 0, NULL, MagicNumber))
         Print("Не открыт ордер Sell. Ошибка №", GetLastError()); 
       }

//----
   return(0);
  }
//+------------------------------------------------------------------+
 
extern int       MagicNa mber=50001;

 
xruss писал(а) >>

Olá a todos!

Guru, por favor informe - como posso selecionar o último pedido fechado com OrderSelect() ou OrderHistoryTotal()?

// ищем самый последний закрытый ордер
for( i=OrdersHistoryTotal(); i>=0; i--){
  if(OrderSelect( i, SELECT_BY_POS, MODE_HISTORY)){
    if(OrderSymbol()==Symbol()){
      if(OrderMagicNumber()== MagicNumber){
        if(OrderCloseTime()!=0){
          if(OrderCloseTime()> time){
            time=OrderCloseTime();
            tikcet=OrderTicket();
            profit=OrderProfit();
          }
        }
      }
    }
  }
}
 

Para xrust:

))

Se eu não usar um número mágico, o que devo escrever em seu lugar?

 
granit77 >> :

Faz negócios em uma simples corrida?

Não foram feitas trocas, houve um problema com a configuração de paradas, porque o erro 130 está aparecendo.

Eu procurei e finalmente descobri que a parada estava definida para 100, eu a defini para 1000 - tudo está bem, mas a otimização ainda não está funcionando :(