Frage: Was mache ich falsch? Die Arrays (STATIC) sind ausgefüllt, aber die Berechnung ergibt 0 (Null). Können Sie mir sagen, was ich in meinem Code nicht habe? Warum werden die Array-Elemente nicht verglichen und addiert...? Danke
double Open[60],High[60],Lo[60,Close[60]; int to_copy=60;
Frage: Was mache ich falsch? Die Arrays (STATIC) sind ausgefüllt, aber die Berechnung ergibt 0 (Null). Können Sie mir sagen, was ich in meinem Code nicht habe? Warum werden die Array-Elemente nicht verglichen und addiert...? Danke
1) Die Schleife geht über das Array hinaus - wenn die Puffergröße 60 beträgt, ist der letzte Index 59, weil der erste Index 0 ist
2) Der Code ist nicht vollständig - z.B. wie ist Tf definiert und mit was wurde die Kerze initialisiert?
* Beim Kopieren von Preisen wird die Indizierung um eins verschoben, da 60 Elemente ab dem ersten Index kopiert werden, d.h. die Preise des ersten geschlossenen Balkens befinden sich bereits unter Index 0
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich habe es schon im FAMA-Code gesehen, bevor ich die Höchst- und Tiefstpreise kopiert habe
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich sah es noch im FAMA-Code vor dem Kopieren der Preise High und Low
Es sieht nicht so aus... Das steht dort deutlich geschrieben. Sie prüft die Flagge... Lesen Sie es noch einmal.
Возвращает true, если в системной переменной _StopFlag содержится значение, отличное от 0. Ненулевое значение записывается в переменную _StopFlag, если поступила команда завершить...
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich habe es im FAMA-Code gesehen, bevor ich die Höchst- und Tiefstpreise kopiert habe
Wenn ein MQL-Programm gestoppt wird, wird das _StopFlag gesetzt, und es kann entweder mit einer vordefinierten Variablen oder der Funktion IsStopped() überprüft werden - was auch immer bequem ist, verwenden Sie es auf diese Weise.
nach dem Setzen von _StopFlag hat das MQL-Programm ein wenig Zeit, um anzuhalten, und dann wird es vom Terminal zwangsweise entladen
die am weitesten verbreitete Verwendung - Skripte in Schleifen, sollten Sie nicht
while(true)
{
...
}
ist es besser, es so zu schreiben:
while(!IsStopped())
{
...
}
Nun, manchmal werden bei Kostenkalkulationen oder in großen Zyklen
Können Sie mir sagen, ob es möglich ist, eine Schleife durch Variablen mit folgenden Namen zu ziehen: L1, L2, L3 ... Ln zum Schreiben in ein zweidimensionales Array
1) In der Schleife kommt es zu einem Überlauf des Arrays - wenn die Puffergröße 60 beträgt, dann ist der letzte Index 59, da der erste Index 0 ist
2) Der Code ist nicht vollständig - z.B. wie ist Tf definiert und mit was wurde die Kerze initialisiert?
* Beim Kopieren von Preisen wird die Indexierung um eins verschoben, da Sie 60 Elemente ab dem ersten Index kopieren, d.h. die Preise des ersten geschlossenen Balkens befinden sich bereits unter Index 0.
DANKE für Ihre Antwort. Vollständiger Code. Erhöht die statische Größe des Arrays. Null-Kontrollsatz in Operatoren entfernt. Allgemeiner "Dummy". Ich möchte immer noch nicht verstehen, WARUM es nicht als Zusatz zählt. Was steht jetzt nicht in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mit statischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
Допускается объявление не более чем 4-мерного массива. При объявлении динамического массива (массива с неуказанным значением в первой паре квадратных скобок) компилятор автоматически создает переменную указанной выше структуры (объект динамического массива) и обеспечивает код для правильной инициализации. Статические массивы При явном...
Können Sie mir sagen, ob es möglich ist, eine Schleife durch Variablen mit den Namen L1, L2, L3 ... Ln zum Schreiben in ein zweidimensionales Array
den Beitrag gelöscht - Sie kennen sich mit Arrays aus
aber noch nicht möglich
als Option, um eine Makro-Substitution zu schreiben, schreiben Sie ein konkretes Beispiel - vielleicht wird jemand ein Makro zu Ihrer Aufgabe schreiben, ich bin schlecht im Schreiben von Makros.
Vollständiger Code. Die Größe des statischen Arrays wurde erhöht. Entfernte Schreib-Null-Kontrolle in Operatoren... Allgemeiner "Dummy". Ich möchte immer noch nicht verstehen, WARUM es nicht als Addition zählt. Was steht jetzt nicht in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mitstatischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
Допускается объявление не более чем 4-мерного массива. При объявлении динамического массива (массива с неуказанным значением в первой паре квадратных скобок) компилятор автоматически создает переменную указанной выше структуры (объект динамического массива) и обеспечивает код для правильной инициализации. Статические массивы При явном...
DANKE für die Antwort. Vollständiger Code. Die Größe des statischen Arrays wurde erhöht. Nullkontrolleintrag in Operatoren entfernt... Allgemeiner "Dummy". Ich versuche immer noch herauszufinden, warum sie nicht hinzugefügt wird. Was fehlt jetzt noch in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mit statischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
Ich kenne mich mit Indikatoren nicht aus, aber das ist einfach unnötig. Ich habe es bereits ))))
intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
//+------------------------------------------------------------------+//| Поиск события и установка меток на графике |//+------------------------------------------------------------------+if(CopyOpen(NULL,PERIOD_H4,0,to_copy,Open)<to_copy)
return(0);
if(CopyHigh(NULL,PERIOD_H4,0,to_copy,High)<to_copy)
return(0);
if(CopyLow(NULL,PERIOD_H4,0,to_copy,Low)<to_copy)
return(0);
if(CopyClose(NULL,PERIOD_H4,0,to_copy,Close)<to_copy)
return(0);int indexmass=ArraySize(Open);
Gutes Internet und gute Gesundheit für alle.
Frage: Was mache ich falsch? Die Arrays (STATIC) sind ausgefüllt, aber die Berechnung ergibt 0 (Null). Können Sie mir sagen, was ich in meinem Code nicht habe? Warum werden die Array-Elemente nicht verglichen und addiert...? Danke
double Open[60],High[60],Lo[60,Close[60]; int to_copy=60;Comment(High[10],". ",candle);candle дает результат 0 нольGutes Internet und gute Gesundheit für alle.
Frage: Was mache ich falsch? Die Arrays (STATIC) sind ausgefüllt, aber die Berechnung ergibt 0 (Null). Können Sie mir sagen, was ich in meinem Code nicht habe? Warum werden die Array-Elemente nicht verglichen und addiert...? Danke
1) Die Schleife geht über das Array hinaus - wenn die Puffergröße 60 beträgt, ist der letzte Index 59, weil der erste Index 0 ist
2) Der Code ist nicht vollständig - z.B. wie ist Tf definiert und mit was wurde die Kerze initialisiert?
* Beim Kopieren von Preisen wird die Indizierung um eins verschoben, da 60 Elemente ab dem ersten Index kopiert werden, d.h. die Preise des ersten geschlossenen Balkens befinden sich bereits unter Index 0
Wie die Funktion funktioniert
IsStopped();... und welche Liste von Aufgaben erfüllt sie?
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich habe es schon im FAMA-Code gesehen, bevor ich die Höchst- und Tiefstpreise kopiert habe
Wie die Funktion funktioniert
... und welche Liste von Aufgaben erfüllt sie?
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich sah es noch im FAMA-Code vor dem Kopieren der Preise High und Low
Es sieht nicht so aus... Das steht dort deutlich geschrieben. Sie prüft die Flagge... Lesen Sie es noch einmal.
Wie die Funktion funktioniert
... und welche Liste von Aufgaben erfüllt sie?
In der Hilfe heißt es - "Überprüft die erzwungene Beendigung des mql5-Programms". Das heißt, er "schaut" sich eine bestimmte Anzahl von Codezeilen an und prüft, ob etwas korrekt ist? Wie ist ihr Zuständigkeitsbereich festgelegt (z. B. pro Zeile oder 10 Zeilen)?
Ich dachte, es verhindert nur, dass die Schleife über das Array hinausgeht, aber ich habe es im FAMA-Code gesehen, bevor ich die Höchst- und Tiefstpreise kopiert habe
Wenn ein MQL-Programm gestoppt wird, wird das _StopFlag gesetzt, und es kann entweder mit einer vordefinierten Variablen oder der Funktion IsStopped() überprüft werden - was auch immer bequem ist, verwenden Sie es auf diese Weise.
nach dem Setzen von _StopFlag hat das MQL-Programm ein wenig Zeit, um anzuhalten, und dann wird es vom Terminal zwangsweise entladen
die am weitesten verbreitete Verwendung - Skripte in Schleifen, sollten Sie nicht
ist es besser, es so zu schreiben:
Nun, manchmal werden bei Kostenkalkulationen oder in großen Zyklen
Hallo zusammen.
Können Sie mir sagen, ob es möglich ist, eine Schleife durch Variablen mit folgenden Namen zu ziehen: L1, L2, L3 ... Ln zum Schreiben in ein zweidimensionales Array
1) In der Schleife kommt es zu einem Überlauf des Arrays - wenn die Puffergröße 60 beträgt, dann ist der letzte Index 59, da der erste Index 0 ist
2) Der Code ist nicht vollständig - z.B. wie ist Tf definiert und mit was wurde die Kerze initialisiert?
* Beim Kopieren von Preisen wird die Indexierung um eins verschoben, da Sie 60 Elemente ab dem ersten Index kopieren, d.h. die Preise des ersten geschlossenen Balkens befinden sich bereits unter Index 0.
DANKE für Ihre Antwort. Vollständiger Code. Erhöht die statische Größe des Arrays. Null-Kontrollsatz in Operatoren entfernt. Allgemeiner "Dummy". Ich möchte immer noch nicht verstehen, WARUM es nicht als Zusatz zählt. Was steht jetzt nicht in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mit statischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
Comment("indexmass ",indexmass," Open ",Open[10]," candle ",candle," averpips ",averpips);Hallo zusammen.
Können Sie mir sagen, ob es möglich ist, eine Schleife durch Variablen mit den Namen L1, L2, L3 ... Ln zum Schreiben in ein zweidimensionales Array
den Beitrag gelöscht - Sie kennen sich mit Arrays aus
aber noch nicht möglich
als Option, um eine Makro-Substitution zu schreiben, schreiben Sie ein konkretes Beispiel - vielleicht wird jemand ein Makro zu Ihrer Aufgabe schreiben, ich bin schlecht im Schreiben von Makros.
Leute!!! (Hinweis ... )))
Vollständiger Code. Die Größe des statischen Arrays wurde erhöht. Entfernte Schreib-Null-Kontrolle in Operatoren... Allgemeiner "Dummy". Ich möchte immer noch nicht verstehen, WARUM es nicht als Addition zählt. Was steht jetzt nicht in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mitstatischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
DANKE für die Antwort. Vollständiger Code. Die Größe des statischen Arrays wurde erhöht. Nullkontrolleintrag in Operatoren entfernt... Allgemeiner "Dummy". Ich versuche immer noch herauszufinden, warum sie nicht hinzugefügt wird. Was fehlt jetzt noch in meinem Code? Vielen Dank für die Tipps. Ich habe noch nicht mit statischen Arrays in mql5 gearbeitet.....
ICH HABE DEN CODE AKTUALISIERT. Die Frage ist dieselbe...
Ich kenne mich mit Indikatoren nicht aus, aber das ist einfach unnötig. Ich habe es bereits ))))