Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1189

 

Bitte beraten Sie mich, was ich mit dem Roboter tun soll? Der Test wird in jedem Terminal bei jedem Makler drei Monate vor Ende des Tests unterbrochen. Der Roboter hat keine Stopps, aber der Test stoppt....

Müde von....


 
Stanislav Korotky:

Wie eröffne ich ein MT4-Demokonto bei MetaQuotes Demo? Früher funktionierte es ohne Probleme, jetzt steht auf der letzten Seite des Dialogs: Registrierung, Bitte etwas warten, und in diesem Zustand bleibt er unendlich lange inaktiv, Felder mit Login und Passwort bleiben leer. Keine Meldungen im Protokoll. Ich habe sowohl "Demo" als auch "Real" und verschiedene Arten von Konten ausprobiert.

UPD: Ich habe eine Broker-Demo ausprobiert - das Gleiche.

Geprüft, auf Metacquot Server auch, keine neue Demo registriert, auf roboforex ohne Probleme neue Demo registriert


Mihail Matkovskij:

Es wird der Fehler 4401 angezeigt.

Prüfen Sie den Fehler in der Hilfe.

und es handelt sich nicht um einen bestimmten Funktionsaufruf, sondern um die Warteschlange, Tausch, der Fehler geht in einen anderen Bereich - das Diagramm ist nicht bereit, dann haben Sie den Aufbau der Historie eingeleitet, und wenn Sie die Funktion erneut aufrufen, kann die Historie bereits bereit sein, sie kann aber auch nicht bereit sein


in Indikatoren ist der Zugriff auf die Historie asynchron, wenn die Historie nicht bereit ist, wird ein Fehler zurückgegeben und die Historie wird vorbereitet, Sleep() funktioniert nicht in Indikatoren, wenn Sie also einen Fehler erhalten, lesen Sie beim nächsten Tick die Historie erneut, suchen Sie nach "Multisymbol"- oder "Multiperioden"-Indikatoren in kodobase und sehen Sie nach, wie die Historie von einem anderen Zeitrahmen oder Symbol gelesen wird, die Prinzipien sind die gleichen

 
Stanislav Korotky:

Wie eröffne ich ein MT4-Demokonto bei MetaQuotes Demo? Früher funktionierte es ohne Probleme, jetzt steht auf der letzten Seite des Dialogs: Registrierung, Bitte etwas warten, und in diesem Zustand bleibt er unendlich lange inaktiv, Felder mit Login und Passwort bleiben leer. Keine Meldungen im Protokoll. Ich habe sowohl "Demo" als auch "Real" und verschiedene Arten von Konten ausprobiert.

UPD Ich habe die Demo eines Brokers ausprobiert - das Gleiche.

MetaQuotes Demo-Server schließen

MetaQuotes Software Corp.

4. März 2009

Am 5. April 2009 wird der Server "demo.metaquotes.net" abgeschaltet. Das Geschichtszentrum mit der winzigen Geschichte wird jedoch seine Arbeit fortsetzen.

Seit diesem Tag weigert sich unser Unternehmen, den Demoserver zu benutzen. Gegenwärtig ist die Zahl der Unternehmen, die die MetaTrader 4-Plattform nutzen, so hoch, dass wir keine Notwendigkeit sehen, einen eigenen Server zu unterhalten.

 
Igor Makanu:

Suchen Sie den Fehler in der Hilfe

und es geht nicht um einen bestimmten Funktionsaufruf, sondern um die Reihenfolge, den Tausch, der Fehler geht an eine andere Stelle - das Diagramm ist nicht fertig, dann haben Sie mit dem Aufbau des Verlaufs begonnen und wenn Sie ihn erneut aufrufen, ist der Verlauf vielleicht schon fertig, genauso wie er überhaupt nicht fertig ist

Aber warum ist die Historie bei iBars(Symbol, Timeframe) nicht bereit, während sie bei iBars(Symbol(), Period()) völlig normal ist? Und es passiert nur, wenn das Terminal neu gestartet wird, nicht immer. Und die Variablen Symbol und Zeitrahmen werden im Initialisierungsabschnitt korrekt initialisiert (ich habe es selbst überprüft).

Versuchen Sie, mein Beispiel auszupressen:https://c.mql5.com/3/324/Test.mq5

Abfolge der Aktionen:

1. werfen Sie die kompilierte Datei in die Tabelle. Die Meldungen, die Sie erhalten, lauten:

