Analog zu iBarShift - Seite 8

 
Vitaly Muzichenko:

Ich überprüfte schnell: es gibt eine Funktion, die für mehr als einen Tag gearbeitet hat, ersetzte ichiBarShift3 statt und bekam die EA falsch zu arbeiten. Das ist die Schlussfolgerung, die ich daraus gezogen habe.

Hier ist die von mir verwendete Version

Versuchen Sie dies mit Ihrer Funktion zu tun:

Print("iBarShift1 = "+IntegerToString(iBarShift (_Symbol,PERIOD_H1,D'04.04.2018 08:00:01')));
Print("iBarShift0 = "+IntegerToString(iBarShift (_Symbol,PERIOD_H1,D'04.04.2018 08:00:00')));

Ihre Funktion wird andere Werte ausgeben, aber die Stunde ist dieselbe. Das bedeutet, dass es nicht funktioniert.

Die native Funktion in MQL4 liefert die gleichen Werte.

iBarShift3 liefert ebenfalls dieselben Werte, aber für die Zeiträume D1, W1 und MN1 ist es ebenso falsch. Ich muss den Code noch ein wenig optimieren. Ich weiß, wie man das macht, und werde es später tun, wenn ich genug Zeit habe.

Ansonsten verhalten sich diese Funktionen gleich, nur iBarShift3 ist viel schneller.


ZS: Entschuldigung. Ihre Funktion arbeitet korrekt. Ich habe den falschen Code eingegeben. Meiner verhält sich in den Zeiträumen D1, W1 und MN1 nicht korrekt. Ich werde das heute noch in Ordnung bringen.

 
Ich bin schon durch die Programmiersäulen verwirrt - welche Funktion zählt denn nun genau alles auf allen TFs?
 
Aleksey Vyazmikin:
Ich bin schon durch die Programmiersäulen verwirrt - welche Funktion zählt denn nun genau auf allen TFs?
Logischerweise scheint die langsamste Funktion die richtige zu sein :-)
 
Aleksey Vyazmikin:
Ich bin schon durch die Programmiersäulen verwirrt - welche Funktion zählt denn nun genau alles auf allen TFs?
https://www.mql5.com/ru/forum/743/page7#comment_6995147
 
Aleksey Vyazmikin:
Ich bin schon durch die Programmiersäulen verwirrt - welche Funktion zählt denn nun genau alles auf allen TFs?
Und funktioniert alles korrekt, wenn es Taktaussetzer gibt?
 
Yury Kirillov:
Wenn man sich die Logik ansieht, scheint der Langsamste es richtig zu machen :-)

Nein, der langsamste ist nicht der richtige, wenn man den zuvor geposteten Indikator betrachtet.

Yury Kirillov:
Und funktionieren alle korrekt, wenn es Lücken in den Balken gibt?

Dies ist sehr wichtig, denn manchmal vergeht die Zeit und es gibt keinen Balken, besonders bei kleinen TFs, dann kann die Anzahl der Balken mit Minuten an verschiedenen Tagen unterschiedlich sein...

 
Vitaly Muzichenko :

Ich überprüfte schnell: es gibt eine Funktion, die für mehr als einen Tag gearbeitet hat, ersetzte ich iBarShift3 statt und bekam die EA falsch zu arbeiten. Das ist die Schlussfolgerung, die ich daraus gezogen habe.

Hier ist die von mir verwendete Version

Dies ist mein Code. Gibt es Probleme?

 
Nikolai Semko :
...

Alle zuvor verfügbaren Algorithmen, einschließlich des von @Alain Verleyen, weisen anormale Situationen auf.

Sie können ein vollständiges Analogon von iBarShift MQL4 erstellen, aber der Code wird sehr umständlich sein und ich sehe keinen Sinn darin.

Welches Problem haben Sie gefunden?

 
Alain Verleyen:

Welches Problem haben Sie festgestellt?

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

iBarShift Analog

Nikolai Semko, 2018.04.04 17:47

Versuchen Sie dies mit Ihrer Funktion zu tun:

Print("iBarShift1 = "+IntegerToString(iBarShift (_Symbol,PERIOD_H1,D'04.04.2018 08:00:01')));
Print("iBarShift0 = "+IntegerToString(iBarShift (_Symbol,PERIOD_H1,D'04.04.2018 08:00:00')));

Ihre Funktion wird andere Werte liefern, aber die Stunde ist dieselbe. Es funktioniert also nicht.

In MQL4 liefert die native Funktion die gleichen Werte.

iBarShift3 liefert ebenfalls dieselben Werte, aber für die Zeiträume D1, W1 und MN1 liegt es ebenso falsch. Ich muss den Code noch ein wenig optimieren. Ich weiß, wie man das macht, und werde es später tun, wenn ich genug Zeit habe.

Ansonsten verhalten sich diese Funktionen gleich, nur iBarShift3 ist viel schneller.


ZS: Entschuldigung. Ihre Funktion arbeitet korrekt. Ich habe den falschen Code eingegeben. Meiner verhält sich in den Zeiträumen D1, W1 und MN1 nicht korrekt. Ich werde es heute in Ordnung bringen.


 
Vitaly Muzichenko :

Ich danke Ihnen.
Grund der Beschwerde: