[ARCHIV]Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Ohne dich kann ich nirgendwo hingehen - 5. - Seite 309
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ganz genau. Die globale Variable Reason erhält einen Wert, aber nicht in deinit(), sondern in init(), so dass Sie beim Ausführen von init() den Grund für die letzte Deinitialisierung sehen und auf der Grundlage des Wertes eine bestimmte Aktion durchführen können. Aber es funktioniert nicht so, wie es sollte.
Man hat Ihnen gesagt, wie Sie es machen sollen. In deinit() wird der Grund für die letzte Deinitialisierung ermittelt und über eine global deklarierte Variable weitergegeben. In init() wird der Wert der Variable überprüft und der Grund für die letzte Deinitialisierung ermittelt. Es funktioniert!!!
PS Offenbar ist nicht jedem klar, dass init()/deinit() die Werte von global deklarierten Variablen nicht ändern, es sei denn, dies wird in Anweisungen innerhalb von Funktionen ausdrücklich angegeben.
Eigentlich ist es besser, die Aufträge nicht in init() zu schließen. Dort funktioniert MarketInfo() oft nicht wie erwartet.
Man hat Ihnen gesagt, wie Sie es machen sollen. In deinit() wird der Grund für die letzte Deinitialisierung ermittelt und über eine global deklarierte Variable weitergegeben. In init() wird der Wert der Variable überprüft und der Grund für die letzte Deinitialisierung ermittelt. Es funktioniert!!!
Hier wird vorgeschlagen, was Sie mit dieser Funktion machen würden. Ein Merkmal wie dieses wird in der Regel durch die Geschichte geführt.
Ich kann mir nicht einmal vorstellen, die Funktion in einer Schleife laufen zu lassen...
Ich kann mir nicht vorstellen, dass die Funktion in einer Schleife laufen würde...
Bitte sehr:
Ich habe festgestellt, dass Artem ein Problem mit dem Wechsel von M5 TF hat. Hier liegt ein Fehler vor. Ich möchte überprüfen, ob dies der Fall ist. Vielleicht ist es ein Fehler von MT4.
Nein, das ist kein Fehler. Hier ist der EA. Änderung des Zeitrahmens von M1 auf H1
19:20:02 111 CADJPY,M15: initialisiert19:20:09 111 CADJPY,M15: DeinitReason 3
19:20:09 111 CADJPY,M15: deinitialisiert
19:20:09 111 CADJPY,M15: uninit Grund 3
19:20:09 Supertrend[1] CADJPY,M15: deinitialisiert
19:20:09 Supertrend[1] CADJPY,M15: uninit Grund 3
19:20:09 HLC CADJPY,M15: deinitialisiert
19:20:09 HLC CADJPY,M15: uninit Grund 3
19:20:09 AMA optimiert1 CADJPY,M15: deinitialisiert
19:20:09 AMA optimiert1 CADJPY,M15: uninit Grund 3
19:20:09 AMA optimiert1 CADJPY,M15: deinitialisiert
19:20:09 AMA optimiert1 CADJPY,M15: uninit Grund 3
19:20:09 Supertrend[1] CADJPY,H1: initialisiert
19:20:09 HLC CADJPY,H1: initialisiert
19:20:09 AMA optimiert1 CADJPY,H1: initialisiert
19:20:09 AMA optimiert1 CADJPY,H1: initialisiert
19:20:09 111 CADJPY,H1: initialisiert
Nein, das ist kein Fehler. Hier ist der EA. Änderung des Zeitrahmens von M1 auf H1
Das ist gut! Ich habe auch eine Menge Gründe für die Deinitialisierung.
Eigentlich ist es besser, die Aufträge nicht in init() zu schließen. Dort funktioniert MarketInfo() oft nicht wie erwartet.
Ich kann mir nicht einmal vorstellen, dass die Funktion in einer Schleife laufen würde...
Das ist gut! Denn auch ich habe viel mit den Gründen für die Deinitialisierung zu tun.
Ja, das können Sie nicht. Dies ist in der Hilfe beschrieben. Das ist etwas ganz Alltägliches.Hier ist die letzte Variante zu prüfen. Die vorherige Version war nicht sehr erfolgreich, da init()/deinit() sich manchmal nicht mit print() anfreunden können
Ich habe mich gefragt, wie man eine Funktion schreibt. Die Idee ist, dass, wenn N Kerzen in eine bestimmte Richtung zurücklaufen, die Anzahl der Kerzen berechnet werden soll. ABER. Hierfür gibt es mehrere Bedingungen, oder genauer gesagt, es wird im Laufe der Zeit eine Liste von ihnen geben.
Nehmen wir zum Beispiel an, der Trend ist abwärts gerichtet,... ...geht ein Pullback nach oben. Ich möchte, wenn 5 Candlesticks nach oben ging, und jede Kerze war bullish, und, zum Beispiel, die Größe der einzelnen Candlestick war größer alsi_sizeOfCurrBar, und einige andere Bedingungen, dann Ausgabe der Anzahl der kontinuierlich bullish Bars, und geben Sie einige Ergebnis von der Funktion.
Wie schreibt man ihn am besten? Im Moment habe ich angefangen zu schreiben, und ich verstehe, dass ich es durch eine Schleife von Bars laufen sollte, und irgendwie sollte ich die Ansicht in der Tiefe der Geschichte nicht durch eine feste Anzahl von Bars, sondern von Bars, mit den Parametern, die wir in durch Bedingungen interessiert sind zu begrenzen.
Hier ist, was ich habe, bekommen:
Im Moment gehen wir nur vom vorletzten Takt bis zum Takt mit Index 6, also 5 Takte hintereinander. Aber ich möchte, dass mein Expert Advisor nur nach den Bars sucht, die bullish sind, und nicht nach allen Bars in einer Reihe. Wie kann sie angemessen umgesetzt werden?
Ich habe gewissermaßen korrekt nach Größe gefiltert.
Und wenn alles schon geschrieben ist, berechnet der Zähler die Anzahl der fortlaufenden Balken mit den Parametern nht,etvsvb und wenn es genug solcher Balken gibt, wird ein Wert der Funktion zurückgegeben.
Man hat Ihnen gesagt, wie Sie es machen sollen. In deinit() wird der Grund für die letzte Deinitialisierung ermittelt und über eine global deklarierte Variable weitergegeben. In init() wird der Wert der Variable überprüft und der Grund für die letzte Deinitialisierung ermittelt. Es funktioniert!!!
PS Offenbar ist nicht jedem klar, dass init()/deinit() die Werte von global deklarierten Variablen nicht ändern, es sei denn, dies wird in Anweisungen innerhalb von Funktionen ausdrücklich angegeben.
Eigentlich ist es besser, die Aufträge nicht in init() zu schließen. Dort funktioniert MarketInfo() oft nicht wie erwartet.