Einzelnen Beitrag anzeigen
  #16 (permalink)  
Alt 31.01.17
traderdoc traderdoc ist offline
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Das kann ich alles verstehen, ging mir vor 10Jahren auch nicht anders. Die Zeitbetrachtungen sind im MQL4 nicht unbedingt die Anwerderfreundlichsten.
Folgendes, die Zeiten werden in Sekunden angegeben, die seit dem 01.01.1970 bis zu dem jeweiligen Zeitpunkt verstrichen sind.
Einfaches Beispiel, wir nehmen mal an:
OrderCloseTime() = 23410000 (also 23410000 Sekunden nach dem 01.01.1970 geschlossen)
und ein Tag hat 86400 Sekunden. Sollte z.B. der Tagwechsel per Shift bei 23400000 sein, dann würde der Tag bis 23486400 gehen.
D.h. wenn nun Dein Shift auf diesen Tag zeigt, dann beträgt die Zeit über iTime(NULL, PERIOD_D1, Shift) 23400000.
D.h. nun wieder, wenn Du genau für diesen Tag Shift die Profits der Orders auslesen willst, dann darf die zu betrachtende CloseTime nur bis 1 Sekunden vor 23486400 gehen, ausgedrückt über
if (OrderCloseTime() < iTime(NULL, PERIOD_D1, Shift-1)
Shift-1 wäre ja der Beginn des darauffolgenden Tages. Wenn ab Shift die Orders der folgenden x Tage auch genommen werden sollen, dann entsprechend
Shift-x.

Noch dezidierter kann ich es nicht erklären.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.