Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 144
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Lesen Sie sorgfältig:
Rückgabewert
Die Funktion gibt den Index des gefundenen Elements zurück, wobei die Serialität des Arrays berücksichtigt wird. Schlägt sie fehl, gibt die Funktion -1 zurück.
Daher sollte es so sein:
1. Korrigieren Sie mich, wenn ich etwas falsch verstanden habe.
Alle Minima im Intervall gefunden:
Da es ein Array mit Minima gibt, verwenden wir die Funktion ArrayMinimum, um nur das Minimum aus dem Array zu finden, ohne die Lücke in der Zeit(tss,tspp) aufzuzählen
2. Im Skript habe ich den Code in eine Funktion eingefügt:
alle Zeitparameter werden korrekt angezeigt, aber die Variable min=0,0, obwohl sie beim Bieten das Minimum des angegebenen Intervalls anzeigt. Was könnte das Problem sein?
1. Korrigieren Sie mich, wenn ich etwas falsch verstanden habe.
Wir haben alle Minima in diesem Intervall gefunden:
Da es ein Array mit Minima gibt, verwenden wir die Funktion ArrayMinimum, um nur das Minimum aus dem Array zu finden, ohne die Lücke in der Zeit(tss,tspp) aufzuzählen
2. Im Skript habe ich den Code in eine Funktion eingefügt:
alle Zeitparameter werden korrekt angezeigt, aber die Variable min=0,0, obwohl sie beim Bieten das Minimum des angegebenen Intervalls anzeigt. Was könnte das Problem sein?
Im Geltungsbereich der Variablen. Machen Sie es global.
Verschobene Variable "double min;" zu global noch =0,0
Drehbuch:
In den Skripten gibt es kein OnInit und OnDeinit.Sie haben einen Fehler in Ihrer Dokumentation https://www.mql5.com/ru/docs/constants/chartconstants/charts_samples
int ChartFirstVisibleBar(constlong chart_ID=0)
{
//--- eine Variable vorbereiten, um den Wert der Eigenschaft zu erhalten
long result=-1;
//--- den Fehlerwert zurücksetzen
ResetLastError();
//--- den Wert der Eigenschaft ermitteln
if(!ChartGetInteger(chart_ID,CHART_WINDOW_YD ISTANCE,0,result)) sollte es sein CHART_FIRST_VISIBLE_BAR
{
//--- die Fehlermeldung in das "Experten"-Journal drucken
Print(__FUNCTION__+", Fehlercode = ",GetLastError());
}
//--- Rückgabe des Wertes der Diagrammeigenschaft
return((int)result);
}
Drehbuch:
In den Skripten gibt es kein OnInit und OnDeinit.Vielen Dank!!!
Bei mir hat es funktioniert!!!
Bitte sagen Sie mir, welche Programme zu verwenden, um den EA zu schützen und die Zeit der Arbeit zu begrenzen, zum Beispiel muss ich den EA von der Dekompilierung zu schützen, so dass es nur für 5 Tage arbeitet.
Ich benötige ein Programm, mit dem ich die Laufzeit des EA dauerhaft begrenzen kann, um den EA an andere Personen zum Testen weiterzugeben.
Beim Testen eines EA bin ich auf folgende Schwierigkeit gestoßen.
Der Expert Advisor handelt nicht (er muss es), wenn:
Beim Testen habe ich die Stop-Parameter von 1 bis 33 und die Start-Parameter von 1 bis 33 eingestellt.
Natürlich liefert das Prüfgerät etwa 2/3 der Null-Ergebnisse, da beim Überschießen manchmal Stopp > Start im Prüfgerät auftritt.
Diese Nulltests sind sehr zeitaufwendig.
Frage: Wie kann man das Testen von Nulltests im Code des Expert Advisors deaktivieren?
Logischerweise sollte die Testzeit nach dem Verbot verkürzt werden?
Beim Testen eines EA bin ich auf folgende Schwierigkeit gestoßen.
Der Expert Advisor handelt nicht (er muss es), wenn:
Beim Testen habe ich die Stop-Parameter von 1 bis 33 und die Start-Parameter von 1 bis 33 eingestellt.
Natürlich liefert das Prüfgerät etwa 2/3 der Null-Ergebnisse, weil beim Überschießen manchmal Stopp > Start im Prüfgerät auftritt.
Diese Nulltests sind sehr zeitaufwendig.
Die Frage ist, wie man das Testen von Nulltests im EA-Code deaktivieren kann.
https://www.mql5.com/ru/docs/common/expertremove
Das funktioniert im Tester // Zumindest funktionierte es im vorletzten Build. Es ist eine Weile her, dass ich es überprüft habe.
https://www.mql5.com/ru/docs/common/expertremove
es funktioniert im tester. // zumindest funktionierte es im vorletzten build. es ist eine Weile her, seit ich es überprüft habe.
Ich brauche einen Testpass. Der EA handelt nicht, wenn:
Ich möchte dies tun, um die Testzeit zu verkürzen.
Vielleicht gibt es im Tester eine Funktion speziell für die Eingabeparameter, um die gleichen Parameter wie im EA einzustellen?
Wenn wirStop <=Start erhalten, lassen wir diesen Durchgang aus.