- Wenn Du nicht zu viele Objekte hast, machst Du eine zweite Schleife und sucht das Minimum, das größer ist als das erste Minimum.
- Schreib alle Preis in eine Array (so groß wie die Anzahl der Objekte), sortiere das Array und nimm die kleinsten beiden.
Carl Schreiber #:
- Wenn Du nicht zu viele Objekte hast, machst Du eine zweite Schleife und sucht das Minimum, das größer ist als das erste Minimum.
- Schreib alle Preis in eine Array (so groß wie die Anzahl der Objekte), sortiere das Array und nimm die kleinsten beiden.
Das war nicht meine Absicht. Manchmal sieht man die Beiträge irgendwie nicht mehr, ich dachte, er wäre gelöscht.
int ObjektNumber_of_Min_SELL = -1; string ObjektName_of_Min_SELL = ""; double price_temp_SELL = 0; double Price_Difference_Min_Sell = DBL_MAX; for(int i = 0; i < ObjectsTotal(0, 0, -1) ; i++){ string ObjectNameTemp = ObjectName(0, i, -1, -1); if (ObjectGetInteger(ChartID(), ObjectNameTemp, OBJPROP_TYPE) == OBJ_HLINE && ObjectGetInteger(ChartID(), ObjectNameTemp, OBJPROP_COLOR) == clrBrown){ double TempValue_SELL = ObjectGetDouble(0, ObjectNameTemp, OBJPROP_PRICE, 0); if(MathAbs(TempValue_SELL - ask) < Price_Difference_Min_Sell){ Price_Difference_Min_Sell = MathAbs(TempValue_SELL - ask); ObjektName_of_Min_SELL = ObjectNameTemp; ObjektNumber_of_Min_SELL = i; price_temp_SELL = TempValue_SELL; Print("SL SELL: ",price_temp_red_zone); Print("Price SELL: ",price_temp_SELL); } } } if(bid >= price_temp_SELL && (price_temp_SELL > 0)) SELL(price_temp_red_zone);
Weisst du zufällig, welchen Fehler ich hier mache?
Meistens öffnet er die Position, doch manchmal auch nicht. Die Variable, welche der Funktion "SELL" übergeben wird, ist der Stop-Loss.
Der Preis und StopLoss passt vom Wert her immer, weshalb ich das ganze nicht wirklich verstehen kann.
Ganz verstehe ich nicht, was Du willst, aber Du verkaufst zum Bid und kaufst zum Ask, auf dem Chart werden nur Bid gezeichnet, daher kann es passieren, dass man meint zu sehen, es müsste was passieren, aber.,,
![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
Hallo, ich habe folgendes Problem: Ich will den Preis des Objekts mit dem kleinsten Abstand zum aktuellen Kurs bekommen, sowie den Preis des Objekts mit dem 2. größten Abstand zum Kurs.
Da ja die Schleife immer wieder durchläuft und der Wert sich ständig ändert, müsste ich diesen Wert raus filtern und in einer globalen Variable speichern..
Globalvariablen des Kundenterminals - Nachschlagewerk MQL5 - Nachschlagewerk über die Sprache des algothitmischen/automatischen Handels für MetaTrader 5
Ich muss zugeben, dass ich gerade absolut keinen Plan habe, wie ich weiter machen soll und wäre über Lösungsansätze und jede andere Hilfe sehr dankbar. Vielleicht ist es ja auch anders machbar und einfacher.
("worth" gibt mir gerade alle Abstände zum aktuellen Kurs wieder.)