Init() und DeInit() Ausführungsreihenfolge - Seite 11

 
Alexey Viktorov:
Ist es nicht eine Schande, seine Zeit mit solch nutzlosem Gezänk über solche Nebensächlichkeiten zu verschwenden?

Eigentlich ist es sogar noch wichtiger, sich dieser Besonderheit bewusst zu sein.

 
Andrey Dik:

Ich habe deutlich geschrieben - halten Sie die Daten, die auf die Kopie übertragen werden müssen, immer auf dem neuesten Stand, Sie brauchen das nicht nur bei der Eingabe zu tun, halten Sie sie immer auf dem neuesten Stand.

Wo sollten diese Daten auf dem neuesten Stand sein? Ein Beispiel, bitte. Ich glaube nicht, dass Sie etwas Besseres als eine Datei finden können. Allein die Datei ist also ein großes Problem. Oder halten Sie es für eine gute Praxis, eine Datei jede Sekunde zu aktualisieren?

Alle anderen Fälle sind aufgrund von Verschrobenheit erfunden.

Also ist die "vorübergehende Störung bei blauen Bildschirmen" auch die Schuld des Entwicklers des Indikators? Das ist genau das Beispiel, von dem noch niemand gesagt hat, wie man es umgehen kann. Und es führt kein Weg daran vorbei.

Wenn es ein Problem damit gibt, denselben Indikator gleichzeitig laufen zu lassen, dann erstellen Sie jedes Mal eindeutige Objekte mit einer Verknüpfung zur TF, und wenn es bereits Objekte gibt, fügen Sie dem Namen eine 1 hinzu.

Niemand hat einen einzigen Fall angeführt, in dem die Probleme aufgrund der derzeitigen Arbeitsweise des Terminals mit Indikatoren unüberwindbar sind. Die Probleme entstehen durch die unsachgemäße Handhabung von Indikatoren.

Ich habe bereits mehrere Beispiele genannt. Aber man tut sie einfach ab, oder anders gesagt, man verschließt die Augen vor den Problemen.

Im Allgemeinen scheinen viele Menschen nicht zu verstehen, dass es nicht umsonst 3 Programmtypen gibt (der vierte wird bald folgen).

Ja, aus einem bestimmten Grund. Das liegt an einer einfachen menschlichen Schwäche - auf halbem Weg stehen zu bleiben. Schließlich muss es auf einer Plattform 1 Programmtyp geben. Nicht mehr und nicht weniger. Das Auftreten des 4. Typs ist eine Vertiefung der Selbstzerstörung.
 
Ihor Herasko:


Ja, aus einem bestimmten Grund. Wegen einer elementaren menschlichen Schwäche - auf halbem Weg stehen zu bleiben. Es muss 1 Programmtyp in einer Plattform vorhanden sein. Nicht mehr und nicht weniger. Das Auftreten des 4. Typs ist eine Vertiefung der Selbstzerstörung.

Bei einer solchen Einstellung gegenüber Entwicklern ist es seltsam, dass Sie von den Entwicklern erwarten, dass sie Ihr Problem lösen.

Und wenn selbst ich, ein glühender Verfechter aller möglichen Verbesserungen und Vereinfachungen für die Plattform, darin kein Problem sehe, dann werden Leute, die gerne auf halber Strecke aufhören, sicher auch kein Problem sehen.

 
Alexey Viktorov:
Ist es nicht schade, dass Sie Ihre Zeit mit sinnlosem Gezänk über solche Nebensächlichkeiten vergeuden?
Du hast Recht, das bin ich! Aber Sie liegen mit nichts falsch.
 
Andrey Dik:

Bei einer solchen Einstellung gegenüber Entwicklern ist es seltsam, von Ihnen zu hören, dass Sie erwarten, dass die Entwickler Ihr Problem lösen.


Ich habe eine normale Einstellung zu Plattformentwicklern )) Die menschliche Schwäche ist unser gemeinsames Problem, nicht das Problem ihrer einzelnen Vertreter.

Allerdings sind wir beide vom Thema der Programmtypen abgekommen. Dafür sollten Sie einen eigenen Thread einrichten. Aber ich sehe darin nicht viel Sinn, da es rein akademisch sein wird, ohne auch nur einen Hauch von praktischer Anwendung.

Die Bedeutung dessen, wovon ich spreche, ist die übliche Logik der Programmausführung. Eine solche Logik gab es in MT4, und sie muss sinnvollerweise auf MT5 übertragen werden. In der Tat ist das kein Nachteil von MT4. In diesem Fall ist es sein Vorteil gegenüber MT5. Wenn Sie also MT5 entwickeln und MT4 schnell vergessen wollen, warum nicht das Beste aus MT4 übernehmen? Nun, wir müssen die Mängel beheben und allenfalls die Vorteile verbessern. Aber die Einführung neuer Nachteile...

 
Nikolai Semko:
Das war's also!?
Ich habe experimentiert und diesen Grundcode (REASON_CHARTCHANGE) in vollem Umfang genutzt. Was nützt es, wenn alle Variablen wieder auf ihren ursprünglichen Zustand gesetzt werden und OnDeinit nach OnInit der neuen TF ausgeführt werden kann

Gründe für die Deinitialisierung

Expert Advisor-Deinitialisierungsgründe, die von UninitializeReason() zurückgegeben werden. Kann einen der folgenden Werte annehmen:

.........

DieIndikatoren akzeptieren vorerst nur Code 1 (REASON_REMOVE) und Code 2 (REASON_RECOMPILE).

 
Georgij Komarov:

Gründe für die Deinitialisierung

Von UninitializeReason() zurückgegebene Grundcodes für die Deinitialisierung von Expert Advisor. Kann einen der folgenden Werte annehmen:

.........

DieIndikatoren akzeptieren vorerst nur Code 1 (REASON_REMOVE) und Code 2 (REASON_RECOMPILE).

Sind Sie sicher?
 
Georgij Komarov:

Gründe für die Deinitialisierung

Expert Advisor-Deinitialisierungsgründe, die von UninitializeReason() zurückgegeben werden. Kann einen der folgenden Werte annehmen:

.........

DieIndikatoren akzeptieren vorerst nur Code 1 (REASON_REMOVE) und Code 2 (REASON_RECOMPILE).

Dies ist eine veraltete Information. Nach zahlreichen Anfragen haben wir begonnen, weitere Gründe für die Indikatoren zu übermitteln

Es gab auch eine Menge Diskussionen. Es ist merkwürdig, dass sich niemand an die verschiedenen Kopien der Indikatoren erinnert.

 
Ihor Herasko:


Ich habe eine normale Einstellung zu Plattformentwicklern )) Die menschliche Schwäche ist unser gemeinsames Problem, nicht das Problem ihrer einzelnen Vertreter.

Allerdings sind wir beide vom Thema der Programmtypen abgewichen. Wir hätten dafür einen eigenen Zweig einrichten sollen. Aber ich sehe darin nicht viel Sinn, denn es wird rein akademisch sein, ohne auch nur einen Hauch von praktischer Umsetzung.

Die Bedeutung dessen, wovon ich spreche, ist die übliche Logik der Programmausführung. Eine solche Logik gab es in MT4, und sie muss sinnvollerweise auf MT5 übertragen werden. In der Tat ist das kein Nachteil von MT4. In diesem Fall ist es sein Vorteil gegenüber MT5. Wenn Sie also MT5 entwickeln und MT4 schnell vergessen wollen, warum nicht das Beste aus MT4 übernehmen? Nun, man muss die Mängel beheben und zumindest die Vorteile verbessern. Aber die Einführung neuer Nachteile...

Das war's, wir beschweren uns...

Sie fragen nach genau dem, was in normalen Desktop-Anwendungen nicht verfügbar ist. Würden die Entwickler all diese Funktionen, die bereits "out of the box" sind, nicht anbieten, wären die Autoren von MQL-Programmen ständig mit allen Reizen der Desktop-Entwicklung konfrontiert, seien es Sicherheitsfragen oder die Geschwindigkeit der Ausführung.
 
Nikolai Semko:

Sehr fragwürdige Frage über nichts Kompliziertes. Versuchen Sie wirklich, am Beispiel einer einfachen Armbanduhr zu wiederholen, was ich in diesem Produkt umgesetzt habe. Im Handgelenkrad ändern Sie den Zeitraum mit der Maus, und wenn Sie TF ändern, sollten die Änderungen gespeichert werden. Und Sie werden sehen, dass es nichts Kompliziertes ist. Und wenn Sie ein Array übergeben müssen. Und Sie werden sehen, wie "einfach" es ist. Vielleicht würde ich selbst so denken, wenn ich es nicht schon umgesetzt hätte.

Was ist das Problem bei der Speicherung der Periode in einer Hauptvariablen?

Warum sollte es notwendig sein, eine Reihe von Daten zwischen aufeinanderfolgenden Läufen des Indikators auf verschiedenen TFs zu übertragen?