Falsche Zeitangaben
Was ist denn hier los?
Bei der Abfrage der Konstanten PERIOD_H1, PERIOD_H4 und PERIOD_D1 gibt die Printzeile die Werte 16385, 16388 und 16408 aus. Da sollte normalerweise 60, 240 und 1440 stehen. traderdoc |
Ja, das ist in MQL5 schon deutlich anders als in MQL4.
Es werden Zahlen Binär geshiftet um auf diese Werte zu kommen. Danach wird noch die Minuten/Stunden/Wochen/Monate hinzugefügt. 0 um 15 stellen nach Links ergibt immer noch 0 Daher ist für Minuten alles ganz einfach Für Minuten: M1 = 0<<15+1 = 0 M5 = 0<<15+5 = 5 M15 = 0<<15+15 = 15 M30=0<<15+30 = 30 Bei Stunden wird eine 1 um 15 Bits geshiftet, das ergibt dann 2^14 = 16.384 H1 = 1<<15+1 = 16384 + 1 = 16385 H4 = 1<<15+4 = 16384 + 4 = 16388 D1 = 1<<15+24 = 16384 + 24 = 16408 Bei Wochen wird eine 1 um 16 Bits geshiftet, das ergibt dann 2^15 = 32.768 W1 = 1<<16+1 = 32.768+ 1 = 32.769 Für Monate dann alt ein Shift um 17 Bits, also 2^16 = 65.536 MN1 = 1<<17+1 = 65.536 +1 = 65.537 Um Umrechnungen zwischen Perioden durchzuführen, solltest du PeriodSeconds() nutzen. Dann stehen alle Perioden als Sekundenwerte zur Verfügung. PeriodSeconds(PERIOD_D1) / PeriodSeconds(PERIOD_H1) = 24 Ist doch alles ganz einfach oder? Gruß Timo |
Danke, ja klar, alles ganz einfach. Und wo liegt jetzt der Vorteile?
traderdoc |
Alle Zeitangaben in WEZ +2. Es ist jetzt 05:56 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