Personnalisation de la fenêtre du Terminal de la MT4. - page 2

 
Fernando Carreiro #:

Que veux-tu dire?

Activez simplement les niveaux dans les options et toutes les transactions actuellement ouvertes seront visibles dans le graphique.

Trading on Chart - Trading - MetaTrader 4 Help


Donc, je viens de faire le tour de l'option graphique mais ce n'est pas ce que je recherche.

en fait, je souhaite afficher les lignes de la colonne profit du Terminal sur le graphique et agir à partir de là.

Cela peut être sous forme d'objet ou bouton pour les croix de fermeture par exemple...

 
BobMusic13 #Donc, je viens de faire le tour de l'option graphique mais ce n'est pas ce que je recherche. en fait, je souhaite afficher les lignes de la colonne profit du Terminal sur le graphique et agir à partir de là.

Cela peut être sous forme d'objet ou bouton pour les croix de fermeture par exemple...

Vous ne pouvez pas afficher le profit sur le graphique. Vous pouvez uniquement indiquer où se trouvent les prix stop-loss et take-profit. C'est ce qu'on appelle les niveaux de trading qui sont activés dans les options.

Tout le reste devra être programmé en supplément. Regardez sur le Market s'il existe quelque chose de similaire à ce que vous recherchez.
Forex Market - un App Store de robots de trading MetaTrader 5, d'Expert Advisors et d'indicateurs techniques
Forex Market - un App Store de robots de trading MetaTrader 5, d'Expert Advisors et d'indicateurs techniques
  • www.mql5.com
Une vitrine officielle d'applications pour le trading à partir du terminal
 
Fernando Carreiro #:
Vous ne pouvez pas afficher le profit sur le graphique. Vous pouvez uniquement indiquer où se trouvent les prix stop-loss et take-profit. C'est ce qu'on appelle les niveaux de trading qui sont activés dans les options.

Tout le reste devra être programmé en supplément. Regardez sur le Market s'il existe quelque chose de similaire à ce que vous recherchez.

Merci Fernando.
Donc, on en revient à ma question du début, c'est qu'il faut programmer un indicateur pour pouvoir faire ce que je recherche !! :)

Merci encore pour tout, je vais rechercher sur le Market !

Bon week end.

 
BobMusic13 # : Thanks Fernando. So, we come back to my question at the beginning, which is that I need to program an indicator to be able to do what I'm looking for!! :) Thanks again for everything, I'll search the Market! Have a nice week end.
Malheureusement, en raison de la barrière de la langue, il m'est difficile de comprendre pleinement vos quêtes et de vous guider correctement.
 
Fernando Carreiro #:
Malheureusement, en raison de la barrière de la langue, il m'est difficile de comprendre pleinement vos quêtes et de vous guider correctement.
Pas de problème Fernando.
merci d'avoir pris le temps de me répondre !
 
BobMusic13 #:
Pas de problème Fernando.
merci d'avoir pris le temps de me répondre !

Pour information, il est possible d'afficher les informations du Terminal de la MT4 sur le graphique !!

 
BobMusic13 #:

Pour information, il est possible d'afficher les informations du Terminal de la MT4 sur le graphique !!

Salut !

Ca serait bien de dire comment du coup non ? ;) 

 
Charles, Marie Tilly #:

Salut !

Ca serait bien de dire comment du coup non ? ;) 

Voilà un exemple de code pour afficher des éléments texte du Terminal. Il faut créer un nouvel indicateur avec MetaEditor


#property indicator_chart_window

void DisplayOpenPositions() {
    for (int i = OrdersHistoryTotal() - 1; i >= 0; i--) {
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
            
            if (OrderSymbol() == _Symbol && OrderType() <= OP_SELL) {
                string positionDetails = StringFormat("Ticket: %d, Symbol: %s, Volume: %.2f, Open Price: %.5f",
                                                      OrderTicket(), OrderSymbol()",
                                                      OrderLots(), OrderOpenPrice()));

                // Créez et affichez un objet texte sur le graphique avec les détails de la position.
                ObjectCreate(0, "PositionText" + IntegerToString(i), OBJ_LABEL, 0, 0, 0);
                ObjectSetText("PositionText" + IntegerToString(i), positionDetails, 10, "Arial", clrWhite);
                ObjectSet("PositionText" + IntegerToString(i), OBJPROP_CORNER, 0);
                ObjectSet("PositionText" + IntegerToString(i), OBJPROP_XDISTANCE, 10);
                ObjectSet("PositionText" + IntegerToString(i), OBJPROP_YDISTANCE, i * 20);
            }
        }
    }
}

int start() {

    ObjectsDeleteAll(0, OBJ_LABEL);

    DisplayOpenPositions();

    return(0);
}
 
Merci !

Pour ceux qui veulent la même chose en MQL5 voici le script adapté (j'ai modifié un peu la ligne de texte car OBJ_LABEL ne prend que 64 caractères)

#property strict

void DisplayOpenPositions() {
    for(int i = PositionsTotal() - 1; i >= 0; i--) {
        string symbol = PositionGetSymbol(i);
        if(symbol == _Symbol) {
            double volume    = PositionGetDouble(POSITION_VOLUME);
            double openPrice = PositionGetDouble(POSITION_PRICE_OPEN);
            ulong  ticket    = PositionGetInteger(POSITION_TICKET);
           string positionDetails = StringFormat("Ticket: %d on %s with %.2f lot(s) at %.5f",
                                                  ticket, symbol, volume, openPrice);
            string objectName = "PositionText" + IntegerToString(i);
            if(!ObjectCreate(0, objectName, OBJ_LABEL, 0, 0, 0))
                Print("Failed to create object: ", objectName);

            ObjectSetString(0, objectName, OBJPROP_TEXT, positionDetails);
            ObjectSetInteger(0, objectName, OBJPROP_FONTSIZE, 10);
            ObjectSetString(0, objectName, OBJPROP_FONT, "Arial");
            ObjectSetInteger(0, objectName, OBJPROP_COLOR, clrWhite);
            ObjectSetInteger(0, objectName, OBJPROP_CORNER, CORNER_LEFT_UPPER);
            ObjectSetInteger(0, objectName, OBJPROP_XDISTANCE, 10);
            ObjectSetInteger(0, objectName, OBJPROP_YDISTANCE, 20 + i * 20);
        }
    }
}

void OnStart() {
    ObjectsDeleteAll(0, 0, OBJ_LABEL);
    DisplayOpenPositions();
}
 
Charles, Marie Tilly #:
Merci !

Pour ceux qui veulent la même chose en MQL5 voici le script adapté (j'ai modifié un peu la ligne de texte car OBJ_LABEL ne prend que 64 caractères)

Super merci.

Tiens, tu saurais comment faire pour créer un rectangle en fond et dans lequel on pourrait mettre ces informations ?

Si possible, ce rectangle devra s'agrandir à chaque nouvelle position de façon à créer une sorte de panneau avec à l'intérieur les informations affichées...

Raison: