Jump to content
Tom Next - Daytrading Community

Uhrzeit Differenz zu GMT auslesen


conglom-o

Recommended Posts

Hallo Leute,

 

hier sind ja Profis am Werk. Dieser Thread soll dazu gedacht sein, den Bastlern (wie mir) da draußen zu erklären, wie man mittels MQL die Zeitdifferenz zu GMT auslesen und diese Info in seinen Indikatoren und EAs verwenden kann. Für alle, die jetzt gespannt auf die Lösung warten: ich habe keine Ahnung, wie das geht :wink:.

 

Idee dahinter ist folgender: einige von uns nutzen ja EAs, die zu bestimmten Uhrzeiten handeln sollen (oder nicht). Wenn man nun unterschiedliche Broker mit verschiedenen Zeitangaben hat, dann hat man ein Problem. Oder noch besser: dem Broker fällt einfach mal ein, seine Server von GMT+2 auf GMT+3 umzustellen, weil "die Kunden das so wollen". Da ist es doch am sinnvollsten GMT als Referenz zu nehmen und alles intern daran anzupassen. Dann entfällt auch der ganze Stress bei Umstellung auf Sommerzeit und so.

 

Wer also einen Lösungsvorschlag hat - immer her damit. Vor allem: wie kommt man an GMT ran wenn der Rechner nicht auf GMT läuft?

 

Gruß

 

conglom-o

Link to comment
Share on other sites

Alles was ich in den letzten Jahren dazu gelesen habe, hieß dann immer "Es geht nicht" oder "Man muß den EA an die Differenz anpassen""

"Suche Dir einen anderen Broker" usw war auch dabei.

Und das waren keine "Vola Coder nicht mal Farbveränderer" sondern Leute vom Schlage eines FinGeR`s und aufwärts.

Wer dazu eine Lösung hat / findet, ist sicher ganz weit vorn, denn das interessiert MT User rund um den Planeten.

Link to comment
Share on other sites

Deswegen will ich ja, dass wir das hier bei TN angehen und nicht in irgendeinem zweitklassigen Forum crazy.gif .

 

LOL, verstehe schon.

Ich sprach zwar schon von den bekannten Koryhäen der Forengemeinde in den Staaten, aber ich spüre trotzdem was Du denkst

Link to comment
Share on other sites

Mit MQL5 ist es ganz einfach, da eine Funktion von Haus aus zur verfügung steht.

Und seit dem neuen Update von MetaTrader 4 ist es mit MQL4 das selbe wie mit MQL5.

 

Beispiel 1:

/* Code für MQL4 und MQL5 */

//Zeigt aktuelle GMT Zeit auf dem Chart als Kommentar
  Comment ( TimeGMT() );

 

Beispiel 2:

/*Code für MQL4 und MQL5 */

MqlDateTime time;

void OnStart()
  {
    TimeGMT(time);
    
    //aktuelle GMT Stunde auf dem Chart
    Comment( time.hour);
  }

 

Beispiel 3:

/*Code für MQL4 und MQL5 */

void OnStart()
  {
   //Die Differenz in Stunden zu GMT vom PC und vom Server
   double  Differenz_BrokerServer_GMT_Stunden = (TimeCurrent()-TimeGMT()) /3600;
   double  Differenz_LokalPC_GMT_Stunden      = (TimeLocal()-TimeGMT()) /3600;
  }
  
  • Upvote 6
Link to comment
Share on other sites

Hallo Leute,

 

hier sind ja Profis am Werk. Dieser Thread soll dazu gedacht sein, den Bastlern (wie mir) da draußen zu erklären, wie man mittels MQL die Zeitdifferenz zu GMT auslesen ...

 

Wenn man nun unterschiedliche Broker mit verschiedenen Zeitangaben hat, dann hat man ein Problem. Oder noch besser: dem Broker fällt einfach mal ein, seine Server von GMT+2 auf GMT+3 umzustellen, weil "die Kunden das so wollen". Da ist es doch am sinnvollsten GMT als Referenz zu nehmen und alles intern daran anzupassen. Dann entfällt auch der ganze Stress bei Umstellung auf Sommerzeit und so.

 

Wer also einen Lösungsvorschlag hat - immer her damit. Vor allem: wie kommt man an GMT ran wenn der Rechner nicht auf GMT läuft?

 

 

Hallo zusammen,

 

würde mich bitte gerne mit meiner Frage an die Experten hier im Forum "ranhängen" wollen ob es ein Tool oder Code kostenfrei gäbe welcher bei den MT4 Statements (HTML-Format, Statement und Detailed Statement) welche man sich ja aus MT4, Reiter Historie heraus lokal abspeichern kann die GMT-Zeiten bspw. von GMT auf GMT+1 (also unsere Uhrzeit hier) automatisch ändern lassen könnte. Das Ergebnis wäre eine "bereinigte" Tradeliste mit den tatsächlichen Tradezeiten in meiner Zeitzone zur persönlichen Auswertung welche zur Verfügung stünde??

 

Kurzum: der Kunde ändert Enter und Exit Timestamp am Tradingplotter automatisch über ein Tool auf seine eigene Zeitzone.

 

Manuell kann man zwar die HTML nach Excel holen doch bei zig Trades jedes Jahr ist ordentlich Handarbeit ohne Ende angesagt, daher meine Frage.

 

Danke euch.

Link to comment
Share on other sites

Doch doch - bisher konnte ich mich erfolgreich wehren und stehe noch bei Build 509 :conglom-o:.

 

Für den Trick fehlt aber noch die Anleitung !

Hast Du die alte terminal.exe kopiert und/oder das Live Update deaktiviert oder wie gehst Du vor ?

Ich bin nämlich schon bei Build 625

Link to comment
Share on other sites

Für den Trick fehlt aber noch die Anleitung !

 

Also, weil Du es bist:

1. man sollte immer eine Sicherung haben, denn sonst gibt es kein zurück wink.gif

2. Liveupdate Dateien und Verzeichnis löschen

3. Alle Registry Einträge löschen, die auf den Metatrader oder Metaquotes hindeuten

4. Falls der MT mal fragt, ob er Änderungen am System vornehmen darf: ablehnen (tut er bei mir aber nicht mehr)

  • Upvote 3
Link to comment
Share on other sites

Das ist möglich, aber nur als Export in eine Datei html, excel, csv..... (also nicht intern in MT4)

 

 

Hallo,

 

hm, gefunden habe ich nur das http://forum.mql4.com/35708 und hier im Forum dies http://www.tom-next.com/community/topic/41900-history-analyse-nach-magicnummern-und-zeitrumen-excel-2007/

 

Nur wie ich das dann mit der automatischen Umrechnung der Enter und Exits nach GMT+1 bekomme finde ich nicht?!

 

Das Zielformat ist im Prinzip egal, HTML und vor allem Excel wäre klasse zur Auswertung.

 

Danke euch.

Link to comment
Share on other sites

Wenn ich es richtig verstehe, geht es Dir doch nur um die Uhrzeitanpassung Deiner Trades.

Wenn Du die "falschen Uhrzeiten" dann in der Excel Tabelle hast, ist es doch eigentlich kein großer Aufwand mehr, die Zeiten in den Zellen automatisch von Excel nach Deinen Wünschen anzupassen ? (+/- X Stunden)

Passiert doch nur 2x im Jahr -Sommer und Winterzeit

Link to comment
Share on other sites

Wenn ich es richtig verstehe, geht es Dir doch nur um die Uhrzeitanpassung Deiner Trades.

Wenn Du die "falschen Uhrzeiten" dann in der Excel Tabelle hast, ist es doch eigentlich kein großer Aufwand mehr, die Zeiten in den Zellen automatisch von Excel nach Deinen Wünschen anzupassen ? (+/- X Stunden) ...

 

 

Hallo Vola,

 

exakt, ja um die Uhrzeitanpassung auf automatischen Wege nach GMT+1 (Berlin) geht es. Und dies ist mein persönliches Problem dieses eben nicht in Excel selbst umsetzen zu können. Ich kann zwar aus MT4 manuell die History nach Excel bringen und wie geht es dann bitte weiter mit dem automatischen Umsetzen aller Enter/Exits auf GMT+1 in Excel???

 

Ich hatte gehofft in den "Weiten des Internet" ein freies Tool oder besser Skript zu finden wäre welches AUTOMATISCH bspw. jeden Tag (Mo-Fr) z.B. um 23:30 ein Statement aus MT4 erzeugt und im nächsten Schritt aus GMT eben GMT+1 die ganzen Trades umschreibt sowie abspeichert, fertig. Ob das in Excel oder via Browser mit HTML wäre ist völlig egal/nebensächlich, hauptsache automatisch!??

 

Gefunden habe ich im Internet dazu jedoch nichts, nur das die Broker bspw. fest bei GMT+2 bleiben und der Kunde dies nicht im MT4 umstellen kann, also ist auch das Statement aus MT4 in GMT+2 und das würde ich gerne AUTOMATISCH ändern lassen ...

 

Danke für jeden Hinweis cool.gif

Link to comment
Share on other sites

Ich kann zwar aus MT4 manuell die History nach Excel bringen und wie geht es dann bitte weiter mit dem automatischen Umsetzen aller Enter/Exits auf GMT+1 in Excel???

 

Ich bin mir nicht sicher ob wir aneinander vorbeireden.

Also, Du hast die falschen Daten nach Excel importiert und danach änderst Du diese in den Zellen automatisch indem Du für die jeweiligen Zellen eine Formel einrichtest.

 

Etwa so:

 

 

Du kannst mit jeder Uhrzeit das gleiche machen wie mit Zahlen, der Unterschied ist das du die Stunden und Minuten mit den ":" trennen musst z.B. 18:21

 

18:21 + 10:10 = 4:41

etwas komisch ist diese Rechnung, Excel fängt nach 24 Stunden von vorne an und zeigt die Tage nicht an.

 

Lösung ist:

gib in der Zellenformatierung unter Benutzerdefiniert einfach " [h]:mm:ss " und die Rechnung lautet:

18:21 + 10:10 = 28:31

oder

12:50 + 00:45 = 13:35

 

Diese Formel speicherst Du Dir ja nur einmal ab und fügst in diese Vorlage täglich, wöchentlich oder whatever die MT Statement Daten ein.

 

Weitere Beispiele

 

btw.

Eigentlich ist das alles halbautomatisch, wahrscheinlich suchst Du aber vollautomatisch....

  • Upvote 1
Link to comment
Share on other sites

...ein Tool oder Code kostenfrei gäbe welcher bei den MT4 Statements (HTML-Format, Statement und Detailed Statement) welche man sich ja aus MT4,

Reiter Historie heraus lokal abspeichern kann die GMT-Zeiten bspw. von GMT auf GMT+1 (also unsere Uhrzeit hier) automatisch ändern lassen könnte...

 

nächsten Schritt aus GMT eben GMT+1....

 

dem Broker fällt einfach mal ein, seine Server von GMT+2 auf GMT+3 umzustellen, weil...

 

Genau. Wenn du nun eine ältere Historie Liste benutzt, und nicht mehr weißt welche GMT der Broker damals hatte oder noch schlimmer dein Liste hat 2 Änderungen. (GMT +/- ?)

Man kann immer nur von der aktuellen Server Zeit ausgehen. (welche damals vielleicht GMT +/- anders war...)

 

Also, wenn man jetzt solch einen Skript programmiert ist das GMT uninteressant. (Außer man ist sich 100% sicher welchen GMT +/- ? der Broker benutzte)

 

Der Benutzer muss selber wissen, wie viel +/- Stunden der Skript in der Historie verändern soll.

Link to comment
Share on other sites

...ein Tool oder Code kostenfrei gäbe welcher bei den MT4 Statements (HTML-Format, Statement und Detailed Statement) welche man sich ja aus MT4,

Reiter Historie heraus lokal abspeichern kann die GMT-Zeiten bspw. von GMT auf GMT+1 (also unsere Uhrzeit hier) automatisch ändern lassen könnte...

 

Hier mal einen Skript.

Erstellt eine MetaTrader Historie Statement Text Datei (*.csv) mit Option der Zeitverschiebung.

 

Konto_History_Zeitverschiebung.mq4

Für MetaTrader 4 Build 625 oder höher. Code funktioniert auch mit MQL5.

 

Mit 2 Eingabe Parametern

Stunden_Verschieben = Zeitverschiebung in Stunden (+/-)

DateiName = Name der Text Datei

 

Windows_8_1_-_Parallels_Desktop-10.png

Konto_History_Zeitverschiebung.mq4

  • Upvote 4
Link to comment
Share on other sites

Konto_History_Zeitverschiebung.mq4

Für MetaTrader 4 Build 625 oder höher. Code funktioniert auch mit MQL5.

 

Mit 2 Eingabe Parametern

Stunden_Verschieben = Zeitverschiebung in Stunden (+/-)

DateiName = Name der Text Datei

 

 

einfach klasse das KnowHow hier im Forum, muss noch auf Build 625 am Livekonto "upgraden" (ist noch 509) ...

 

Mit dieser Lösung geht es auf jedenfall; Stunden_Verschieben = Zeitverschiebung ... (+/-) good2.gif

 

DANKE!

Link to comment
Share on other sites

einfach klasse das KnowHow hier im Forum, muss noch auf Build 625 am Livekonto "upgraden" (ist noch 509) ...

 

Yep, denke ich auch.

Drück dem FinGeR mal alle Thanks Buttons die Du hier so finden kannst.

 

KnowHow ist bestimmt in anderen Foren auch vorhanden, nur wird das selten so schnell umgesetzt und dann noch sehr freizügig und öffentlich weitergegeben.

Und FinGeR und all die anderen jetzt ungenannten Top Leute gibt es natürlich nur bei uns.

Insofern ist das hier schon eine Wahnsinns Clique.

  • Upvote 2
Link to comment
Share on other sites

Also, weil Du es bist:

1. man sollte immer eine Sicherung haben, denn sonst gibt es kein zurück wink.gif

2. Liveupdate Dateien und Verzeichnis löschen

3. Alle Registry Einträge löschen, die auf den Metatrader oder Metaquotes hindeuten

4. Falls der MT mal fragt, ob er Änderungen am System vornehmen darf: ablehnen (tut er bei mir aber nicht mehr)

 

Guter Hinweis , vielen Dank . Und dann habe ich das auch versucht .

 

zu 2.) ich lösche die Anwendung "Liveupdate" im Metatrader-Ordner , es ist eine Anwendung . Aber welche Verzeichnisse sollen gelöscht werden ?

zu 3.) wie komme ich denn an die Registry ? Welche Einträge dort ?

 

Vielen Dank im voraus

 

KB

Link to comment
Share on other sites

Guter Hinweis , vielen Dank . Und dann habe ich das auch versucht .

 

zu 2.) ich lösche die Anwendung "Liveupdate" im Metatrader-Ordner , es ist eine Anwendung . Aber welche Verzeichnisse sollen gelöscht werden ?

zu 3.) wie komme ich denn an die Registry ? Welche Einträge dort ?

 

Vielen Dank im voraus

 

KB

 

Sorry für Verspätung.

Ich hatte auch noch einen Ordner namens Liveupdate. Kann aber sein, dass Du den nicht hast.

In der Registry habe ich einfach nach allem gesucht, was "Metatrader" oder "Metaquotes" beinhaltet und gelöscht.

Nur die Sache mit dem Editor habe ich drin gelassen, aber das kann man ja auch neu zuordnen.

  • Upvote 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...