Ist die lineare Verlangsamung ein Programmierfehler oder ein Merkmal von MT4?

 

Ich bin kein Programmierer, aber wie jeder hier, der zur Analyse neigt, versuche ich die Gründe für die Bremsen des EA zu verstehen, nämlich was im Falle einer Änderung zu nachteiligen Folgen geführt hat, und vor allem, ob es möglich ist, dies zu beheben.

Hintergrund

Nachdem ich beschlossen hatte, meine Idee zu testen, bestellte ich Kamikadze_MA_V_01 https://www.mql5.com/ru/job/10296 in der Rubrik "Jobs", und sie wurde ausgeführt.

Nachdem ich es getestet hatte, beschloss ich, es zu verbessern. Die Verbesserungen sind in der Tat nicht sehr substanziell - Lebensdauer der offenen und schwebenden Aufträge, Begrenzung der Anzahl der offenen Aufträge pro Trend und die Möglichkeit, die Eröffnung/Schließung von Aufträgen einschließlich ihrer Schließung zu blockieren - Kamikadze_MA_V_02 https://www.mql5.com/ru/job/10359, die Arbeit wurde gemäß dem Algorithmus abgeschlossen.

Jetzt habe ich eine weitere Ergänzung in Form eines Oszillatorfilters bestellt, der die Arbeit in benutzerdefinierten Bereichen ausschließt Kamikadze_MA_V_03 https://www.mql5.com/ru/job/10720 .

Realität

Da die Arbeit eines jeden (meiner) Expert Advisors mit seiner Einrichtung beginnt (alle Symbole haben unterschiedliche Volatilität und Präferenzen für Indikatorparameter), ist die Geschwindigkeit der Optimierung von entscheidender Bedeutung.

Geschätzte Verarbeitungsgeschwindigkeit - 23 Durchgänge von 2000 bis 2013 in einer Stunde durch Eröffnungspreise:

1. Kamikadze_MA_V_01 - 5 Minuten

2. Kamikadze_MA_V_02 - 15 Minuten.

3. Kamikadze_MA_V_03 - mehr als 30 Minuten

Diese Art von Arbeit macht die Möglichkeit einer schnellen EA-Konfiguration einfach zunichte.

Die Frage lautet

Ist es möglich, die Geschwindigkeit von Kamikadze_MA_V_02 durch Optimierung des Codes zu erhöhen und die Verarbeitungszeit auf die Version Kamikadze_MA_V_01 zu senken, ohne die Möglichkeit zu verlieren, auf einem echten Konto zu handeln?

MQL5 работа: Kamikadze_MA_V_01
MQL5 работа: Kamikadze_MA_V_01
  • www.mql5.com
Название советника: Kamikadze_MA_V_01 Данный советник состоит из 3 MA которые настраиваются по всем параметрам и которые могут быть изменены на пользовательский индикатор. Важно - советник может работать на текущем тайм фрейме(15минут), но по данным с верхнего тайм фрейма(1час). Настраиваемые переменные: lot - размер начального лота lotM - вариант изменения размера лота при повторном открытии отложенного ордера до достижения maT TF - тайм фрейм по которому будут рассчитываться МА, если "0" то на...
 

-Aleks-:

Frage

Ist es möglich, die Geschwindigkeit von Kamikadze_MA_V_02 durch Optimierung des Codes zu erhöhen und die Verarbeitungszeit auf die Version Kamikadze_MA_V_01 zu senken, ohne die Möglichkeit zu verlieren, auf einem echten Konto zu handeln?

Das ist möglich.

Ich denke, es könnte 10 Mal schneller sein. Vielleicht hat der EA gar nichts damit zu tun.

Was wollen Sie für 30 Credits bekommen?

 

Serj_Che:
Возможно. 

Das ist sehr ermutigend! Was muss dafür global im Code geändert werden?

 
Serj_Che:

Was wollten Sie für 30 Credits?

Jetzt geht's los.

Er erniedrigt sich selbst. Ist das modisch?

 
-Aleks-:

Das ist sehr ermutigend! Was muss global im Code geändert werden, damit dies funktioniert?

Wenn man zunächst eine Sache schreibt und dann Bedingungen hinzufügt, die die Logik und die Struktur des Programms durchbrechen, erhält man Krücken.

Das Gute daran ist, dass man das Ganze noch einmal neu schreiben muss.

 
Serj_Che:

Wenn man zunächst eine Sache schreibt und dann Bedingungen hinzufügt, die die Logik und Struktur des Programms durchbrechen, erhält man Krücken.

Das Gute daran ist, dass man das Ganze noch einmal neu schreiben muss.

Der Punkt ist, dass 4 meiner EAs (die ich selbst entwickelt habe) ständig verbessert werden, und es scheint mir, dass dies ein normales Phänomen ist. Natürlich kommt es manchmal zu Leistungseinbußen, aber das sind nur etwa 10-15 %, während es in diesem Fall das Dreifache zwischen zwei Versionen ist. Ich denke nur, dass es etwas im Code gibt, das den EA erheblich verlangsamt.

Und ist der Programmierer dann nicht daran interessiert, seine Arbeit abzuschließen, eine konsistente TOR und ein stabiles Einkommen zu erhalten, seinen Code zu verstehen und die Logik des Expert Advisors herauszufinden, anstatt zu versuchen, eine neue TOR von Grund auf zu schreiben, indem er an einer Ausschreibung teilnimmt?

 
Ich habe angeboten, Ihre Leistung für den Tester zu beschleunigen und zu optimieren, und habe Ihnen eine Art akzeptablen Preis genannt. Ursprünglich war die Aufgabe, den EA im Tester zu beschleunigen, wenn der EA in 15 Jahren läuft, kein Thema.)
 
zfs:
Ich habe Ihnen angeboten, das Programm zu beschleunigen und für Tester zu optimieren, und Ihnen einen akzeptablen Preis genannt. Ursprünglich war die Aufgabe, den EA im Tester zu beschleunigen, wenn der EA 15 Jahre lang lief, kein Thema.)

Ich möchte jetzt nicht öffentlich über meine Einstellung zum Ergebnis der Arbeit sprechen.

Ich bitte um Hilfe bei der Suche nach möglichen Fehlern und deren Beseitigung.

Ich bin bereit, Ihren Vorschlag in Betracht zu ziehen, wenn Sie mir sagen, wie hoch der Leistungsgewinn sein wird und wie hoch der Fehler ist.

Die Variante, einen benutzerdefinierten Indikator zum Code des Expert Advisors hinzuzufügen, wird nicht den erwarteten Leistungsgewinn bringen, und wie wollen Sie sonst die Leistung verbessern? Ersetzen Sie "Preis" durch "Offen"?

 
sergeev:

anfangen.

Er erniedrigt sich selbst. Ist das modisch?

Ich verstehe Ihren Satz nicht, wer demütigt hier wen?
 
sergeev:

Er erniedrigt sich selbst. Ist das modisch?

Oder vielleicht ist er einfach nur ehrlich und gibt zu, dass er ein Scheißkerl ist :)
 
TheXpert:
Oder vielleicht gibt er einfach ehrlich zu, dass er nur Scheiße labert :)

Da ist ein weiterer Klugscheißer.

Ich habe überhaupt nichts mit diesem Job zu tun.

Sie sind derjenige, der Scheiße redet.

Ich weise nur darauf hin, dass sie beide falsch liegen. Der Programmierer schrieb einen schlampigen Code, und der Kunde fiel auf die Billigkeit herein.

Sie hätten diese intime Frage zwischen ihnen (Auftraggeber und Auftragnehmer) klären können, aber da Sie sie öffentlich diskutieren wollen, habe ich meine Meinung (vorsichtig) kundgetan.