Ich versuche, Arrays zu verstehen und habe die folgende Frage.
Warum wird in diesem BeispielArraySetAsSeries verwendet und das Flag true gesetzt, wenn inCopyRates die Zählung von der Gegenwart in die Vergangenheit erfolgt?
Ich verstehe, dass die FunktionArraySetAsSeries notwendig ist, um das Array von der Gegenwart bis zur Vergangenheit zu durchsuchen.
Ich möchte den Zweck dieser Funktion in diesem Beispiel verstehen.
Nach
ArraySetAsSeries(rates,true);
rates[0] entspricht dem RECHTEN BAR im Diagramm. Dies ist die einfachste Erklärung, ohne die verwirrenden Begriffe "Gegenwart" und "Zukunft".
Ich habe einen Code mit der Bedingung "kaufen" geschrieben, wenn MA(20) MA(50) von unten nach oben kreuzt
In Wirklichkeit läuft es aber so ab
Grober Fehler: Sie erstellen bei jedem Tick zwei Indikator-Handles. Die richtige Vorgehensweise ist
int SmallMovingAverageDefinition = iMA(_Symbol,_Period,SmallMovingAverage,0,MODE_SMA,PRICE_CLOSE);
int BigMovingAverageDefinition = iMA(_Symbol,_Period,BigMovingAverage,0,MODE_SMA,PRICE_CLOSE);
zu OnInit verschieben, eine Überprüfung der Korrektheit des Handles hinzufügen.
Идея автоматической торговли привлекательна тем, что торговый робот может без устали работать 24 часа в сутки и семь дней в неделю. Робот не знает усталости, сомнений и страха, ему не ведомы психологические проблемы. Достаточно четко формализовать торговые правила и реализовать их в виде алгоритмов, и робот готов неустанно трудиться. Но прежде...
Das Problem ist behoben, alles scheint zu funktionieren).
Ich habe zwei MA-Indikatoren in die OnInit-Funktion übertragen.
Ich verstehe, dass wir nur den Indikator-Handle in der OnInit-Funktion erstellen und alle anderen Manipulationen mit den Arrays in der OnTick-Funktion durchführen und sie bei jedem Tick überprüfen?
В языке MQL5 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL5: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
Guten Tag!
Ich versuche, Arrays zu verstehen und habe die folgende Frage.
Warum wird in diesem BeispielArraySetAsSeries verwendet und das Flag true gesetzt, wenn inCopyRates die Zählung von der Gegenwart in die Vergangenheit erfolgt?
Ich verstehe, dass die FunktionArraySetAsSeries notwendig ist, um das Array von der Gegenwart bis zur Vergangenheit zu durchsuchen.
Ich möchte den Zweck dieser Funktion in diesem Beispiel verstehen.
Nach
rates[0] entspricht dem RECHTEN BAR im Diagramm. Dies ist die einfachste Erklärung, ohne die verwirrenden Begriffe "Gegenwart" und "Zukunft".
Nach
rates[0] entspricht dem RECHTEN BAR im Diagramm. Dies ist die einfachste Erklärung, ohne die verwirrenden Begriffe "Gegenwart" und "Zukunft".
Vielen Dank für die Antwort!
Aber wenn wirArraySetAsSeries nicht verwenden, dann wirdCopyRates auch rates[0] dem Balken ganz rechts im Diagramm zuweisen.
Nur versuchen zu verstehen, was istArraySetAsSeriesFunktion für, wenn es das gleiche ohne es funktioniert?
Oder ist es einfach nur eine akzeptierte Form, Code zu schreiben?
Vielen Dank für die Antwort!
Aber wenn wirArraySetAsSeries nicht verwenden, dann wirdCopyRates auch rates[0] dem Balken ganz rechts im Diagramm zuweisen.
Nur versuchen zu verstehen, warumArraySetAsSeriesFunktion benötigt wird, wenn es das gleiche ohne es funktioniert?
Oder ist es einfach nur eine akzeptierte Form, Code zu schreiben?
Sie liegen falsch, CopyRates weist rate[0] aufgrund der Größe des rate[]-Arrays dem ältesten Wert zu.
Ich danke Ihnen!
Jetzt verstehe ich, dass ich mich geirrt habe.)
Guten Tag!
Wieder einmal bitte ich um Hilfe!
Ich habe einen Code mit der Bedingung "kaufen" geschrieben, wenn MA(20) MA(50) von unten nach oben kreuzt
In Wirklichkeit läuft es aber so ab
Guten Tag!
Wieder einmal bitte ich um Hilfe!
Ich habe einen Code mit der Bedingung "kaufen" geschrieben, wenn MA(20) MA(50) von unten nach oben kreuzt
In Wirklichkeit läuft es aber so ab
Grober Fehler: Sie erstellen bei jedem Tick zwei Indikator-Handles. Die richtige Vorgehensweise ist
zu OnInit verschieben, eine Überprüfung der Korrektheit des Handles hinzufügen.
Auch Arrays, die Werte aus IMA übernehmen, müssen
Vielen Dank für Ihre prompte Antwort!
Ich verstehe überArraySetAsSeries.
Ich werde versuchen, herauszufinden, wie man den Indikator nach OnInit verschiebt, und das Handle überprüfen.
***
Vielen Dank für Ihre prompte Antwort!
Ich verstehe überArraySetAsSeries.
Ich werde versuchen, herauszufinden, wie man den Indikator nach OnInit verschiebt, und das Handle überprüfen.
***
Alles ist von Anfang an da
Es ist alles von Anfang an da.
Danke, ich werde es studieren.
Das Problem ist behoben, alles scheint zu funktionieren).
Ich habe zwei MA-Indikatoren in die OnInit-Funktion übertragen.
Ich verstehe, dass wir nur den Indikator-Handle in der OnInit-Funktion erstellen und alle anderen Manipulationen mit den Arrays in der OnTick-Funktion durchführen und sie bei jedem Tick überprüfen?