Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 331

 
Sepulca:

Commençons par le principal : il n'est pas vraiment judicieux de passer des commandes à partir de zéro. Il vaut mieux commencer par le dernier.

Ainsi, nous ne nous retrouvons pas dans la situation où nous avons fermé/supprimé la commande zéro et qu'il y a d'autres commandes sur celle-ci. Lorsque vous agissez sur la dernière commande du compte, rien de mauvais ne se produit.

Vous utilisez peut-être les fonctions d'Igor Kim sans regarder.
 

Aidez-nous, s'il vous plaît. ....

Je n'arrive pas à comprendre pourquoi cet indicateur fonctionne bien sur H4, mais qu'il est à la traîne sur les autres horizons temporels...

J'ai déjà réinstallé le terminal, mais je ne comprends toujours pas quel est le problème.

Dossiers :
test3v2.mq4  4 kb
 
clubsmi:

Aidez-nous, s'il vous plaît. ....

Je n'arrive pas à comprendre pourquoi cet indicateur fonctionne bien sur H4, mais qu'il est à la traîne sur d'autres horizons temporels...

J'ai déjà réinstallé le terminal, mais je ne comprends toujours pas quel est le problème.


Je dois compter de nombreuses barres, ou il n'y a pas de cotations dans l'historique pour tous les symboles, c'est pourquoi j'ai des décalages ; qu'est-ce que le terminal a à voir avec cela ? Essayez de limiter la profondeur du dessin à 1000 barres, par exemple.
 
evillive:

Vous devez compter de nombreuses barres, ou il n'y a pas de cotations dans l'historique pour tous les symboles, ce qui entraîne des décalages ; qu'est-ce que le terminal a à voir avec cela ? Essayez de limiter la profondeur du dessin à 1000 barres, par exemple.

Merci beaucoup pour le conseil. C'est corrigé. Merci encore !
 
Bonjour à tous ! Lorsqu'une certaine condition se produit, l'Expert Advisor ouvre une transaction et la ferme au moment de la prise ou de l'arrêt de la perte en conséquence. C'est tout, le Conseiller Expert n'ouvre plus de trades, malgré le fait que les conditions d'ouverture de trades soient remplies. Quelle en est la raison ? Je l'apprécierais vraiment.
 
alexey1979621:
Bonjour à tous ! Lorsqu'une certaine condition se produit, l'Expert Advisor ouvre une transaction et la ferme au moment de la prise ou de l'arrêt de la perte en conséquence. C'est tout, le Conseiller Expert n'ouvre plus de trades, malgré le fait que les conditions d'ouverture de trades soient remplies. Quelle en est la raison ? Je l'apprécierais vraiment.
Si vous n'avez pas de code source, allez voir un télépathe...
 

