Comment afficher le type d'ordre (Vente/Achat) sur le graphique ?

 

Je veux afficher le type de position ouverte sur le graphique.

Par exemple, si la position actuelle du graphique est courte, alors le texte "Sell" sera affiché sur le graphique. (Seulement pour les positions ouvertes, pas en attente)

Salutations

 
Konnj:

Je veux afficher le type de position ouverte sur le graphique.

Par exemple, si la position actuelle du graphique est courte, le texte "Sell" sera affiché sur le graphique. (Seulement pour les positions ouvertes, pas en attente)

Salutations

Sélectionnez l'ordre, vérifiez son OrderType(), placez l'objet correspondant sur le graphique (étiquette ou texte).
 

Comment puis-je sélectionner l'ordre et vérifier son OrderType() ?

Est-ce correct ?


string OrderTypeP = DoubleToStr(OrderType(), 0);


 
Konnj:
Comment puis-je sélectionner l'ordre et vérifier son OrderType() ?

OrderSelect(), OrderType()

Vous voulez que quelqu'un écrive le code pour vous ? Allez ici : Services officiels de codage MT4 et MT5 de MetaQuotes

 

Je l'ai déjà fait :

int CalculateCurrentOrders()
  {
                  int pos=0;

                  for(int i=0;i<OrdersTotal();i++)
                    {
                     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
                     if(OrderSymbol()==Symbol() )
                       {
                        if(OrderType()==OP_BUY)  pos++;
                        if(OrderType()==OP_SELL) pos++;
                       }
                    }
              
                return(pos);
  }
 
Konnj:

Je l'ai déjà fait :

OK, alors quel est le problème ?

if(OrderType()==OP_BUY) string = "Buy";
 
Où dois-je l'utiliser ? En fait, je n'en ai aucune idée pour le moment ! :(
 

J'ai fait ce code :

{
   string OrderTyp = "OT";
   if (OrderType()==OP_BUY) string ot="Buy"; else ot="Sell";
   ObjectCreate(OrderTyp, OBJ_LABEL, 0 , 0, 0, 0);
   ObjectSet(OrderTyp, OBJPROP_CORNER, 1);
   ObjectSet(OrderTyp, OBJPROP_XDISTANCE, 10);
   ObjectSet(OrderTyp, OBJPROP_YDISTANCE, 15);
   ObjectSetText(OrderTyp, "Order Type: "+ot, 8, "Tahoma", CommentColor);
   }

Mais il ne montre pas le type de graphique actuel !

 
Konnj: Mais il ne montre pas le type de diagramme actuel !
MT4 n'a qu'un seul type de graphique - basé sur le temps.
 
Konnj:

J'ai fait ce code :

Mais il ne montre pas le type de graphique actuel !

Avez-vous sélectionné le bon ordre en premier ? Montrez votre code où vous sélectionnez le bon ordre. Avant de créer un objet, vérifiez d'abord s'il existe... Ne l'ai-je pas déjà dit deux fois ?

Aussi... L'objet DeleteAll() est paresseux, ne l'utilisez pas... un jour vous mettrez votre indicateur sur un graphique avec d'autres objets déjà sur le graphique que vous voulez garder... alors quand vous changerez de période ou supprimerez l'indicateur, tous les objets que vous vouliez garder auront disparu...

 
Qu'en est-il du type de carte Ticket ?