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.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3810
Beiträge: 36862
Benutzer: 6.038
Aktive Benutzer: 492
Links: 80
Wir begrüßen unseren neuesten Benutzer: Markus
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor einem Tag
- Markus
vor einem Tag
- katana69
vor einem Tag
- lebedeinle...
vor 2 Tagen
- Harryy
vor 3 Tagen
- fariddesso...

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

Empfehlungen

Werbung

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt vor 4 Wochen
Benutzerbild von Kronenchakra
Premium Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 309
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, 0x aufgerufen)
__________________
Das Gras wächst nicht schneller wenn man daran zieht
Mit Zitat antworten
Antwort

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 +1. Es ist jetzt 00:56 Uhr.



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