Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1795

 
Nerd Trader #:

Warum? Die Bedingungen sind identisch, nur umgekehrt (Preis > Ask) für die gelbe Linie und (Preis < Bid) für die grüne Linie.

Aber die grünen und roten Linien werden aus irgendeinem Grund nur einmal erstellt und blinken nicht, wenn sich der Cursor bewegt.

von Null und darüber?

Interessanter Punkt...

Sie suchen nach zwei Zeilen

        if(ObjectFind("Buy Stop") == window || ObjectFind("not allowed") == window){

und Sie löschen eine.

          ObjectDelete(line_name);

Die Frage ist nur, welche? Wie lautet der Nachname von "line_name"?

 
Mihail Matkovskij #:

Vervollständigt die Nachricht. Testen Sie Ihre Funktion und meine mit falscher Chart ID und wenn Objekt erstellt wird Subwindow. Und sehen Sie, was Ihre Funktion zurückgibt und was meine glaubt.

Du bist einfach nicht auf dem Laufenden)


 
MakarFX #:
Und wenn

was dann?

Fehler. Und du, stimmt, aus irgendeinem Grund!

 
Mihail Matkovskij #:

Fehler. Und du, stimmt, aus irgendeinem Grund!

"-1" bedeutet kein Objekt. Da es kein Objekt gibt, ist true
 
MakarFX #:

Du bist einfach nicht auf dem Laufenden.)


Ich habe Ihnen gezeigt, wie die Überprüfung der Existenz des Objekts aussehen sollte. Und dass meine Funktion nicht funktionieren wird? Im Gegenteil, sie ist vielseitiger. Wenn Sie mit einem Unterfenster arbeiten müssen, werden Sie keinen großen Unterschied bemerken.

 
Mihail Matkovskij #:

Ich habe Ihnen gezeigt, wie die Überprüfung der Existenz des Objekts aussehen sollte. Und dass meine Funktion nicht funktionieren wird? Im Gegenteil, sie ist vielseitiger. Wenn Sie mit einem Unterfenster arbeiten müssen, macht das keinen großen Unterschied.

Lassen Sie mich die Frage wiederholen

Was wäre, wenn
ObjectFind(chart, name)=-1

Was dann?

 
MakarFX #:
"-1" - es gibt kein Objekt. Da es kein Objekt gibt - wahr

Ihre Funktion wird true zurückgeben, wenn ein Fehler auftritt:

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Fragen von Neulingen zu MQL4 und MQL5, Tipps und Diskussionen über Algorithmen und Codes

Mihail Matkovskij, 2021.12.06 12:38

Ihre Botschaft bereichert. Sie sollten Ihre und meine Funktion mit einer falschen Diagramm-ID testen und wenn das Objekt im Unterfenster erstellt wird. Und sehen Sie, was Ihre Funktion zurückgibt und was meine zurückgibt. Und lesen Sie die Dokumentation sorgfältig. Alle Links und Zitate sind oben angegeben.


 
  string name = "name";

  ObjectCreate(1, name, OBJ_HLINE, 1,0,0);

  Print(FindObject("name"));

  if (objectExist(0, "name")) Print("objectExist Find");
  else Print("objectExist Object not found.");

...

bool objectExist(const long _chartID, const string _name) { return(ObjectFind(_chartID, _name) >= 0); }

bool FindObject(string name)
  {
   if(ObjectFind(0,name)) return(false);
   return(true);
  }
Ich erstelle nicht im Hauptfenster, es ist immer noch wahr (aber Makar schrieb für meine Situation nur für das Hauptfenster). Für objectExist ist klar, dass es >= 0 ist.


Wenn die Suche nach einem anderen Objekt nicht "name", dann Makars Variante wird false zurückgegeben.
 
Mihail Matkovskij #:

Vervollständigt die Nachricht. Testen Sie Ihre und meine Funktion mit einer falschen Diagramm-ID und wenn das Objekt im Unterfenster erstellt wird . Und sehen Sie, was Ihre Funktion zurückgibt und was meine zurückgibt. Und lesen Sie die Dokumentation sorgfältig. Alle Links und Zitate sind oben angegeben.

Mihail Matkovskij #:

Ich habe Ihnen angegeben, wie die Existenzprüfung des Objekts aussehen sollte. Und meine Funktion wird nicht funktionieren? Im Gegenteil, sie ist universeller. Wenn Sie mit einem Unterfenster arbeiten müssen, macht das keinen großen Unterschied.


Was die Allgemeingültigkeit der Funktion angeht, nun...

bool FindObject(string name,int win)
  {
   if(ObjectFind(0,name)!=win) return(false);
   return(true);
  }
 
MakarFX #:

Ein interessanter Punkt...

Sie suchen nach zwei Zeilen

und Sie entfernen eine.

Die Frage ist nur, welche? Wie lautet der Nachname von "line_name"?

Diejenige, die nach der Konvention wahr ist
Grund der Beschwerde: