Ist die lineare Verlangsamung ein Programmierfehler oder ein Merkmal von MT4? - Seite 3

 

Haben Sie noch andere clevere Ideen?

 
-Aleks-:


Und wie lauten die Schlussfolgerungen?
 
Vinin:
Was sind die Schlussfolgerungen?

Leider, aber bis jetzt komme ich wieder einmal zu dem Schluss, dass es keine Programmiergemeinschaft gibt, sondern Leute, die Geld verdienen wollen, aber keinen Spaß an ihrer Arbeit haben.

Ich bin also verwirrt und deprimiert....

 
-Aleks-:

Leider, aber bis jetzt komme ich wieder einmal zu dem Schluss, dass es keine Programmiergemeinschaft gibt, sondern Leute, die verdienen wollen, aber keinen Spaß an der Arbeit haben.

Insgesamt, verwirrt und deprimiert....

EAs in Ordnung zu bringen und zu optimieren wird viel mehr kosten als die Anfangskosten.

Wird es das gewünschte Ergebnis geben?

 
Es gibt den "Schlemiel'schen Maleralgorithmus":

Schlemiel bekam einen Job als Maler und musste mitten auf der Straße malen. Am ersten Tag nahm er ein Fass mit Farbe und markierte 300 Meter der Straße.
-Schön! - sagte der Chef - Sie arbeiten schnell! - Und er hat ihm einen Hungerlohn gezahlt.

Am nächsten Tag legte Schlemiel nur 150 Meter zurück.

- Nun, nicht so gut wie gestern, aber Sie arbeiten immer noch schnell. 150 Meter sind nicht zu wenig", sagte der Chef und zahlte ihm ein Honorar.

Einen weiteren Tag später zeichnete Schlemiel 30 Meter der Straße ab.
- Bcero 30 Meter! - Der Chef wurde wütend. "Das ist nicht gut. Am ersten Tag hast du zehnmal so viel gemacht. Was ist passiert?

- Ich kann es nicht ändern", sagt Schlemil. Jeden Tag muss ich mich weiter und weiter vom Farbfass entfernen...
 
Vinin:

Die Einarbeitung und Optimierung der Berater ist wesentlich teurer als die Anfangskosten.

Wird es das gewünschte Ergebnis geben?

In der Phase der Strategieverbesserung und insbesondere der Taktik müssen wir alle möglichen Zusätze bestellen, um die Idee zu testen, und in dieser Phase können wir die Langsamkeit des Expert Advisors tolerieren.

Aber ich war überrascht, dass die Geschwindigkeit 6 Mal langsamer war als bei der Hauptversion des EA. Die Optimierung der EA-Abstimmung ist zumindest für die analytische Datenerfassung erforderlich.

Bin ich richtig zu verstehen, dass es unmöglich ist, den Code anderer Leute zu lesen und es besser ist, eine andere Version des EA zu bestellen, nachdem wir eine erfolgreiche erhalten, aber es muss von Grund auf neu geschrieben werden, und nur in diesem Fall können wir sicher sein, von hoher Geschwindigkeit und Zuverlässigkeit? Ich persönlich dachte, dass die Aufgabe des Compilers darin besteht, Operationen auszuschneiden, die sich gegenseitig duplizieren, zum Beispiel...

 
MetaQuotes:
Es gibt den "Schlemiel'schen Maleralgorithmus":

Schlemiel bekam einen Job als Maler und musste mitten auf der Straße malen. Am ersten Tag nahm er ein Fass mit Farbe und markierte 300 Meter der Straße.
-Schön! - sagte der Chef - Sie arbeiten schnell! - Und er hat ihm einen Hungerlohn gezahlt.

Am nächsten Tag legte Schlemiel nur 150 Meter zurück.

- Nun, nicht so gut wie gestern, aber Sie arbeiten immer noch schnell. 150 Meter sind nicht unbedeutend", sagte der Chef und zahlte ihm das Geld.

Einen weiteren Tag später zeichnete Schlemiel 30 Meter Straße.
- Bcero 30 Meter! - Der Chef wurde wütend, das ist nicht gut. Am ersten Tag hast du zehnmal mehr gemacht. Was ist passiert?

- Ich kann es nicht ändern", sagt Schlemil. Jeden Tag muss ich mich weiter und weiter vom Farbfass entfernen...

Kein eindeutiges "Märchen", d. h. es gibt keine Möglichkeit, den Code so zu schreiben, dass er nicht langsamer wird, und ihn gleichzeitig nicht von Grund auf neu zu schreiben?

Und der von mir beigefügte Code ist völlig ausreichend?

 
Aus den ersten Beiträgen habe ich erraten, was das Problem sein könnte, aber erst als ich mir den Quellcode angesehen habe, habe ich es endlich verstanden... Mein Gott, wurde es überhaupt von einem Programmierer geschrieben? Oder von einem Studenten der Wasserakademie?
 
micle:
Nach den ersten Beiträgen hatte ich eine Vermutung, was das Problem sein könnte, aber ich erkannte es erst, als ich mir den Quellcode ansah... Mein Gott, wurde es überhaupt von einem Programmierer geschrieben? Oder von einem Studenten der Wasserakademie?

Faszinierend!

Worin besteht also das Problem und, was noch wichtiger ist, wie kann es gelöst werden?

Ich glaube nicht, dass es eine schlechte Idee ist...

Dateien:
SL3000.png  81 kb
 
-Aleks-:

Faszinierend!

Worin besteht also das Problem und, was noch wichtiger ist, wie kann es gelöst werden?

Das Problem ist die Verdoppelung des Codes, zu viele bedingte Anweisungen. Tatsächlich besteht der Code zu 99 % aus Zeilen, die irgendwie den bedingten If-Operator einschließen. Ich bin sicher, dass die Anzahl der Vergleiche um das Zehnfache reduziert werden kann. Das verlangsamt nicht nur die Ausführung, sondern dieser Code ist auch schwer zu lesen. Eine Person, die Ergänzungen vornimmt, hat mindestens 2 Hauptaufgaben:

1 - es nicht kaputt zu machen

2 - Hinzufügen der erforderlichen Funktionen.

Unleserlicher Code verursacht ohnehin zusätzliche Duplizierung aller möglichen Prüfungen und Vergleiche - und das ist wiederum ein zusätzlicher Aufwand. Wenn ich mir den Code ansehe, erinnere ich mich persönlich an die Zeit vor 25 Jahren, als ich gerade mit dem Programmieren angefangen habe und es aus dem Handbuch für den Atari 800XL PC gelernt habe, ohne Lehrer, einfach weil es interessant war.

Grund der Beschwerde: