Fehler, Irrtümer, Fragen - Seite 524

 
idispatch:
Außerdem ist, soweit ich verstanden habe, die Schließung eines Geschäfts durch einen Stop-Loss mit einem Verlustgeschäft im Ergebnisbericht des Testers verbunden (wo der Prozentsatz der Verlust- und Gewinngeschäfte angegeben ist).
Verlustgeschäfte unterscheiden sich von Gewinngeschäften durch das Minuszeichen, und die Farbe des Symbols hat keinen Einfluss auf die Verteilung der Geschäfte im Bericht.
 

Nach dem Upgrade auf Build 507 habe ich zwei Probleme in der Testversion:

1. Während der Optimierung stürzt das Terminal gelegentlich (nicht immer) ab, wenn die Registerkarten des Testers gewechselt werden;

2. Wenn eine Aufzählung als optimierter Parameter ausgewählt wurde, dann sieht der Expert Advisor beim Versuch, eines der Optimierungsergebnisse auszuführen, den Wert dieser Aufzählung nicht, d.h. er ist immer gleich Null.

 
Diubakin:

Nach dem Upgrade auf Build 507 habe ich zwei Probleme in der Testversion:

1. Während der Optimierung stürzt das Terminal gelegentlich (nicht immer) ab, wenn die Registerkarten des Testers gewechselt werden;

2. Wenn eine Aufzählung als optimierter Parameter ausgewählt wurde, dann sieht der Expert Advisor beim Versuch, eines der Optimierungsergebnisse auszuführen, den Wert dieser Aufzählung nicht, d.h. er ist immer gleich Null.

Bitte schreiben Sie an servicedesk und geben Sie so viele Details wie möglich an.

Wir wissen, dass es ein Problem mit Aufzählungen während der Optimierung gibt, aber wir können den Fehler nicht reproduzieren

 
Ich habe an den Servicedesk geschrieben...
 
Diubakin:
Ich habe an servicedesk geschrieben...

Ich habe Ihre Bewerbung angenommen und weitere Fragen gestellt

 

...Und hier stellt sich die (rhetorische?) Frage...

Es werden immer wieder zusätzliche Berechnungen der gleichen Werte im Indikator durchgeführt, die natürlich die gleichen Ergebnisse liefern. Die Lösung scheint auf der Hand zu liegen: einmal berechnen (wenn man zum ersten Mal auf historische Daten zugreift), alles in den Puffer legen und in anderen Fällen auf die fertigen Ergebnisse anwenden. Aber...

Der Indikator verfügt bereits über eine enorme Anzahl von Puffern (mindestens 10 für die Speicherung der berechneten Daten der gesamten Historie über mehrere verschiedene Zeiträume) - auf diese wird bereits mit den entsprechenden ursprünglich berechneten Daten zugegriffen. Nun besteht die Idee und die Möglichkeit, die Anzahl der Puffer zu verdoppeln.

Natürlich hängt das alles von den Hardware-Spezifikationen ab: Prozessorleistung und Speichergröße. Und das ist derjenige, der gewinnen wird. Aber nehmen wir einmal an, dass die Hardware sehr durchschnittlich ist - nicht der neueste Heim-PC. Nicht zu viel von beidem, aber auch nicht zu wenig. Es ist schwierig, auf Anhieb zu entscheiden, ob man Speicherplatz oder Rechenleistung verschenken soll.

Daher die Frage an ein sachkundiges Publikum: Was empfehlen Sie? Vielleicht gibt es einige Argumente für die eine oder andere Option... Entweder den Speicher nicht durch die Verdoppelung der berechneten Indikatorpuffer überlasten und den Prozessor erwärmen, indem man jedes Mal dasselbe berechnet, wenn man es braucht, oder umgekehrt?

Ich danke Ihnen.

 
x100intraday:

...was die (rhetorische?) Frage aufwirft...

...

Natürlich hängt alles von den technischen Parametern der Hardware ab: von der Rechenleistung des Prozessors und der Größe des Arbeitsspeichers. Und das ist derjenige, der gewinnen wird. Aber betrachten wir die Hardware als eher durchschnittlich - nicht als einen aktuellen Heim-PC. Nicht zu viel von beidem, aber auch nicht zu wenig. Es ist schwer, sich auf Anhieb zu entscheiden, ob man Speicher oder Rechenleistung wegwerfen soll.

...

Ich habe Indikatoren für hundert Arrays und nichts gemacht, mein Rat ist, etwas Speicher zu kaufen (Gott sei Dank ist es nicht teuer jetzt).
 
x100intraday:

...Und hier stellt sich die (rhetorische?) Frage...

Es werden immer wieder zusätzliche Berechnungen der gleichen Werte im Indikator durchgeführt, die natürlich die gleichen Ergebnisse liefern. Die Lösung scheint auf der Hand zu liegen: einmal berechnen (wenn man zum ersten Mal auf historische Daten zugreift), alles in den Puffer legen und in anderen Fällen auf die fertigen Ergebnisse anwenden. Aber...

Der Indikator verfügt bereits über eine enorme Anzahl von Puffern (mindestens 10 für die Speicherung der berechneten Daten der gesamten Historie über mehrere verschiedene Zeiträume) - auf diese wird bereits mit den entsprechenden ursprünglich berechneten Daten zugegriffen. Nun besteht die Idee und die Möglichkeit, die Anzahl der Puffer zu verdoppeln.

Natürlich hängt dies alles von den Hardware-Spezifikationen ab: Prozessorleistung und Speichergröße. Und das ist derjenige, der gewinnen wird. Aber nehmen wir die Hardware als sehr durchschnittlich an - nicht den neuesten Heim-PC. Nicht zu viel von beidem, aber auch nicht zu wenig. Es ist schwierig, auf Anhieb zu entscheiden, ob man Speicherplatz oder Rechenleistung wegwerfen soll.

Daher die Frage an ein sachkundiges Publikum: Was empfehlen Sie? Vielleicht gibt es einige Argumente für die eine oder andere Option... Entweder den Speicher nicht durch die Verdoppelung der berechneten Indikatorpuffer überlasten und den Prozessor erwärmen, indem man jedes Mal dasselbe berechnet, wenn man es braucht, oder umgekehrt?

Ich danke Ihnen.

Warum sollten Sie nicht auch Datenbanken für Ihren Bedarf nutzen? Berechnet, aufgezeichnet... die Zeit ist gekommen - extrahiert in der bequemsten Form, nutzen Sie sie.

Architektonisch erlaubt die Lösung eine Trennung von Berechnung und Zwischenspeicherung der Ergebnisse.

 
Vladix:

Warum sollten Sie nicht auch Datenbanken für Ihren Bedarf nutzen? Berechnet, aufgezeichnet... es ist Zeit - extrahiert in der bequemsten Form, nutzen Sie sie.

Architektonisch erlaubt die Lösung eine Trennung von Berechnung und Zwischenspeicherung der Ergebnisse.

Ich leugne es nicht, aber die Formulierung "es ist Zeit" klingt komisch, wenn man bedenkt, dass jede Referenz in OnCalculate bei jedem Tick neu abgespielt wird. Entweder muss die DB komplett im RAM liegen, oder man müsste langsam auf die Festplatte zugreifen und sie zu Asche schaufeln. Obwohl... was verstehe ich schon von DBMS...

Aber ist MQL nicht eine Abfragesprache für DB? Wenn ja, arbeitet es bereits mit der Datenbank von der Festplatte, und die Festplatte scheint im Moment noch zu funktionieren. Es ist nicht nötig, hier etwas Neues zu erfinden.

Wenn Sie eine andere Datenbank und eine bestimmte (nicht standardisierte) Zugriffsmethode meinen, erklären Sie dies bitte. Wenn Sie vorgeschlagen haben, die MQL5-Interaktion mit etwas anderem zu integrieren, ist es für mich zu früh, da ich gerade erst begonnen habe, MLQ zu studieren und mich in Richtung fortgeschrittenes Anzünden bewege...

 

Sehr oft wird die Verbindung zum Server unterbrochen. Die Anzeige zeigt jedoch eine stabile Verbindung an:

Das Terminal lässt sich nicht wieder verbinden. Ich muss mich manuell anmelden. Ist es möglich, dies programmgesteuert mit MQL5 zu tun?

Grund der Beschwerde: