[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 371

 
avatara >> :

>> et quelle est la révision de la plateforme ?

- >> Construire 225

 
Vinin >> :

Le témoin lumineux devrait probablement être jeté. Ou demandez au Père Noël. C'est le réveillon du Nouvel An.


Eh bien, qu'est-ce qui aurait pu se passer ? ! Tempêtes magnétiques, pression ou autre... Rien n'a changé, et puis soudain, le terminal se fige.
 
Fosfalugel писал(а) >>

Eh bien, qu'est-ce qui aurait pu se passer ? ! Tempêtes magnétiques, pression ou autre... Rien n'a changé, et puis soudain le terminal se fige.

Pour ce faire, vous devez au moins examiner le code de l'indicateur. Bien que ce ne soit pas forcément le cas.

 
Fosfalugel >> :
Je travaillais avec un indicateur, tout allait bien, puis quand j'ai changé de période, le terminal a commencé à se bloquer, j'ai réinstallé windup, mais ça continue. Pourquoi(((((((((((((


Veuillez me donner le code. Voyons ce qui peut clocher ici.
 

Bonjour !

S'il vous plaît, aidez-moi, si vous n'êtes pas un problème.

J'ai besoin d'un EA qui place des ordres BUYSTOP SELLSTOP en attente, au lieu d'ouvrir des ordres par le signal.

Et quand l'oder se déclenche, il supprime les predstavlenny qui n'ont pas fonctionné.

Je voudrais vous demander de revoir ce code, il n'a pas été écrit par des professionnels.

Je voudrais vous demander de revoir ce code et de m'expliquer pourquoi je devrais le faire (je ne sais pas cuisiner, je ne sais tout simplement pas cuisiner).

Le code lui-même ;

extern double lots=0.01;
extern double slippage=3;
extern int TP=5000;
extern int SL=5000;
extern int OrdersCount=1;  // Количество сделок, открываемых одновременно
extern int TrailingStop=0; // Коридор для стоп-лосса
extern int CCIPeriod=12;
extern bool AllowOpenBuy=true;
extern bool AllowOpenSell=true;

//extern int SL=1000;
int current, previous;

int ticket=0;

int BuyTickets[999];
int SellTickets[999];


int init()
{double Up, Dn;

      Up=iCustom(NULL,0, IndicatorName,0, Offset);
      Dn=iCustom(NULL,0, IndicatorName,1, Offset);
      if ( Up!=0) previous=1;
      if ( Dn!=0) previous=-1;

}

int start()
  {   
      double Up, Dn, cup, cdn, cci;
      Up=iCustom(NULL,0, IndicatorName,0, Offset);
      Dn=iCustom(NULL,0, IndicatorName,1, Offset);

      cup=iCustom(NULL,0, IndicatorName,0,0);
      cdn=iCustom(NULL,0, IndicatorName,1,0);
      
      
      //if (NewBar()==false) return (-1);
      //return (0);/*
      
      //cci=iCCI(NULL,0,CCIPeriod,MODE_CLOSE,0);
      
      if ( Up!=0) current=1;
      if ( Dn!=0) current=-1;
      
      TrailingStopControl();  // Выставление стоповых уровней
      
      if ( current!= previous){
      if ( current==1)
            {
                  OpenBuyOrders();
            }
      
      if ( current==-1)
            {
                  OpenSellOrders();
            }           
            previous= current;
            }
            
   return(0);
  }
  
void  TrailingStopControl()
{
  for(int cnt=0; cnt< OrdersCount; cnt++)
   {
         if (!OrderSelect( BuyTickets[ cnt], SELECT_BY_TICKET)) return(1);
      if(OrderSymbol()==Symbol())
      {
      if(OrderType()==OP_BUY)
         {
         if( TrailingStop>0
         && Bid-OrderOpenPrice()>Point* TrailingStop
         && OrderStopLoss()<Bid-Point* TrailingStop)
            {
            OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point* TrailingStop,OrderTakeProfit(),0);
            return(0);
            }
         }
      if(OrderType()==OP_SELL)
         {
         if( TrailingStop>0
         && OrderOpenPrice()-Ask>Point* TrailingStop
         && (OrderStopLoss()>Ask+Point* TrailingStop || OrderStopLoss()==0))
            {
            OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point* TrailingStop,OrderTakeProfit(),0);
            return(0);
            }
         }
      }

         if (!OrderSelect( SellTickets[ cnt], SELECT_BY_TICKET)) return(1);
   if(OrderSymbol()==Symbol())
      {
      if(OrderType()==OP_BUY)
         {
         if( TrailingStop>0
         && Bid-OrderOpenPrice()>Point* TrailingStop
         && OrderStopLoss()<Bid-Point* TrailingStop)
            {
            OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point* TrailingStop,OrderTakeProfit(),0);
            return(0);
            }
         }
      if(OrderType()==OP_SELL)
         {
         if( TrailingStop>0
         && OrderOpenPrice()-Ask>Point* TrailingStop
         && (OrderStopLoss()>Ask+Point* TrailingStop || OrderStopLoss()==0))
            {
            OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point* TrailingStop,OrderTakeProfit(),0);
            return(0);
            }
         }
      }
             
   }


}

bool NewBar()
  {
   static datetime dt=0;
   if (Time[0]!= dt)
     {
      dt=Time[0];
      return(true);
     }
   return(false);
  }
  
  
  void OpenBuyOrders()
  {
    for (int i=0; i< OrdersCount; i++)  
      OrderClose( SellTickets[ i], lots,Ask, slippage,Red);


   if (! AllowOpenBuy) return(1);
    for ( i=0; i< OrdersCount; i++)  
      BuyTickets[ i]=OrderSend(Symbol(),OP_BUY, lots,Ask, slippage,Ask-Point* SL,Ask+Point* TP,"",0,0,Green);

  }


  void OpenSellOrders()
  {
    for (int i=0; i< OrdersCount; i++)  
      OrderClose( BuyTickets[ i], lots,Bid, slippage,Red);

   if (! AllowOpenSell) return(1);
    for ( i=0; i< OrdersCount; i++)  
      SellTickets[ i]=OrderSend(Symbol(),OP_SELL, lots,Bid, slippage,Bid+Point* SL,Bid-Point* TP,"",0,0,Green);
  }
 
Bonne année, camarades ! !!
J'ai obtenu l'indicateur XMA de Crunch http://https://www.mql5.com/en/code/9123.
J'ai essayé de faire avec
xxma = iCustom(NULL,15, "Xma",100,7,1,0,1,1,0) ;
Il renvoie 0.
Qu'est-ce qu'il y a ? La tourelle est là où elle doit être.
 
spm130275 писал(а) >>
Bonne année, camarades ! !!
J'ai un indicateur XMA de Crunch http://https://www.mql5.com/en/code/9123.
J'ai essayé de faire avec
xxma = iCustom(NULL,15, "Xma",100,7,1,0,1,1,0) ;
Il renvoie 0.
Qu'est-ce qu'il y a ? Indy est là où il devrait être.

xxma = iCustom(NULL,15, "Xma",100,7,1,0,1,0,0) ;

 

Merci !

 

Veuillez me conseiller.

Supposons que nous ayons des résultats d'optimisation.

Est-il possible de séparer les mouches des côtelettes par le critère des transactions rentables (% du total) ?

 

Je voudrais interdire à l'EA de trader avant les nouvelles importantes, mais pas manuellement et automatiquement (et sans se référer aux sites d'information).

- Quels sont les signes qui pourraient informer de manière plus ou moins fiable sur d'éventuels communiqués de presse? (élargissement significatif de l'écart, fortes fluctuations de prix sur de courtes périodes), ...autre chose ?