Fehler, Irrtümer, Fragen - Seite 2659
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
geprüft durch Ausgabe an OnTester()
das Bild ist dasselbe wie oben
hier ist die Frage des Vertrauens, dass, wenn Sie optional NS durch GA-Tester übergeben - es ist nicht sicher, dass alle lokalen Prozessorkerne nicht mit der gleichen anfänglichen Konfiguration der NS-Gewichte arbeiten - es verdirbt Trainingsergebnisse, imho
können Sie versuchen, eine Funktion der Passnummer als Generierungsbasis zu verwenden.
Wenn es einige Eingabeparameter gibt, die sich während der Optimierung ändern, kann ihre Kombination (Summe, Produkt, Grad...) verwendet werden, um eine Basis für die Erzeugung von Pseudo-Zufallszahlen zu schaffen. Wahrscheinlich (aber nicht sicher :D ) wäre ein Nebeneffekt, dass man den Code mit "zufälligen" Zahlen in einem einzigen Durchgang reproduzieren könnte.
können Sie versuchen, eine Funktion der Passnummer als Generierungsbasis zu verwenden.
Wenn es einige Eingabeparameter gibt, die sich während der Optimierung ändern, dann kann ihre Kombination (Summe, Produkt, Grad...) verwendet werden, um die Basis der Pseudo-Zufallszahlengenerierung festzulegen. Wahrscheinlich (aber nicht sicher :D ) wäre ein Nebeneffekt, dass man den Code mit "zufälligen" Zahlen in einem einzigen Durchgang reproduzieren könnte.
Man kann eine Reihe von relativ zufälligen Zeichen mit wenigen Kilobytes erzeugen/finden (Puschkins Text:) ). Alles läuft auf eine schlaue Implementierung der Zufälligkeit hinaus, um die Anforderungen der Aufgabe zu erfüllen, wenn der Vorschlag nicht überprüft wird. Ich erinnere mich an solche Probleme in vielen Bibliotheken.
Kollegen, könnten Sie vorschlagen, wenn ich ChartOpen() öffne, wie kann ich den Fokus (Aktivität, Sichtbarkeit) auf den Chart zurückbringen, mit dem der Expert Advisor arbeitet, ohne ihn zu schließen?
Und wer weiß, warum Bid, Ask nicht mit dem Chartpreis Close[0]https://www.mql5.com/ru/forum/160683/page1082#comment_15152111 übereinstimmen.
Es kommt darauf an, dass Sie die Randomisierung so geschickt einsetzen, dass sie den Anforderungen der Aufgaben gerecht wird.
Ich glaube nicht, dass das das Problem ist... der Pseudo-Zufallsgenerator selbst funktioniert recht gut, das Problem liegt in der Generierungsbasis - bei konstanten Eingaben (während der Optimierung) ist die Basis gleich, so dass die Ergebnisse immer nahe beieinander liegen. ich habe vorgeschlagen, wie man die Streuung der Generierungsbasis maximieren kann
Ich habe den Eindruck, dass dies nicht das Problem ist... der Pseudo-Zufall selbst funktioniert gut, das Problem liegt in der Generierungsbasis der Serie - bei konstanten Eingaben (während der Optimierung) ist die Basis gleich, so dass die Ergebnisse immer nahe beieinander liegen. ich habe vorgeschlagen, wie man die Streuung der Generierungsbasis maximieren kann
Ich stimme zu. Ich meinte nur die Tatsache, wenn ich mich recht erinnere, dass oft gefunden (sind) Bibliotheken, die nicht funktionieren Initialisierung, dh ohne Grund die gleiche Basis, wenn nicht überprüft und verwendet, viele wissen nicht darüber.
Bild wie oben
crusty Lösung direkt - Set Nummer für srand in EA-Eigenschaften. oder nehmen Sie aus Hash von Parametern, dann zumindest Randoms werden unterschiedliche Initialisierung.
Ich habe gestern diese Lösung gefunden, die korrekt funktioniert
meine Fragen beziehen sich allgemein auf die Korrektheit von rand() in teter, jetzt habe ich alglib durchsucht, es verwendetMathRand() einmal in randomreal(), das dann oft innerhalb der alglib-Bibliothek verwendet wird
meine Fragen beziehen sich allgemein auf die Korrektheit von rand() im Teter
Um eine gute Zufälligkeit im Tester zu erhalten, kann man offenbar nicht mit der Zeit initialisieren.
das ist genau das, was es ist
schrieb gestern, dass dies der Dokumentationhttps://www.mql5.com/ru/forum/1111/page2657#comment_15165819 widersprichtund das MathSrand()-Beispiel aus der Hilfe ein anderes Ergebnis liefert als im Tester erwartet
UPD: mein Problem ist ein bisschen tiefer - ich möchte Tester für Deep Learning verwenden und die bestmöglichen NS-Konfigurationen über den Austausch von Agenten zu Agenten speichern - ich habe alles im Allgemeinen geplant, aber ich wollte Kollisionen über Agentenstart (oder -stopp) Pause mit Zufallswert behandeln.... aber leider sind nicht alle Zufallswerte in Tester-Agenten zufällig )))
In den meisten Fällen müssen Sie im Prüfgerät die Reproduzierbarkeit der Ergebnisse sicherstellen. Die Anforderung, dass die Ergebnisse randomisiert werden, ohne dass die Eingabeparameter und der Zustand der Umgebung (alle Funktionen, die mit der virtuellen Zeit zusammenhängen) geändert werden, widerspricht der Aufgabe und der Implementierung des Testers.
es ist in Ordnung, was Sie schreiben, aber ich muss die Reihenfolge des Zugriffs auf die Agenten beim Speichern in der Datenbank trennen
Sie benötigen im Wesentlichen eine lokale Agenten-ID im Testgerät, ich weiß nicht, warum es diese Funktion nicht gibt.