Zeichnen eines Quadrats oder Rechtecks. Ich brauche wirklich Hilfe... - Seite 7

 
evillive:

Um ein Häkchen durch ein anderes Symbol zu ersetzen,OBJ_ARROW und ARROW_CODE.

Hier habe ich herausgefunden, wie man es macht. Es hat funktioniert.
 
AlexeyVik:

Was gibt es nicht zu mögen an

ZEICHNEN_SCHNITT

1

Die Balken zwischen nicht leeren Werten der Linie

Da sie im Indikator nicht korrekt gezeichnet wird, wird die Linie in der jetzigen Darstellung nicht auf jedem H4, sondern auf jedem Balken des TF, auf dem der Indikator läuft, durch den Indikatorpuffer gezogen. Um dies zu vermeiden, müssen Sie entweder den Code ernsthaft überarbeiten oder die Linien mit Objekten zeichnen, was einfacher ist.

 
evillive:

Die Tatsache, dass sie in diesem Indikator nicht korrekt gezeichnet wird, in der Art, wie sie jetzt dargestellt wird, wird die Linie durch den Indikatorpuffer nicht auf jedem H4, sondern auf jedem Balken des TF, auf dem der Indikator läuft, gezeichnet. Um dies zu vermeiden, sollten Sie entweder den Code ernsthaft ändern oder Linien durch Objekte zeichnen, das ist einfacher.

Ich bestehe nicht darauf, das ist jedem selbst überlassen. Aber die vertikale Markierung und die Indikatorlinie können gut in einem Code untergebracht werden.

Das Einzige, was mich verwirrt, ist, dass man es komplett machen muss, um es zu erklären. Ich werde Ihnen dabei aus Prinzip nicht helfen. Deshalb habe ich den Tipp aufgegeben.

 

Der erste Ankerpunkt ist da, er war es im Prinzip.

Wie finde ich den zweiten Ankerpunkt?

   datetime t_Line = iTime(Symbol(),PERIOD_H4,i);         //--- В ПЕРЕМ t_Line Будет Присваиваться значение времени открытия бара
   CopyRates(_Symbol, PERIOD_H4, t_Line, 1, mqlRates);    //--- Структура для хранения информации 
   
   High_A = mqlRates[0].high; // глоб перем     Первая точка
   Time_A = t_Line;           // глоб перем
   
   High_B = mqlRates[0].high + mqlRates[0].high; // глоб перем      Вторая точка    (значение не правельное)
   Time_B = t_Line + t_Line;                      // глоб перем

    //+------------------------ Рисуем трендовые линии -----------------------------------------------------+                 
   ObjectCreate (Name_TLine + " TLine" + DoubleToStr(i,0),OBJ_TREND,0,Time_A,High_A,Time_B,High_B);         //--- Создаём обьект вертикальную линию
   ObjectSet    (Name_TLine + " TLine" + DoubleToStr(i,0),OBJPROP_STYLE,2);              //--- Со стилем
   ObjectSet    (Name_TLine + " TLine" + DoubleToStr(i,0),OBJPROP_COLOR,DimGray);        //--- Со цветом  
   ObjectSet    (Name_TLine + " TLine" + DoubleToStr(i,0),OBJPROP_WIDTH,0);              //--- С  толщиной
   ObjectSet    (Name_TLine + " TLine" + DoubleToStr(i,0),OBJPROP_BACK,0);               //--- С типом отображения. Объект на заднем плане
   ObjectSet    (Name_TLine + " TLine" + DoubleToStr(i,0),OBJPROP_RAY_RIGHT, false); 

 

Bei dieser Variante wird die Linie als Ganzes gezeichnet, aber in einer geraden Linie.

"Und du willst, dass das Ende der Linie mit dem nächsten H4-Kerzen-Hai verbunden ist.

         ObjectCreate    (0,Name_Obj + " V_Line" + DoubleToStr(i,0), OBJ_TREND, 0, t_Line, mqlRates[0].high, t_Line,mqlRates[0].low);
 
AlexeyVik:

Das Einzige, was mir peinlich ist, ist die Tatsache, dass man das ganze Ding machen muss, um es zu erklären. Ich helfe nicht aus Prinzip. Deshalb habe ich es aufgegeben, Tipps zu geben.

Das ist verständlich, aber wie ist es zu verstehen, dass man nicht um Hilfe bittet? Sie müssen ihn nicht vollständig ausfüllen.

Und diese Kommunikation "nebenbei" macht es leichter, die Sprache zu lernen. Für Anfänger gibt es Aufgaben, die ohne Hilfe, nun ja, nicht zu lösen sind.

 
AlexeyVik:

Ich bestehe nicht darauf, jedem das Seine. Aber die vertikale Markierung und die Indikatorlinie vertragen sich gut im selben Code.


Die Frage ist, wie man diesen Prozess verstehen kann. Außerdem können nicht alle Fragen in der Hilfe beantwortet werden.

 
Alex_Profit:


Die Frage ist, wie man diesen Prozess verstehen kann. Außerdem können nicht alle Fragen in der Hilfe beantwortet werden.

Ich habe ein Beispiel für ein funktionierendes Skript gegeben. Wir müssen es um Pfeile und Trendlinien ergänzen und es für H4 statt für den Monat neu erstellen. Man muss sich nur von dem Konzept des Indikators lösen und das Problem aus einem anderen Blickwinkel betrachten.

Ich sehe den praktischen Nutzen einer solchen Kennzeichnung nicht - es ist ein Zaun, aber was kann man damit erreichen?

 
evillive:

Ich sehe den praktischen Nutzen solcher Markierungen nicht, also einen Zaun, aber was haben Sie davon?

Jeder sieht den Zaun anders.

"Ich schaue mir die Löcher im Zaun an", im übertragenen Sinne.

 
Alex_Profit:


Die Frage ist, wie man diesen Prozess verstehen kann. Die Frage ist, wie der Prozess zu verstehen ist, und nicht alle Fragen können in der Hilfe beantwortet werden.

Das Lesen der Hilfe hilft Ihnen, die Programmiersprache zu erlernen. Und wenn etwas in der Hilfe nicht klar ist, können Sie Fragen stellen.

Wie können Sie eine Person beraten, die die Dokumentation nicht gelesen hat und keine Ahnung hat, wo SetIndexStyle(0, DRAW_SECTION); sein sollte, und es mit Verwirrung in OnCalculate einfügt?

Alex_Profit:

Aus irgendeinem Grund keine Änderung

Grund der Beschwerde: