[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 105

 
Dimka-novitsek:
Je suis en train de déplacer ce type d'écriture, le stop se déplace exactement lorsque le bénéfice atteint 30 pips (moins le spread, etc.), à une distance de 15 pips du prix.

Et l'ordre est toujours modifié ? Si j'essaie de le placer manuellement, il ne se déplace pas et j'obtiens le message Invalid S/L...
 
Dites-moi, est-ce que cette fonction, c'est-à-dire ce formulaire, sélectionnera les commandes à partir de la dernière fermeture et dans l'ordre ?
for ( i=0; i<OrdersHistoryTotal(); i++) {
      if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
         if (OrderSymbol()!=Symbol())     continue;
         
         if (OrderMagicNumber()==1000 || OrderMagicNumber()==2000) {
            if (0<OrderClosePrice()) {
                Profit=OrderClosePrice();
                
               }
            if (0>OrderClosePrice()) {
                Loss=OrderClosePrice();   
               }
            }
         }
      }
      
 

premier_mai:



Et l'ordre est toujours modifié ? Lorsque j'essaie de le régler manuellement, il n'est pas réglé et j'obtiens le message Wrong S/L...


Eh bien, il doit être faux, du mauvais côté ou plus proche de 10 pips du prix, selon ce que le courtier permet pour cette paire.

Mon S/L est modifiable ? je ne me plains pas.

 
Dimka-novitsek:


Il doit être faux, du mauvais côté, ou plus proche de 10 pips du prix.

C'est une modification ? Je ne me plains pas.


Eh bien, disons EURAUD - le stop loss ne peut pas être fixé à moins de 100 pips, et je voudrais mémoriser le niveau breakeven et le déplacer...
 
first_may:

Eh bien, disons EURAUD - vous ne pouvez pas placer un stop loss de moins de 100 pips et j'aimerais me souvenir du niveau breakeven lorsque je place un ordre et le déplacer...

Je vois...
 
first_may:

Eh bien, disons la paire EURAUD - ici vous ne pouvez pas mettre un stop loss de moins de 100 pips et je voudrais mémoriser le niveau breakeven et le déplacer....

Utilisez un niveau de StopLoss virtuel. Lorsque vous écrivez ici, n'oubliez pas le prix (stockez-le dans une variable). Si le prix passe en dessous (pour l'ACHAT) ou au-dessus (pour la VENTE) du niveau virtuel, utilisez la fonction OrderClose().

C'est le seul moyen de faire une perte (un profit) légèrement supérieure (inférieure) à ce que nous voulons. Le prix s'arrête rarement au niveau que nous souhaitons. Mais cette variante est tout à fait acceptable pour le commerce. C'est vrai, je n'ai pas fait de commerce avec cette méthode.

 
MaxZ:

Utilisez un niveau de StopLoss virtuel. Lorsque vous écrivez ici, n'oubliez pas le prix (stockez-le dans une variable). Si le prix passe en dessous (pour l'ACHAT) ou au-dessus (pour la VENTE) du niveau virtuel, utilisez la fonction OrderClose().

C'est le seul moyen de faire une perte (un profit) légèrement supérieure (inférieure) à ce que nous voulons. Le prix s'arrête rarement au niveau que nous souhaitons. Mais cette variante est tout à fait acceptable pour le commerce. Je n'ai pas négocié en utilisant cette méthode.


Le stockage dans une variable est-elle globale ? Et si vous devez stocker plusieurs titres en même temps, vous avez besoin d'un tableau ?
 
first_may:

Est-ce que le stockage dans une variable est une sorte de global ? Et si vous avez besoin de stocker plusieurs papiers en même temps, vous avez besoin d'un tableau ?
Vous êtes si intuitif. N'ayez pas peur de travailler avec des tableaux. Ils ne vous mangeront pas ! DD
 
MaxZ:
A quel point tu es intelligent. N'ayez pas peur de travailler avec des tableaux. Ils ne vous mangeront pas ! :DD


Lire : https://book.mql4.com/ru/variables/arrays . Il s'avère que je peux organiser un tableau à deux dimensions pour disons trois paires : double Mas_d[3][2] = {1, 0, 2, 0, 3,0} ;

tout en gardant à l'esprit que :

la valeur de Mas_d[1][1] correspond par exemple à la paire AUDCAD, et Mas_d[1][2] est la valeur de cette paire ;

la valeur de Mas_d[2][1] correspond par exemple à la paire AUDCHF et Mas_d[2][2] est la valeur de cette paire ;

La valeur de Mas_d[3][1] correspond par exemple à AUDJPY, et Mas_d[3][2] est la valeur de cette paire,

les éléments du tableau conservent leurs valeurs entre les ticks. Et je pourrai alors modifier les valeurs des éléments du tableau selon le critère dont j'ai besoin. Ai-je bien compris ce que vous voulez dire ? :)

 
Aide : J'ai une condition dans mon EA qui est d'ouvrir une position d'achat seulement si le bas du chandelier précédent est en dessous de tous les bas des 40 chandeliers précédents. La question : comment mettre en œuvre cette énumération des bas des chandeliers précédents et savoir si le bas du chandelier précédent était inférieur au bas du chandelier précédent ? Je vous remercie d'avance.