J'ai besoin d'un hibou martin, sur l'historique (test) donne 10-15% par mois avec une moyenne de 15% max drawdown. Max drawdown = 50%, donc draine la moitié du dépôt une fois par an ou un an et demi, et avant cela chaque mois donne 10-15%.
Le point fort de la chouette réside dans le filtrage du mouvement. La chouette recherche un mouvement sans échec, en recalculant les X dernières barres sur M1, et si elle trouve un mouvement>50 pips, elle applique les filtres suivants :
1) il ne devrait pas y avoir de bougie M15 avec un écart de plus de 25 pips (les nouvelles sont sorties).
2) il ne doit pas y avoir de pullback de plus de 40% par rapport à l'impulsion actuelle (formule - valeur du pullback/valeur de l'impulsion*100% - si plus de 40%, annuler l'ordre).
3) Il n'y a pas eu de flat prolongé, c'est-à-dire que tous les hai ont été franchis en pas moins de X bougies à M15 (je n'entrerai pas dans les détails ici).
Si toutes les conditions sont réunies, le scoop place un ordre d'achat, puis à une distance de 20 points de celui-ci un autre ordre d'achat avec un lot 2 fois plus grand, 20 points plus tard un autre avec un lot 4 fois plus grand que le premier ordre. Et quelques points plus techniques
Nous obtenons ainsi un hibou qui ne commence à travailler que lorsqu'il voit un long mouvement ininterrompu et sans nouvelles, de sorte qu'il serait très difficile de se perdre.

 
evillive:
Sans le code source, allez voir les télépathes...

Source :

int start()
{
 double SL,TP;
 int slv=MarketInfo(Symbol(),MODE_STOPLEVEL);
 if(Step<=slv || StepOtl<=slv) {Print("Step или StepOtl слишком мал"); return(0);}
 
 CountTrades();   //подсчет ордеров по типам.
 BU();
 
 //если нет рыночных ордеров-----------------------------------------
 if(bs+ss+bsts+ssts+blms+slms==0)                                     
 {
  if (Open[1]>Close[1] && Open[2]<Close[2] && High[1]>High[2] && Low[1]<Low[2])  // продажа
  {
   TP=NormalizeDouble(Bid - TakeProfit * Point, Digits);  
   SL=NormalizeDouble(Bid + StopLoss*Point,Digits);
   if(TakeProfit==0) TP=0;
   if(StopLoss==0) SL=0;                       
   ticket1=OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,SL,TP,"Pattern_1",Magic,0,Red);//Сразу с тейк-профитом, магик в настройках
   if(OrderSelect(ticket1,SELECT_BY_TICKET,MODE_TRADES)) price1=OrderOpenPrice();//цена первого ордера
   SL=NormalizeDouble(Bid+StepOtl*Point-StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket2=OrderSend(Symbol(),OP_BUYSTOP,Lots,NormalizeDouble(Bid+StepOtl*Point,Digits),0,SL,0,"Pattern_1",Magic,0,Blue);//тикет для BuyStop
   if(OrderSelect(ticket2,SELECT_BY_TICKET,MODE_TRADES)) price2=OrderOpenPrice();//цена второго ордера
  }
  
  if (Open[1]<Close[1] && Open[2]>Close[2] && High[1]>High[2] && Low[1]<Low[2]) // покупка
  {
   TP=NormalizeDouble(Ask + TakeProfit * Point, Digits); 
   if(TakeProfit==0) TP=0;
   SL=NormalizeDouble(Ask-StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket1=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,SL,TP,"Pattern_1",Magic,0,Blue);//с тейком, магик в настройках 
   if(OrderSelect(ticket1,SELECT_BY_TICKET,MODE_TRADES)) price1=OrderOpenPrice();//цена первого ордера
   SL=NormalizeDouble(Bid-StepOtl*Point+StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket2=OrderSend(Symbol(),OP_SELLSTOP,Lots,NormalizeDouble(Bid-StepOtl*Point,Digits),0,SL,0,"Pattern_1",Magic,0,Red);//тикет для SellStop
   if(OrderSelect(ticket2,SELECT_BY_TICKET,MODE_TRADES)) price2=OrderOpenPrice();//цена второго ордера
  }
 }
 

 return(0);
}
     
 //+------------------------------------------------------------------+
void CountTrades() // количество открытых ордеров
   {
    for(int i=OrdersTotal()-1; i>=0; i--) 
    {
     if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
     { 
      if (OrderSymbol()!=Symbol() && OrderMagicNumber()!=Magic) continue;//отделяем свои ордера. Магик задается в настройках
      int typ=OrderType();      //однократный вызов функции ускоряет работу
      switch (typ)
      {
       case 0: bs++;
       case 1: ss++;
       case 2: blms++;
       case 3: slms++;
       case 4: bsts++;
       case 5: ssts++;
       default: break;
      }        
     }
    }
    return;  
   }
 //+------------------------------------------------------------------+
 
Frangatic:

J'ai besoin d'un hibou martin, sur l'historique (test) donne 10-15% par mois avec un drawdown moyen de 15% maximum. Max drawdown = 50%, donc draine la moitié du dépôt une fois par an ou un an et demi, et avant cela chaque mois donne 10-15%.
Le point fort de la chouette réside dans le filtrage du mouvement. La chouette recherche un mouvement sans échec, en recalculant les X dernières barres sur M1, et si elle trouve un mouvement>50 pips, elle applique les filtres suivants :
1) il ne devrait pas y avoir de bougie M15 avec un écart de plus de 25 pips (les nouvelles sont sorties).
2) il ne doit pas y avoir de pullback de plus de 40% par rapport à l'impulsion actuelle (formule - valeur du pullback/valeur de l'impulsion*100% - si plus de 40%, annuler l'ordre).
3) Il n'y a pas eu de flat prolongé, c'est-à-dire que tous les hai ont été franchis en pas moins de X bougies à M15 (je n'entrerai pas dans les détails ici).
Si toutes les conditions sont réunies, le scoop place un ordre d'achat, puis à une distance de 20 points de celui-ci un autre ordre d'achat avec un lot 2 fois plus grand, 20 points plus tard un autre avec un lot 4 fois plus grand que le premier ordre. Et quelques points plus techniques
Le résultat est que nous obtenons une chouette qui ne commence à travailler que lorsqu'elle voit un long mouvement non-stop et aucune nouvelle, il sera donc très difficile de se retirer.

C'est ici que vous obtenez le poste! Il le fera bien, rapidement et à moindre coût !
 
borilunad:
C'est l'endroit idéal pour vous ! C'est bon, c'est rapide et c'est pas cher !
Eh bien, c'est un peu exagéré. Et si c'est rapide, c'est loin... Et si c'est bon marché, voir le point 1.
Raison: