Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1373

 
Versuchen.
 
Nikita Chernyshov #:

Der Puffer sollte nicht durch die Farbe, sondern durch den Wert erfasst werden.

Schauen Sie sich an, was der Puffer ausgibt, wenn er seine Farbe ändert.

D.h., es gibt zwei Puffer. Rot und grün.

Geben Sie diese beiden Puffer über Commen aus und verfolgen Sie, was der Puffer anzeigt, wenn er "aktiv" ist. Dies sind numerische Werte. Das sind diejenigen, mit denen Sie interagieren.

Geben Sie keine Ratschläge, die zu mql4 passen und nicht immer zu mql5 passen

 
Oleg Kolesov #:
Hallo. Wie erhalte ich den Farbindex im Expert Advisor? (Um ein Signal zu erhalten, wenn sich eine Farbe ändert).

In der Regel hat ein Indikator zuerst einen Wertepuffer und dann einen Farbpuffer.

   SetIndexBuffer(0, buffMACD, INDICATOR_DATA);           // Буфер данных
   SetIndexBuffer(1, colorBuff, INDICATOR_COLOR_INDEX);   // Буфер цвета
   SetIndexBuffer(2, buffSignal, INDICATOR_DATA);         // Буфер данных
   SetIndexBuffer(3, colorSignal, INDICATOR_COLOR_INDEX); // Буфер цвета

Dann kopieren Sie die Werte des 1. oder 3. Puffers, nachdem Sie den Indikator-Handle erhalten haben. Je nach Anzahl der im Indikator definierten Farben können nur ganzzahlige Werte von Null, 0 und höher angegeben werden. Alles, was Sie bei der Programmierung des EA wissen müssen.

 

Können Sie mir sagen, wie ich ein grafisches Objekt in MQL5 erstellen kann, um den Fehler 4202 zu vermeiden?

Ich habe diesen Code in MQL4 verwendet:

   string Obj_Rectangle="Object"; 

   if(ObjectFind(0,Obj_Rectangle)==-1)                               
     {
      ObjectCreate(0,Obj_Rectangle,OBJ_RECTANGLE_LABEL,0,0,0);        
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_CORNER,0);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_XDISTANCE,100);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_YDISTANCE,100);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_XSIZE,200);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_YSIZE,150);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_BGCOLOR,clrBlue);
     }
     
   Alert(_LastError);

Aber in MQL5 gibt ObjectFind() den Fehler 4202 zurück

 
leon_17 #:

Können Sie mir sagen, wie ich ein grafisches Objekt in MQL5 erstellen kann, um den Fehler 4202 zu vermeiden?

Ich habe diesen Code in MQL4 verwendet:

Aber in MQL5, ObjectFind() gibt Fehler 4202

Wenn kein Objekt gefunden wird, handelt es sich um einen Objektsuchfehler...

ERR_OBJECT_NOT_FOUND

4202

Grafisches Objekt nicht gefunden


Alarmieren Sie nicht...

 
Alexej, danke, dass du helfen willst. Auch für Sie gilt der Grundsatz: dem Hungrigen eine Rute, nicht einen Fisch.
 
Alexey Viktorov #:

Wenn kein Objekt gefunden wird, ist dies der Objektsuchfehler...

ERR_OBJECT_NOT_FOUND

4202

Grafikobjekt nicht gefunden


Sie müssen ihn nicht alarmieren...

Nun, mir wurde einmal beigebracht, dass _LastError überhaupt keine Fehler zurückgeben sollte. Und es schien sogar eine Anforderung des Marktes zu sein. Ist sie nicht mehr so streng?

Und auch, soweit ich verstehe, könnte dieser Fehler überschreiben, einige andere wichtigere Fehler im Code, wie man damit umgehen?

 
leon_17 #:

Nun, mir wurde einmal beigebracht, dass _LastError überhaupt keine Fehler zurückgeben sollte. Und es schien sogar eine Anforderung des Marktes zu sein. Ist sie nicht mehr so streng?

Und auch, soweit ich verstehe, könnte dieser Fehler überschreiben, einige andere wichtigeren Fehler im Code, wie man damit umgehen?

Die Variable _LastError speichert den Wert des letzten Fehlers, der während der Ausführung des mql5-Programms aufgetreten ist.

Jemand hat dich schlecht unterrichtet. Die Variable _LastError speichert den erhaltenen Wert bis zum Auftreten des nächsten, nächsten Fehlers.

Es ist eine Anforderung des Marktplatzes, dass keine Ausführungsfehler vom Maklerserver empfangen werden\dc. Dokumentation lesen...

Документация по MQL5: Предопределенные переменные / _LastError
Документация по MQL5: Предопределенные переменные / _LastError
  • www.mql5.com
_LastError - Предопределенные переменные - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Oleg Kolesov #:
Alexej, danke, dass du helfen willst. Auch für Sie gilt der Grundsatz: dem Hungrigen eine Rute, nicht einen Fisch.
Nicht nur eine Angelrute, sondern eine Erklärung, wo man nachlesen kann, wie man das Problem lösen kann. Wenn jemand das Problem verstehen will, bin ich bereit, mir Zeit zu nehmen, bis er meine Worte versteht. Aber wenn man dich darum bittet und ich diese Vorlage verwende, um es herauszufinden, dann wird die Person es nicht herausfinden. Er braucht jemanden, der es tut, und dann wächst das Gras...
 
Ich stimme zu.
Grund der Beschwerde: