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
eine Variable global zu deklarieren und sie bei der Deklaration zu initialisieren, z.B. int kk=0;
dann in OnTick() unprint und Wert ändern, z.B. Print("kk=",kk); ++kk;
dann TF ändern - und das Ergebnis sehen.
es ist klar, dass die globale Variable ihren Wert behält, auch wenn die TF geändert wird - aber im Tester passiert nichts dergleichen.
ist klar, dass die globale Variable ihren Wert behält, auch wenn die TF geändert wird - aber im Tester passiert nichts dergleichen.
Jetzt haben Sie die Antwort auf die Ursache der unterschiedlichen Ergebnisse gefunden.
Beim Optimieren werden die Parameter neu gewählt, d.h. der Expert Advisor wird mit anderen Einstellungen neu gestartet.
Jetzt haben Sie die Antwort auf den Unterschied in den Ergebnissen gefunden.
Glauben Sie, dass die globale EA-Variable ihren Wert aus früheren Optimierungsläufen beibehält und auf die nächsten Läufe übertragen wird?
Überprüfen Sie es, es ist einfacher zu überprüfen als zu raten.
Renat hat oben geschrieben, dass der Optimierer "wie ein Uhrwerk" funktioniert und dass der Grund dafür im Code liegt -- er hat mehrmals empfohlen, ein Unpriming durchzuführen -- ich nehme an, dass das niemand getan hat.
Haben Sie es selbst überprüft? Gibt es eindeutige Beispiele dafür, dass ein einzelner Lauf anders funktioniert als ein Teil der Optimierung?
zum beispiel erinnere ich mich, dass das entfernen eines handles im tester früher nicht funktionierte, es führte zu einem speicherüberlauf und das terminal stürzte zusammen mit dem system ab. vielleicht wurde dieses problem bereits gelöst, aber es gibt immer noch einige tücken bei der erstellung und entfernung von indikator-handles und es gibt unterschiede zwischen optimizer und einzelnen indikatorläufen. wie ich weiß, haben die entwickler sehr hart daran gearbeitet, den speicherverbrauch zu beschleunigen und zu minimieren, wo immer es möglich war.
haben sie es selbst überprüft? gibt es klare beispiele, in welchen fällen ein einziger lauf anders funktioniert als im rahmen der optimierung?
In diesem Fall handelt es sich nicht um einen einzigen Lauf.
Überprüfen Sie die Initialisierung von global deklarierten Variablen.
Wenn die Initialisierung nicht in OnInit(), sondern in der Deklaration erfolgt und wenn ihre Werte im Code geändert werden.
Ein einfaches Beispiel:
Obwohl.... Der Compiler erzeugt die Warnung aus irgendeinem Grund nicht, wenn Sie die Deklaration in den globalen Bereich (((
Ich hatte etwas anderes erwartet...
Ein einfaches Beispiel:
Obwohl.... Der Compiler erzeugt die Warnung aus irgendeinem Grund nicht, wenn Sie die Deklaration in den globalen Bereich (((
Ich hatte etwas anderes erwartet.
Die fünfte Seite ging weiter, aber es gab immer noch keinen mql5-Code... Auch bei den Tests bleibt ein Geheimnis im Dunkeln: Symbol(e), Zeitraum(e), Testeinstellungen.
Nun, eine Frage noch, bevor ich mit der Grundierung beginne.
Ich habe zum Beispiel die Ergebnisse aufgezeichnet:
optimizer - kaufen;verkaufen;verkaufen;kaufen;kaufen;verkaufen
tester - kaufen;verkaufen;verkaufen;kaufen;kaufen;verkaufen;kaufen;kaufen;verkaufen
Wie können die Daten über diese"zusätzlichen" Geschäfte dazu beitragen, zu verstehen, aus welcher Obergrenze sie stammen? Vielleicht sollten wir auch die Preise der vorherigen Barren aufschreiben, oder was sonst?
Die fünfte Seite ging weiter, aber der mql5-Code war immer noch nicht da... Auch bei den Tests bleibt ein Geheimnis im Dunkeln: Symbol(e), Zeitraum(e), Testeinstellungen.
Willkommen zurück aus dem Urlaub ))))
Sie können alles hier sehen.
Ein einfaches Beispiel:
Obwohl.... Der Compiler erzeugt die Warnung aus irgendeinem Grund nicht, wenn Sie die Deklaration in den globalen Bereich (((
Ich hatte etwas anderes erwartet...
Wenn 'x' vom Typ double ist, sind die angegebenen Beispiele grundlegend falsch und der Zustand von 'y' ist in beiden Fällen undefiniert
d.h. es ist möglich, dass irgendwo in den Tiefen der neuronalen Netze entweder spezielle doppelte Werte - inf-types, nan-types oder ähnliche Werte wie eps - auftauchen