Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   eine 2. TimeZone einrichten (http://www.expert-advisor.com/forum/showthread.php?t=4896)

traderdoc 30.04.16 00:12

Zitat:

Code:
int string Klammern = "verstanden";
int string Anfuehrungszeichen = "auch!";

double int Dezimalzahl = 2,567;

if(ich das mit den Klammern verstanden habe) {

Im Moment entwickelt sich alles zu einem gewissen "Wirrwarr".
Ich hoffe, dass sich die Fehler im obigen CodeSchnipsel in Grenzen halten, werde die Referenz-EA´s minimieren und versuchen die bleibenden Bestandteile den entsprechenden Rubriken zuzuordnen. Wenn das soweit erledigt ist, sollte sich der Timer, so hoffe ich, einfügen lassen.
Ich würde mich freuen, wenn Ihr mich weiter auf diesem Weg begleitet.
Vorab aber schon einmal ein Danke.

LG. piptrade
Ich lasse mal nur die Zeilen stehen, die einen Compilerfehler erzeugen werden.
Sind also schon noch einige.

traderdoc

piptrade 05.05.16 00:17

Habe mich zwischenzeitlich recht intensiv mit den 3 PRG-Zonen beschäftigt, weiß mittlerweile von Umstellungen der Termini im Editor usw. und kann so ev. zukünftige Fehler bei der PRG-Zuordnug vermeiden. (Hoffentlich)

Den Timer_Code betreffend habe ich mich ebenfalls "schlau zu machen" versucht:
Der Beitrag von traderdock - ich dachte schon, der o.a. code sei komplett - beinhaltet wahrscheinlich einen
kleinen Fehler sowie eine wichtige Auslassung.
Der kleine Fehler: wenn ich if(Handelsbedingungen Zone_1 mit Zone_2) verbinde, so darf dort nicht "||" stehen, sondern eher"&&". In den Tests wird nur "SO" getradet und auch die Pause zw. Zone_1 und Zone_2 berücksichtigt. Liege ich hier richtig oder "schief"?
Und zum Manko: Wenn ich die Anfangs- und End-Zeiten als kompatibele "string" hole, muss ich doch auch TimeCurrent als string und als kompatibelen Wert vorliegen haben. Soweit ich das richtig sehe, liegt aber in der "if Bedingung" TimeCurrent nur als Integer vor, was einen Vergleich nicht möglich macht. Stimmt das so ? Wenn dem so wäre, müßte TimeCurrent dann von Integer in string umgewandelt werden. Wenn auch dass stimmen sollte, würde eine wichtige Anweisung fehlen: die Umwandlung von TimeCurrent (Integer) zu CurrenTime (string).
Und wenn sogar dass stimmen sollte, wäre diese Umwandlung ---> SO möglich ? : CurrentTime = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE|TIME_MINUTES); ???
Wenn ich jetzt CurrentTime in den "if-Vergleich" einsetze, vergleiche ich wenigstens erst einmal strings mit strings, was u.U. ja auch möglich sein sollte.
In der Hoffnung, dass die o.a. Gedankengänge, ggf. auch der Lösungsvorschlag, i.O. sind, würde ich mich über die Reaktion von traderdoc oder von Top-SecreT richtig freuen. (Ihr seht, - auch, wenn es lange dauert, - dass ich mich wirklich mit der "Materie" beschäftige!)

LG. piptrade

PS.: Ich habe momentan eine Lösung gefunden, die tatsächlich auch funktioniert ! - allerdings nur auf hh-Basis. Helft mit bitte, die Lösung auch für hh:mm hinzubekommen. Weitere Thanks vorab!

traderdoc 05.05.16 10:08

In Post #14 war das && zwischen Time1 und Time2 noch richtig gesetzt und wurde ab Post # 18 mit || falsch übernommen und bis zu letzt durchgeschliffen.

Den Rest kann ich nicht ganz nachvollziehen in dem Drunter und Drüber.
Es ist wie es ist. Wenn eine Zeitangabe in Stringform der Art "08:00" in den externen Variablen angegeben wird, dann muß zur Vergleichbarkeit der String in datetime umgewandelt werden, mittels StrToTime(). Wird nun die Zeitmit der aktuellen Brokerzeit TimeCurrent() verglichen, dann darf natürlich TimeCurrent() in keinen String umgewandelt werden.
Ich denke, wir haben frühzeitig in diesem Thread eindeutig geklärt, dass nur in seltenen Fällen Strings miteinander verglichen werden können. Bei der o.g. Zeitangabe in Stringform geht es definitiv nicht.

traderdoc

piptrade 05.05.16 21:07

Nach den vielen Verwirrungen der letzten Posts - nun endlich `mal wieder etwas überaus positives:
DER TIMER LÄUFT !!!
Und das mit der Variante von traderdoc aus Post #20.

Gerade heute zum Männertag, - sollte dieses Resultat für alle Beteiligten mehr als nur erfreulich sein ! - Was mich betrifft, so bin ich mehr als nur glücklich !

Der Haken an der ganzen Geschichte war 1 Woche lang die in den letzten Posts beschriebene "Verwechslung" einer einzigen Verknüpfung, - die des Zeichens "||".
Was den ersten Test am heutigen Tag betrifft, hat der Timer sauber funktioniert und ab 17:30 das Trading, wie vorgegeben, wieder eingestellt. Morgen soll er seinen abschließenden Test bestehen, indem er pünktlich eröffnet, seine Pause einhält, von Neuem beginnt und auf die Minute genau den Tag dann beschließt. - und das alles zu "Ungeraden Zeiten".

Vielen, vielen Dank für die immer wieder neuen Hilfestellungen, für Hinweise und Ratschläge und die Kontinuität, mit welcher Ihr mir immer wieder zur Seite standet. Herzlichen Dank an Top-Secret und ein besonderes Dankeschön an traderdock.

LG. (vom glücklichen) piptrade :p

PS.: Werde mich morgen nochmal melden, um hoffentlich das o.a. für ein ganztägiges Trading bestätigen zu können.

piptrade 10.05.16 14:01

... und da bin ich wieder!

Es ist einfach toll, den kleinen Timer arbeiten zu sehen, - pünktlich auf die Minute wird geöffnet oder geschlossen. Somit kann ich das Funktionieren des kleinen Moduls nur bestätigen und mich nochmals bei traderdoc und Top-SecreT recht herzlich bedanken.
Super - immer wieder gerne - Danke !

Ganz LG. piptrade


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:31 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum