Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 5 > Programmierung MQL5 > Codeschnipsel

Codeschnipsel Codeschnipsel für MQL5.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4978
Beiträge: 43261
Benutzer: 7.222
Aktive Benutzer: 75
Links: 84
Wir begrüßen unseren neuesten Benutzer: AlbertZiz
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einer Woche
- AlbertZiz
vor einer Woche
- michak
vor 2 Wochen
- Amateur
vor 2 Wochen
- infos1982
vor 2 Wochen
- Thomas75

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 111
Gesamt: 111
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 21.10.17
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 313
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard Template auf alle Charts anwenden - Update

Mittlerweile habe ich eine bessere Version von ApplyTemplate programmiert.
Das Script kann man natürlich mit einem HotKey verbinden, (zB Ctrl+T), dann ist das besonders bequem.
Code:
//+------------------------------------------------------------------+
//|                                                ApplyTemplate.mq5 |
//|                                Copyright © 2017 Ing. Otto Pauser |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2017 Ing. Otto Pauser"
#property link      ""
#property version   "1.00"
#property description "Aktuelles Template wird unter dem Namen 'LastApplied.tpl' gespeichert"
#property description "und auf alle offenen Charts angewendet"

string ProgName = MQLInfoString(MQL_PROGRAM_NAME);    // Name des Scripts (für MessageBox)
string TmplName = "LastApplied";                      // unter diesem Namen wird die aktuelle Einstellung gespeichert, wird immer kommentarlos überschrieben

void OnStart()
{
   ENUM_TIMEFRAMES initPeriod  = _Period;                                  // Timeframe des aktuellen Charts merken
   long            initScale   = ChartGetInteger(ChartID(),CHART_SCALE);   // scale des aktuellen Charts merken
   long            initChartID = ChartID();                                // aktueller Chart
   long            currChartID = ChartFirst();                             // Schleifenvariable über alle Charts

   if(!ChartSaveTemplate(initChartID,TmplName))                            // hier wird die aktuelle Einstellung in Datei geschrieben
      {
         PlaySound("alert");
         MessageBox("*ERROR* ChartSaveTemplate: "+TmplName,ProgName,MB_ICONERROR);
         return;                                                           // exit here
      }
      
   while(currChartID>=0)                                                   // Schleife über alle Charts
      {
         if(currChartID!=initChartID)                                      // nicht für Chart in dem das Script gestartet wurde
            {  
               //if(ChartSymbol(currChartID)!="SILVER")                      // nicht für Chart "SILVER". Diese Zeile kann enfernt werden, ist nur für meine Anwendung
                                                                             // ist auch Beispiel für Filter für Charts die nicht verändert werden sollen
                  if(!ChartApplyTemplate(currChartID, TmplName))           // Template anwenden
                     {
                        MessageBox("*ERROR* ChartApplyTemplate: "+TmplName,ProgName,MB_ICONERROR);
                        return;                       // exit here
                     }
               }
         currChartID=ChartNext(currChartID);
     }

   currChartID = ChartFirst();                                             // reset auf ersten Chart
   while(currChartID>=0)                                                   // nochmal Schleife über alle Charts
      {
         if(currChartID!=initChartID)                                      // nicht für Chart in dem das Script gestartet wurde
            {
               if(ChartPeriod(currChartID)!=initPeriod)                    // Timeframe einstellen
                  ChartSetSymbolPeriod(currChartID,ChartSymbol(currChartID),initPeriod);  

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

   PlaySound("ok");                                                        // akustisch bemerkbar machen
}
Für den MT4 bitte umbenennen auf ApplyTemplate.mq4 und im MT4 kompilieren.

Grüße Otto
Angehängte Dateien
Dateityp: mq5 ApplyTemplate.mq5 (6,9 KB, 5x aufgerufen)
Thema geschlossen

Lesezeichen

Stichworte
apply, apply template, applytemplate, auf alle anwenden, chart, codeschnipsel, codeschnipsel mql5, mql5, programmierung, programmierung metatrader, programmierung mql5, template

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 20:50 Uhr.





Suchmaschine - Reisen - Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------