[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 224
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ich habe es gelesen, ich weiß, dass die Abstände eingefroren werden usw., aber ich verstehe nicht, wie ein Stop-Loss von Null mit all diesen Einschränkungen zusammenhängt! Wenn Sie einen Fehler sehen - sagen Sie es mir. Ich habe die Handbücher sorgfältig gelesen, bevor ich hier schreibe. Ich würde es nicht tun, wenn ich nicht dazu gezwungen wäre.
Bei einigen DCs können SL und TP bei der Auftragserteilung festgelegt werden, bei anderen nicht. Versuchen Sie es mit Ihren Händen. Dasselbe gilt für Freeze und den Mindestabstand bis zum Anhalten (TP ist ebenfalls ein Anhalten).
Das Problem mit den Nullstopps wurde gelöst. Allerdings habe ich nicht verstanden, wie: was ich kommentiert, kopiert, explizit 0 anstelle von Variablen gesetzt habe, usw. Jedenfalls hat irgendwann alles funktioniert))) Danke an alle, die geantwortet und Kommentare hinterlassen haben.
Ich habe sie gelesen, ich weiß über Einfrierabstände und so weiter Bescheid, aber ich verstehe nicht, wie ein Stop-Loss von Null mit all diesen Einschränkungen zusammenhängt! Wenn Sie einen Fehler sehen - sagen Sie es mir. Ich habe die Handbücher sorgfältig gelesen, bevor ich hier schreibe. Ich würde sie nicht schreiben, wenn ich nicht dazu gezwungen wäre.
Ich habe den Fehler darin gesehen, dass Ihr BUY_STOP und SELL_STOP auf denselben Kurs gesetzt sind. Wenn Sie TP und SL auf Null gesetzt haben, der Fehler 130 aber bestehen bleibt, kann es nicht an ihnen liegen!
Nur BUY_STOP und SELL_LIMIT oder umgekehrt (je nach Einzelfall) BUY_LIMIT und SELL_STOP können auf denselben Preis gesetzt werden. Aber auf keinen Fall BUY_STOP und SELL_STOP! :)))
Aber Sie haben die Handbücher nicht sehr gut gelesen...
Übrigens funktioniert der Experte jetzt richtig.
Eine hausgemachte Funktion entfernt im Falle eines Pegeldurchbruchs horizontale TREDLINE-Objekte. Funktioniert einwandfrei, ist aber sehr kostspielig.
Bei einer großen Anzahl von Objekten (mehr als 5000) wird die MT vollständig ausgesetzt. Zwei Tage CPU-Belastung ohne jegliche Ergebnisse.
Welche Optionen sind am besten geeignet, um den Zustand zu ersetzen?
Eine hausgemachte Funktion entfernt im Falle eines Pegeldurchbruchs horizontale TREDLINE-Objekte. Funktioniert einwandfrei, ist aber sehr kostspielig.
Bei einer großen Anzahl von Objekten (mehr als 5000) setzt es die MT vollständig außer Kraft. Zwei Tage CPU-Belastung ohne Ergebnis.
Wie kann der Zustand optimal ersetzt werden?
Berechnen Sie iHighest() ganz am Anfang des Codes (beim Start) und speichern Sie den Balkenindex in einer Variablen. Wenn ein neuer Balken geöffnet wird, wird diese Variable inkrementiert und überprüft, ob der vorherige Balken nicht der neue "Höchste" ist. Vergessen Sie auch nicht zu prüfen, ob die Variable > Anzahl der gesuchten Balken ist, dann muss die Funktion iHighest() erneut gestartet werden. Dieser Algorithmus arbeitet zwar viel schneller, ist aber immer noch nicht optimal! :))
Ich habe den Fehler darin gesehen, dass Ihr BUY_STOP und SELL_STOP auf denselben Kurs gesetzt sind. Wenn Sie TP und SL auf Null gesetzt haben, der Fehler 130 aber bestehen bleibt, kann es nicht an ihnen liegen!
Nur BUY_STOP und SELL_LIMIT oder umgekehrt (je nach Einzelfall) BUY_LIMIT und SELL_STOP können auf denselben Preis gesetzt werden. Aber auf keinen Fall BUY_STOP und SELL_STOP! :)))
Sie haben die Handbücher nicht sehr gut gelesen...
Ich schon! Jetzt habe ich mir angesehen, was ich im Forum gepostet habe. Aber "Handbücher lesen" hat damit nichts zu tun - ich habe einfach die Liste der Parameter kopiert und dann die von mir benötigten korrigiert. Und ich habe vergessen, den Preis in Sell Stop zu korrigieren. In beiden Aufträgen ist es buyPrice, in SellPrice sellPrice. Wenn Sie es mir sofort gesagt hätten, wäre es sehr hilfreich gewesen, aber ich habe aufgrund meiner Unaufmerksamkeit viel Zeit gebraucht, um einen Fehler zu finden.
Tut mir leid, dass ich kein Telepath bin... Hätte ich gewusst, dass es sich um ein Versehen handelt, hätte ich sofort darauf hingewiesen. Ich dachte, du hättest die Theorie nicht verstanden.
Allerdings war Ihre Unaufmerksamkeit von langer Dauer... :D