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: 5018
Beiträge: 43389
Benutzer: 7.273
Aktive Benutzer: 15
Links: 84
Wir begrüßen unseren neuesten Benutzer: Gof
Mit 20.191 Benutzern waren die meisten Benutzer gleichzeitig online (vor einer Woche um 22:09).
Neue Benutzer:
vor einem Tag
- Gof
vor einer Woche
- heinzkral
21.05.26
- Seniully
07.05.26
- Igor
30.04.26
- KennithGla

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 120
Gesamt: 120
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, 6x 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 15:38 Uhr.





Suchmaschine - Reisen - Werbefilme - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2026 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.
-----------------------------------------------------------------------------------------------------------------------------