2020.06.24 21:05:50.773 Lader::Lader Symbol: EURUSD Zeitrahmen: PERIOD_H1

2020.06.24 21:05:50.773 Lader::Laderiegel: 140433

2020.06.24 21:05:50.773 Loader::Loader Fehler: 0

2020.06.24 21:05:50.773 Lader::Laderiegel (2): 140433

2. Beenden Sie das Terminal und starten Sie es neu. Die Protokollmeldungen lauten wie folgt:

2020.06.24 21:07:34.963 Lader::Lader Symbol: EURUSD Zeitrahmen: PERIOD_H1

2020.06.24 21:07:34.963 Lader::Laderiegel: 0

2020.06.24 21:07:34.963 Loader::Loader Fehler: 4401

2020.06.24 21:07:34.964 Lader::Laderiegel (2): 140433

 
Mihail Matkovskij:

Aber warum erweist sich die Geschichte bei iBars(Symbol, Zeitrahmen) als unvollständig, während sie bei iBars(Symbol(), Periode()) ganz normal ist? Und es passiert nur, wenn das Terminal neu gestartet wird, nicht immer. Und die Symbol- und Zeitrahmenvariablen werden im Initialisierungsabschnitt korrekt initialisiert (ich habe es selbst überprüft).

noch einmal... Tauschen Sie diese 2 Zeilen aus und erhalten Sie Playback

ich kann mich irren, aber ich denke, es wird so sein, wie ich oben geschrieben habe - ich kann/kann es nicht näher ausführen

 
MakarFX:

@Artyom Trishkin

Sind Sie ein Moderator in diesem Thema?

Nicht nur

 
Artyom Trishkin:

Und nicht nur das

Woher weiß ich, wer mich gestern verbannt hat?
 
Mihail Matkovskij:

Aber warum stellt sich die Geschichte bei iBars(Symbol, Zeitrahmen) als unvollständig heraus, während sie bei iBars(Symbol(), Zeitraum()) ganz normal ist? Und es passiert nur, wenn das Terminal neu gestartet wird, nicht immer. Und die Variablen Symbol und Zeitrahmen werden im Initialisierungsabschnitt korrekt initialisiert (ich habe es selbst überprüft).

Versuchen Sie, mein Beispiel auszupressen:https://c.mql5.com/3/324/Test.mq5

Abfolge der Aktionen:

1. werfen Sie die kompilierte Datei in die Tabelle. Die Nachrichten, die Sie erhalten, wenn Sie dies tun:

2. Beenden Sie das Terminal und starten Sie es erneut. Die Meldungen im Protokoll lauten wie folgt:

Die historischen Daten sind innerhalb von zwei Minuten auf dem neuesten Stand. Um sie stets "heiß" zu halten, muss mindestens alle zwei Minuten ein nicht einheimisches Symbol/eine nicht einheimische Periode aufgerufen werden.

Wenn der Indikator zum ersten Mal auf historische Daten zugreift und nicht genügend lokale Daten vorhanden sind, wird das Laden der Daten gestartet und die Funktion gibt einen Fehler zurück. In diesem Fall muss OnCalculate() mit dem Rückgabewert Null beendet werden, so dass beim nächsten Tick keine Daten in der Variablen prev_calculates vorhanden sind - sie gibt die Menge der bereits berechneten Daten beim vorherigen Aufruf des OnCalculate()-Handlers an. Sobald genügend Daten geladen sind, wird kein Datenzugriffsfehler mehr angezeigt und Sie können mit OnCalculate() weiterarbeiten.

Noch etwas: Verwenden Sie nicht alle Funktionen, die das Laden von historischen Daten aus dem Indikator verursachen - wenn Sie versuchen, Daten des aktuellen Symbols und der aktuellen Periode zu verwenden, kann dies zu einem Absturz führen. Verwenden Sie rates_total data, um die Anzahl der Verlaufsbalken zu ermitteln.

All dies wurde bereits mehrfach im Forum erwähnt und in der Dokumentation dargestellt.

Ich habe keine Lust, danach zu suchen, aber ich erinnere mich gut daran, wo ich das alles selbst beschrieben habe, mit Links zu Quellen.

 
MakarFX:
Woher weiß ich, wer mich gestern verbannt hat?
Sie haben keine.
 
Artyom Trishkin:
Niemals.

Schade(

Dieser nichtsnutzige Mann hat mich aus Nachlässigkeit grundlos verbannt.

Grund der Beschwerde: