Einzelnen Beitrag anzeigen
  #2 (permalink)  
Alt 30.12.16
Kronenchakra Kronenchakra ist offline
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 313
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard Ein PowerTool zum gleichschalten aller offenen Charts

Das ist gleich ein Beispiel für die Verwendun von MyAlert.mqh

Die Einstellungen eines Charts auf alle anderen offenen Charts anwenden.
Verwendet die Funktionen ChartSaveTemplate() und ChartApplyTemplate().

Ist nicht wirklich auf meinem Mist gewachsen, aber ist wesentlich verbessert worden.
Und mit ErrorCheck!

Code:
//+------------------------------------------------------------------+
//|                                                ApplyTemplate.mq5 |
//|                                Copyright © 2017 Ing. Otto Pauser |
//|                                        https://www.opa-trader.at |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2017 Ing. Otto Pauser"
#property link      "https://www.opa-trader.at"
#property version   "1.00"

#include <MyAlert.mqh>

string TmplName = "LastApplied";       // unter diesem Namen wird die aktuelle Einstellung gespeichert
                                       // wird immer kommentarlos überschrieben
void OnStart()
{
   ENUM_TIMEFRAMES initPeriod  = _Period;             // Werte des aktuellen Charts merken
   long            initScale   = ChartGetInteger(ChartID(),CHART_SCALE);
   long            initChartID = ChartID();
   long            currChartID = ChartFirst();        // Schleifenvariable über alle Charts

   if(!ChartSaveTemplate(initChartID,TmplName))       // hier wird die aktuelle Einstellung in Datei geschrieben
      MyAlert(StdErrMsg);
   
   while(currChartID>=0)                              // hier laden wir das Template
      {
         if(currChartID!=initChartID)
            {
               if(!ChartApplyTemplate(currChartID, TmplName))
                  MyAlert();  
            }
         currChartID=ChartNext(currChartID);
     }

   currChartID = ChartFirst();                        // reset auf ersten Chart
   while(currChartID>=0)                              // hier werden Periode und Scale eingestellt
      {
         if(currChartID!=initChartID)
            {
               if(ChartPeriod(currChartID)!=initPeriod)
                  ChartSetSymbolPeriod(currChartID,ChartSymbol(currChartID),initPeriod);  

               if(ChartGetInteger(currChartID,CHART_SCALE)!=initScale)
                  ChartSetInteger(currChartID,CHART_SCALE,  initScale);
            }
         currChartID=ChartNext(currChartID);
     }

   PlaySound("ok");                                   // machma a bisserl Lärm
}
Das Tool kommt ins Script-Verzeichnis und kann sehr viel Zeit sparen!
Angehängte Dateien
Dateityp: mq5 ApplyTemplate.mq5 (4,3 KB, 1x aufgerufen)