[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 322

 

Comment faire une boucle sur des commandes FERMÉES ?

J'ai besoin de compter combien d'ordres sont fermés au niveau du Take Profit en général.

Nous ne pouvons pas travailler de cette façon :

 //+--Цикл, в котором определяется сколько ордеров закрыто по тейк-профиту--
              ValueToStopTrade=0;                                 // Предварительно обнуляем переменную
              total=OrdersTotal();
              for(cnum=0;cnum<total;cnum++)                        //Для всех ордеров
              {
                  OrderSelect(cnum, SELECT_BY_POS, MODE_HISTORY); //Выбираем ордер
                  if (OrderProfit()>0)                            //Если профит больше 0
                  {
                     ValueToStopTrade=ValueToStopTrade+1;         //Увеличиваем счетчик на 1
                  } 
              }                                                   //Конец цикла for

upd. La documentation indique que OrdersTotal( ) montre les ordres ouverts et en attente..... C'est pour ça que ça ne marche pas.

Que faire ? Au lieu de Totaux, devrais-je simplement mettre un nombre quelconque ? )

 
libeadier:

Comment faire une boucle sur des commandes FERMÉES ?

J'ai besoin de compter combien d'ordres sont fermés au niveau du Take Profit en général.

Nous ne pouvons pas travailler de cette façon :

upd. La documentation indique que OrdersTotal() montre les ordres ouverts et en attente..... C'est pour ça que ça ne marche pas.

Que faire ? Au lieu de Totaux, devrais-je simplement mettre un nombre quelconque ? )

C'est comme ça que ça devrait fonctionner :

 double ProfitableOrders()
 {
   double orders=0; 
   for(int i=0; i<OrdersHistoryTotal(); i++){
     if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))continue;
     if(OrderMagicNumber()!=Magic)continue;
     if(OrderType()>1)continue;
     if(OrderProfit()>0)orders++;
   }      
  return(orders);
 } 
 

C'est difficile, et je ne l'ai pas vu dans la documentation......

Merci !

charter:

C'est comme ça que ça devrait fonctionner :

 
charter:

Très souvent, en travaillant sur le même TF, un dessin est utilisé :

Question :

Un tel code d'entrée n'est-il pas un obstacle à l'optimisation correcte des paramètres, y compris SL et TP ?

Il me semble qu'un EA travaillant, disons, sur H1 et optimisé/testé dans le mode "par prix d'ouverture" sur H1 ne réagira pas correctement aux SL et TP fixés,

Comme un EA ne voit un graphique qu'une fois par heure, il n'est pas en mesure d'exécuter correctement les ordres Stop, c'est-à-dire aux moments de leur franchissement.

............................

Par exemple https://www.mql5.com/ru/code/9386, où un seul paramètre (SL) est optimisé.

Là, dans PS, l'auteur écrit :

Le conseiller expert utilise le modèle par les prix d'ouverture des barres. Il est inutile d'optimiser par d'autres modèles - c'est une perte de temps et de ressources informatiques. Vous ne pouvez vérifier les résultats de l'optimisation que par l'émulation de tous les ticks.

Les reshettes sont un original exceptionnel...

Cherchez un autre exemple.

 

Quelqu'un sait-il s'il existe un indicateur MT4 ou un conseiller expert qui dessine des "Range Bars" ?

Il en existe un - RangeBars_fromM1_time.


Comment faire pour qu'un EA soit capable de trader sur un graphique RangeBar ?

 
Diubakin:

Comment puis-je faire en sorte que mon conseiller expert effectue des transactions sur le graphique de la barre de fluctuation ?


Un mauvais conseiller expert est également gêné par le graphique.
 
Cependant, est-il possible d'effectuer une transaction avec un Conseiller Expert sur un graphique RangeBars_fromM1_time ?... ?
 
Diubakin:
Cependant, est-il possible d'effectuer une transaction avec un Conseiller Expert sur un graphique RangeBars_fromM1_time ?... ?
C'est possible.
 
Alors... Comment ça marche ? Si ce n'est pas un secret...
 
Bonjour. J'essaie d'ajouter un niveau Fibonacci "112" au code. J'ai ajouté un niveau "top" et ça a marché. Mais je n'arrive pas à le mettre en bas. S'il vous plaît, regardez ce qui peut être fait. Merci. J'attends la réponse.
Dossiers :
1.mq4  6 kb