Zeichnungen auf Chart von Handelsereignissen

Einloggen oder registrieren, um einen Kommentar zu schreiben
YahsT
22
YahsT  

ich suche nach eine Funktion womit ich die Handelsereignisse ausschalten kann. Die Markierungen sind einfach zu groß. Kann jemand helfen?

amando
1735
amando  
YahsT:

ich suche nach eine Funktion womit ich die Handelsereignisse ausschalten kann. Die Markierungen sind einfach zu groß. Kann jemand helfen?

Geht nicht, du kannst nur die objekte löschen

Carl Schreiber
Moderator
8151
Carl Schreiber  

Bei einem anderen Hintergrund sieht das auch anders aus - da sieht man die Kreise nicht mehr.

Außerdem kann man sie im Nachhinein löschen - zB. durch einen eigenen Indikator, der nur das macht.

YahsT
22
YahsT  
Carl Schreiber:
Bei einem anderen Hintergrund sieht das auch anders aus - da sieht man die Kreise nicht mehr.
danke, aber sogar die Pfeilen sind mir einfach zu viel
Otto Pauser
1537
Otto Pauser  
YahsT:
danke, aber sogar die Pfeilen sind mir einfach zu viel

Mach dir ein Script, leg es auf eine Hotkey, und weg sind die Pfeile ;)

void OnStart()
{
   ObjectsDeleteAll(ChartID(),0,OBJ_ARROW_BUY);
   ObjectsDeleteAll(ChartID(),0,OBJ_ARROW_SELL);
}

Die Pfeile gehen mir auch auf den Keks, deshalb war das eines meiner ersten Scripts.

Oder du machst es wie Calli empfiehlt in einem Indikator. Entweder in der OnCalculate() oder mit einem Timer.

Obiges Script löscht nur im aktuellen Chart.

Willst du immer alle Pfeile in allen Charts löschen musst du über alle Charts iterieren.

void OnStart()
{
   long currChartID = ChartFirst();                   // Schleifenvariable über alle Charts auf ersten chart setzen
   while(currChartID>=0)                              // hier wird über alle charts iteriert
      {
         ObjectsDeleteAll(currChartID,0,OBJ_ARROW_BUY);
         ObjectsDeleteAll(currChartID,0,OBJ_ARROW_SELL);
         currChartID=ChartNext(currChartID);          // nächsten chart auswählen
     }
}
// ist nicht getestet, sollte aber funktionieren

Es sollte aber möglich sein diese Pfeile durch andere Symbole zu ersetzen.

Ich schau mir das an.

Otto Pauser
1537
Otto Pauser  

Eine Möglichkeit um die Handelspfeile zu ändern. Sicher noch nicht perfekt, aber ein Ansatz:

//+------------------------------------------------------------------+
//|                                                  ArrowModify.mq5 |
//|                               Copyright © 2019, Ing. Otto Pauser |
//|                       https://www.mql5.com/de/users/kronenchakra |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2019, Ing. Otto Pauser"
#property link      "https://www.mql5.com/de/users/kronenchakra"
#property version   "1.00"

void OnStart()
{
   long       _ChartID=ChartID();
   int         found;
   ENUM_OBJECT type;
   string      name;
   datetime    time;
   double      price;

   found=ObjectsTotal(_ChartID,0);

   for(int i=0; i<found; i++)
      {
         name =             ObjectName      (_ChartID,i,0);
         type =(ENUM_OBJECT)ObjectGetInteger(_ChartID,name,OBJPROP_TYPE);
         price=             ObjectGetDouble (_ChartID,name,OBJPROP_PRICE);
         time =(datetime)   ObjectGetInteger(_ChartID,name,OBJPROP_TIME);
         switch(type)
           {
            case OBJ_ARROW_BUY :
                     ObjectDelete(_ChartID,name);
                     ObjectCreate(_ChartID,name,OBJ_ARROW_UP,0,time,price);
              break;
            case OBJ_ARROW_SELL:
                     ObjectDelete(_ChartID,name);
                     ObjectCreate(_ChartID,name,OBJ_ARROW_DOWN,0,time,price);
              break;
           }
      }
}

Ist hier als Script implementiert, kann natürlich auch in einen Indikator oder EA eingearbeitet werden.

Dateien:
Otto Pauser
1537
Otto Pauser  

Im Grunde betrachtet ist das alles erbärmlich.

Bei normalen Programmentwicklern schickst du denen mal deinen Wunsch: "ich hätte gerne diese Symbole einstellbar in der Größe",

und es wird wahrscheinlich eingearbeitet werden. Ist ja ein 'klacks'.

Aber bei MQ verstehen sie wahrscheinlich nicht einmal was du meinst. Traurig, aber wahr.

Ja, ich weiß es ist nutzlos zu klagen. Aber irgendwo muss ich meinen Frust los werden.

amando
1735
amando  
Rein nur zum löschen der pfeile brauchst du kein script, das geht auch unter charts, objekte löschen pfeile
YahsT
22
YahsT  
Otto Pauser:

Im Grunde betrachtet ist das alles erbärmlich.

Bei normalen Programmentwicklern schickst du denen mal deinen Wunsch: "ich hätte gerne diese Symbole einstellbar in der Größe",

und es wird wahrscheinlich eingearbeitet werden. Ist ja ein 'klacks'.

Aber bei MQ verstehen sie wahrscheinlich nicht einmal was du meinst. Traurig, aber wahr.

Ja, ich weiß es ist nutzlos zu klagen. Aber irgendwo muss ich meinen Frust los werden.

danke Otto! Es gibt einiges zu verbessern. Schön wäre es wenn wir einfach alle Zeichnungen ein- oder ausschalten könnten.
Einloggen oder registrieren, um einen Kommentar zu schreiben