Wunder mit dem Testgerät. - Seite 3

 
notused:
Die Ergebnisse der Durchgänge stimmen bei der Optimierung und dem Einzeldurchgang nicht überein (Service-Desk - #329165 + EA an der gleichen Stelle)
Lassen Sie es uns herausfinden.
 
notused:
Optimierungs- und Single-Pass-Ergebnisse stimmen nicht überein (service-desk - #329165 + EA auch dort)
619 bauen? Auch dieses Problem ist bereits aufgetreten. Aber nicht immer. Manchmal sind die Ergebnisse sogar die gleichen, d. h. es wurde keine neue Optimierung vorgenommen, aber die Testergebnisse sind irgendwie anders. So unterscheidet sich beispielsweise der Endgewinn in der Grafik von dem in der Liste. Nach einiger Zeit ist alles wiederhergestellt. Das ist mir vor Build 619 nie aufgefallen.
 
tol64:
619 bauen? Das gleiche Problem ist nun auch bei uns aufgetreten. Aber nicht immer. Manchmal sind die Ergebnisse sogar die gleichen, d. h. ich habe keine neue Optimierung vorgenommen, aber beim Testen erhalte ich aus irgendeinem Grund andere Ergebnisse. So unterscheidet sich beispielsweise der Endgewinn in der Grafik von dem in der Liste. Nach einiger Zeit ist alles wiederhergestellt. Dies ist mir vor Build 619 noch nie aufgefallen.
Der Build 607 (habe noch nicht auf die neue FIBO aktualisiert). Vielleicht ist das Problem in Multicurrency und Timer (OnTick() wird nicht verwendet), aber nicht sicher.
 
notused:
Der Build ist immer noch 607 (ich habe noch nicht auf die neue FIBO aktualisiert). Vielleicht ist das Problem Multicurrency und Timer (OnTick() wird nicht verwendet), aber nicht sicher.
Dann wird der Name für den Zweig sorgfältig ausgewählt. Wunder mit dem Testgerät. )))
 

Mit der neuesten Version des Strategietesters stimmt etwas nicht. Plötzlich (nicht ganz "plötzlich", aber nach dem Update auf die 619-Build) der Expert Advisor hat praktisch aufgehört zu testen (das gleiche wie in der Anwendung # 329165) - Speicher begann immens verbraucht werden (die "All ticks" Modus für 5 Jahre):

Die letzte Spalte ist "VM-Größe". Wie Sie sehen können, habe ich 4 Kerne + 4 "entfernte" lokale Agenten (hat immer gut funktioniert).

Gleichzeitig fängt das System an, sehr stark zu verzögern (ja, 4 GB RAM + 16 GB für PageFile) und die Optimierungsgeschwindigkeit tendiert gegen unendlich. Wie Sie sehen können, ist die CPU-Zeit praktisch nicht belegt.

Gleichzeitig werden Fehler im Protokoll angezeigt:

Dies ist offenbar auf einen Mangel an Speicherplatz zurückzuführen.

Ich drücke "Stopp" - der Speicher wird nicht sofort freigegeben. Nach 5 Minuten verschwanden die lokalen Agenten, nach weiteren zwei Minuten wurde der Speicher der entfernten Agenten freigegeben:

Nur nicht klar, warum ein Agent noch mehr als 100Mb hängen (ich glaube nicht, dass es Cloud nahm - weil CPU-Zeit nicht verwendet wird).

Nun, ich deaktiviere "entfernte" lokale Agenten. Es ändert sich nichts (Systemverzögerungen und Fehler).

Nun, ich denke, der Fehler liegt in meinem Expert Advisor. Daher beginne ich mit dem Testen eines Standard-ExpertMACD, EURUSD, h12 von 2007.09.01 bis 2012.03.26.

И... Gleiches Bild - Verzögerungen, verrückter Speicherverbrauch (fast die gleichen Werte wie im ersten Bild) + "cannot initialize expert".

In beiden Fällen sind einige Pässe dennoch erfolgreich.

Protokoll beigefügt.

Sehr interessante Zeilen:

CJ      0       local4  17:42:32        USDNOK: history synchronization started
QL      0       Core 1  17:42:33        USDNOK: history synchronization started
RK      0       local4  17:43:49        USDNOK: history downloading completed
GL      0       Core 1  17:43:49        USDNOK: history downloading completed
NM      0       Core 1  17:43:49        USDNOK: history for 2006 year synchronized
QJ      0       local4  17:43:49        USDNOK: history for 2006 year synchronized

usw. mit USDNOK - in meinem EA wurde ein SGDJPY-Symbol in den Code eingefügt - warum USDNOK herunterladen (USDJPY wurde laut Logs erfolgreich hochgeladen), anstatt USDSGD?

Wenn überhaupt, ist der Server ein FIBOGroup-MT5-Server.

P. S. In früheren Builds habe ich solche Probleme nicht gesehen.

P. P. S. Bitte überprüfen Sie die Optimierung des Standard-ExpertMACD für die letzten 5 Jahre auf allen Ticks.

Dateien:
20120326.log  33 kb
 
notused:

Mit der neuesten Version des Strategietesters stimmt etwas nicht. Plötzlich (nicht "plötzlich", aber nach dem Update auf Build 619) EA hat praktisch aufgehört zu testen (das gleiche wie in der Anwendung #329165) - Speicher beginnt verbrauchen eine enorme Menge (der Modus "Alle Ticks" für 5 Jahre):

Die letzte Spalte ist "VM-Größe". Wie Sie sehen können, habe ich 4 Kerne + 4 "entfernte" lokale Agenten (hat immer gut funktioniert).

Das System wird furchtbar langsam (ja, 4 GB RAM + 16 GB für PageFile verschenkt) und die Optimierungsgeschwindigkeit tendiert gegen unendlich. Wie Sie sehen können, ist die CPU-Zeit praktisch nicht belegt.

Es wird nicht empfohlen, mehr Agenten laufen zu lassen als Kerne vorhanden sind. Eine zu große Anzahl von Agenten führt zu einem nichtlinearen Geschwindigkeitsabfall und einem steigenden Ressourcenverbrauch. Vor allem, wenn nur 4 GB Speicher zur Verfügung stehen und Agenten ein Gigabyte oder mehr verbrauchen.

Installieren Sie Remote-Agenten nicht auf demselben Computer, auf dem Sie mit dem Terminal arbeiten.


Es gibt Fehler im Protokoll:

Es muss am mangelnden Gedächtnis liegen.

Ich drücke "Stopp" - der Speicher wird nicht sofort freigegeben. In 5 Minuten sind die lokalen Agenten verschwunden, in weiteren zwei Minuten ist der entfernte Speicher freigegeben:

Ja, der Speicher (Caches) wird nach etwa 5 Minuten freigegeben. Sie werden absichtlich für den nächsten Durchlauf aufbewahrt, damit keine Zeit mit dem Aufwärmen der meist gleichen Daten verschwendet wird, die beim letzten Durchlauf verwendet wurden.

In der neuesten Version haben wir die Art und Weise geändert, wie wir mit Caches umgehen, was zu einer Beschleunigung der Wiederholungsläufe führt.


Es ist nur nicht klar, warum ein Agent mehr als 100Mb zur Verfügung hat (ich glaube nicht, dass es von Cloud verwendet wurde, da die CPU-Zeit nicht genutzt wird).

Nun, ich deaktiviere "entfernte" lokale Agenten. Es ändert sich nichts (Systemverzögerungen und Fehler).

Nun, ich denke, der Fehler liegt in meinem Expert Advisor. Deshalb teste ich einen Standard ExpertMACD, EURUSD, h12 vom 2007.09.01 bis 2012.03.26.

Haben Sie den Expert Advisor nach dem Upgrade auf den neuesten Build neu kompiliert?

In Ihrem Fall liegt das Problem in der Verlangsamung aufgrund von ständigem Swapping und Speichermangel. Hinweis: Deaktivieren Sie unnötige Remote-Agenten.

 
Renat:

Es wird nicht empfohlen, mehr Agenten laufen zu lassen als Kerne vorhanden sind. Eine zu große Anzahl von Agenten führt zu einem nicht-linearen Geschwindigkeitsabfall und zu einem höheren Ressourcenverbrauch. Vor allem, wenn nur 4 GB Speicher zur Verfügung stehen und die Agenten ein Gigabyte oder mehr verbrauchen.

Sie können sich die Cloud-Statistiken ansehen - ob 4 oder 8 Agenten - die PR liegt immer noch bei 150-190 (mit Ausnahme von ein/zwei Agenten, die offenbar auf den Browser-Kern fallen)
Renat:

Installieren Sie Remote-Agenten nicht auf demselben Computer, auf dem Sie Ihre Hauptarbeit mit dem Terminal erledigen.

Deaktivierte Fernagenten...
Renat:

Haben Sie den EA nach dem Upgrade auf den neuesten Build neu kompiliert?

In Ihrem Fall liegt das Problem in der Verlangsamung aufgrund von ständigem Swapping und Speichermangel.

Experten neu kompiliert. Auch der reguläre ExpertMACD wurde neu kompiliert.
Renat:

Ein Ratschlag: Deaktivieren Sie unnötige Remote-Agenten.

Ich habe es deaktiviert, ExpertMACD zur Optimierung ausgeführt und:

GS      2       Core 2  22:35:03        genetic pass (14, 128209952076) tested with error "cannot initialize expert"
JD      2       Core 2  22:35:47        genetic pass (18, 83657327618) tested with error "cannot initialize expert"
HK      2       Core 1  22:35:55        genetic pass (21, 125407780989) tested with error "cannot initialize expert"
PN      2       Core 2  22:36:31        genetic pass (23, 119213797642) tested with error "cannot initialize expert"
DQ      2       Core 2  22:36:31        genetic pass (24, 69556992446) tested with error "cannot initialize expert"
PE      2       Core 3  22:36:35        genetic pass (27, 43810326828) tested with error "cannot initialize expert"
EI      2       Core 3  22:37:15        genetic pass (31, 50607133818) tested with error "cannot initialize expert"
MM      2       Core 3  22:37:15        genetic pass (33, 154340017542) tested with error "cannot initialize expert"
OR      2       Core 3  22:38:10        genetic pass (39, 72154186657) tested with error "cannot initialize expert"
RE      2       Core 3  22:38:53        genetic pass (44, 3365963874) tested with error "cannot initialize expert"
NJ      2       Core 3  22:38:53        genetic pass (45, 69101442583) tested with error "cannot initialize expert"
JO      2       Core 3  22:38:53        genetic pass (46, 13607620667) tested with error "cannot initialize expert"
JS      2       Core 1  22:40:24        genetic pass (53, 86662534982) tested with error "cannot initialize expert"
ID      2       Core 1  22:40:24        genetic pass (54, 101351711755) tested with error "cannot initialize expert"
HG      2       Core 1  22:40:24        genetic pass (55, 121960550013) tested with error "cannot initialize expert"

Und nun alle Agenten (einschließlich lokaler Agenten) bis auf einen deaktiviert:

IR      2       Core 1  22:44:22        genetic pass (1, 59037561933) tested with error "cannot initialize expert"
GE      2       Core 1  22:44:56        genetic pass (3, 122174849602) tested with error "cannot initialize expert"

und was nun? 4 GB sind nicht genug für einen Agenten? (obwohl die Speicherauslastung 350 MB beträgt, die VM-Größe = 1,24 GB). Was ist mit denjenigen, die nicht einmal 4 GB haben?

Warum überprüfen Sie das nicht? Siehe vorherigen Beitrag für die Wiedergabeschritte.

 
notused:
Sie können sich die Cloud-Statistiken ansehen - entweder 4 oder 8 Agenten - PR ist immer noch in der Region von 150-190 (mit Ausnahme von einem/zwei, die offenbar auf den Browser-Kern fallen) Deaktivierte Remote-Agenten... Experten neu kompiliert. Auch der reguläre ExpertMACD wurde neu kompiliert.

Getrennt, ExpertMACD zur Optimierung ausgeführt und:

Jetzt sind alle Agenten (einschließlich lokaler Agenten) bis auf einen deaktiviert:

und was nun? 4 GB sind nicht genug für einen Agenten? (obwohl die Speicherauslastung 350 MB beträgt, die VM-Größe = 1,24 GB).

Warum überprüfen Sie es nicht doch noch? Die Schritte zur Reproduktion finden Sie in dem vorherigen Beitrag

Es genügte ein Blick in das EA-Protokoll, um die Fehler zu erkennen:

ExpertMACD (EURUSD,H1)  22:50:54        1971.01.05 00:00:00   CExpertBase::InitHigh: error initializing object
ExpertMACD (EURUSD,H1)  22:50:54        1971.01.05 00:00:00   OnInit: error initializing indicators

ExpertMACD (EURUSD,H1)	22:55:07	2012.01.01 00:00:00   CSignalMACD::ValidationSettings: slow period must be greater than fast period
ExpertMACD (EURUSD,H1)	22:55:07	2012.01.01 00:00:00   OnInit: error signal parameters

Wählen Sie den richtigen Zeitraum und die richtigen Einstellungen. Wenn Sie Standardgrenzwerte verwenden, können Sie eine Menge falscher Einstellungen vornehmen.

 
Renat:

Es genügte ein Blick in das EA-Protokoll, um die Fehler zu erkennen:

Wählen Sie den richtigen Zeitraum und die richtigen Einstellungen. Wenn Sie Standardgrenzwerte verwenden, können Sie viele falsche Einstellungen vornehmen.

Ja, es stellte sich heraus, dass das Problem bei den Standardparametern liegt. Ich habe sie ausgetauscht, und alles ist in Ordnung. Ich bin zu meinem Expert Advisor zurückgekehrt - bis jetzt scheint er "normal" zu laufen.

Wenn also früher die Verfügbarkeit von zwei Agenten pro Kernel verziehen wurde, so ist dies jetzt definitiv nicht mehr der Fall.

Unterm Strich2. War falsch, sorry für die Zeit, die ich gebraucht habe (aber der Service-Desk - #329165 hat es noch nicht herausgefunden)

 
stringo:
Wir werden es herausfinden.

Es dauert sehr lange. In der Zwischenzeit habe ich herausgefunden, was los ist.

1) Beim Refactoring des Codes habe ich die explizite Zuweisung des Variablenwerts verloren und manchmal (ganz zufällig) zufällige Ergebnisse für das geöffnete Positionsvolumen erhalten. Nachdem ich diesen Fehler behoben hatte, stellte ich fest, dass sich die Ergebnisse nicht änderten - die Testergebnisse stimmten nicht mit der Optimierung überein. Mit Hilfe verschiedener Protokollierungs- und Tamburintricks konnten wir herausfinden, dass das Problem schon sehr alt ist:

2) Vor dem Start der Meisterschaft-2011 habe ich berichtet, dass der Tester an Wochenenden Geschäfte macht. Renat hat versprochen, das zu überprüfen. Doch das Problem besteht bis heute. Völlig zufällig habe ich den Beginn des Testintervalls 2007.09.01 gewählt, das auf ein Wochenende fällt. Der Optimierer führt also an diesem Tag keinen Handel durch, der Tester hingegen schon. Um genauer zu sein, erreicht sie im Optimierer am Wochenende nicht OrderSend, im Tester aber schon. Nach der Logik meines Expert Advisors zu urteilen, konnte ich herausfinden, dass, wenn die Optimierungsperiode am Wochenende beginnt, ACCOUNT_EQUITY = 0 ist, wenn der Timer zum ersten Mal losgeht!!! Im Testgerät ist ACCOUNT_EQUITY = ACCOUNT_BALANCE (das ist das, was wir bei der Ersteinzahlung eingestellt haben). Fällt der Beginn des Optimierungszeitraums auf einen Werktag, so ist das Verhalten von Optimierer und Tester identisch.

Sie haben also zwei Bugs:

1) Der Optimierer ermöglicht es Ihnen, ein Geschäft an einem Wochenende zu eröffnen, was nicht sein sollte (und sagen Sie nicht, dass dies mein Fehler ist - ich werde meine Fehler korrigieren, während der Fehler des Testers schon seit mehr als einem halben Jahr besteht);

2) Wenn der Zeitgeber zum ersten Mal auslöst und der Beginn der Periode auf den Ausgang fällt, ist ACCOUNT_EQUITY = 0, während im Prüfgerät ACCOUNT_EQUITY = ACCOUNT_BALANCE ist. Wir müssen sie in dieselbe Form bringen (besser natürlich in ACCOUNT_EQUITY = ACCOUNT_BALANCE mit Korrektur des ersten Fehlers).

Im Service-Desk auf Anfrage #329165 werde ich einen Experten für Tests anhängen.