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

 
MosheDayan:

Freunde, ich brauche einen Rat...bitte.

Ich ziehe eine Linie vom letzten Balken bis zu der gewünschten "weißen" Ebene. Die "weiße" Ebene wird vom Beginn einer Handelssitzung(00:01 Uhr) bis zu ihrem Ende (23:59 Uhr) festgelegt. Wie kann ich erreichen, dass diese Linie nicht gerade nach unten verläuft, sondern bis zum Ende des Tages (23:59), d. h. bis zum Ende der Linie "weiß"? Gibt es eine Möglichkeit,Buffer1[1] zu reparieren... oder spiele ich umsonst mit den Puffern...

Danke.


Für DRAW_LINE benötigen Sie Kurswerte auf jedem Balken. Verwenden Sie eine andere Art von Strichzeichnung - ich denke, Sie werden das Richtige für sich finden. Setzen Sie einfach den Cursor auf DRAW_LINE und drücken Sie F1.

 
buyanov:


Nachricht vor dem Beginn des Segments

"somma echrested"

Was bedeutet das?

Was ist zu tun?


Das könnte das Problem sein.

 Alert(Delta,Digits()));
 
buyanov:


Nachricht vor dem Beginn des Segments

"somma echrested"

Was bedeutet das?

Was ist zu tun?


Das könnte das Problem sein.

 Alert(Delta,Digits()));
 
buyanov:


Vielleicht ist das das Problem.


Nein, leider habe ich das Textfragment falsch verstanden. Es sollte so lauten

//---------------------------------------------------------------------------------------------------------------------------

void OnTick()

{

//*********************************

Alert("beg OnTick");

FastMA=NormalizeDouble(iMA(NULL,0,Period_FastMA,0,MODE_SMA,PRICE_CLOSE,1),Digits());//Period_FastMA=4

SlowMA=NormalizeDouble(iMA(NULL,0,Periode_SlowMA,0,MODE_SMA,PRICE_CLOSE,1),Digits());//Periode_SlowMA=8

GetNext(NextTick);

Alert(NextTick);

Alert("NextTick=",NextTick);

Delta=NormalizeDouble(FastMA-SlowMA,Digits());

Alert(Delta,Digits());

Alert("FastMA=",DoubleToStr(FastMA)),Digits(), "SlowMA=",DoubleToStr(SlowMA,Digits()), "Delta=",DoubleToStr(Delta,Digits());


//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


//-----------------------------------------------------------------------------------------------------------------------

Alert("end OnTick()");

}


 
buyanov:

Nein, tut mir leid, ich habe einen Textabschnitt falsch geschrieben. Er sollte so lauten




Korrigieren Sie den Fehler in dieser Zeile.

Alert("FastMA=",DoubleToStr(FastMA)),Digits(),"SlowMA=",DoubleToStr(SlowMA,Digits()),"Delta=",DoubleToStr(Delta,Digits());

Verwenden Sie die Schaltfläche SRC, um den Code einzufügen

 
STARIJ:
Die Meldung enthält Zeilennummern und Positionen, an denen nach Meinung des Compilers ein Komma gesetzt werden sollte. Höchstwahrscheinlich die obige Zeile

Einfacher - die Klammer ist nicht geschlossen... :-)

 

Das Terminal verfügt über eine Rechtsklick-Funktion namens "Aktualisieren". Sie aktualisiert die Daten im Diagramm.

Wie kann ich eine ähnliche Aktion innerhalb des EA durchführen?

 
Dmitriy Voevodkin:

Das Terminal verfügt über eine Rechtsklick-Funktion namens "Aktualisieren". Sie aktualisiert die Daten im Diagramm.

Wie kann man eine ähnliche Aktion innerhalb eines EAs durchführen?


ChartRedraw() try. Dies ist jedoch keine vollständige Analogie.

 
Dmitriy Voevodkin:

Das Terminal verfügt über eine Rechtsklick-Funktion namens "Aktualisieren". Sie aktualisiert die Daten im Diagramm.

Wie können Sie eine ähnliche Aktion innerhalb des EA durchführen?

Was möchten Sie im EA aktualisieren?

 
Dmitriy Voevodkin:

Das Terminal verfügt über eine Rechtsklick-Funktion namens "Aktualisieren". Sie aktualisiert die Daten im Diagramm.

Wie kann ich eine ähnliche Aktion innerhalb eines EAs durchführen?

Das nächstliegende Analogon ist ChartRedraw - es zeichnet das Diagramm neu.

Aber was sonst noch passiert, wenn "Refresh", das ist unbekannt. Sicherlich ist die RefreshRates und Daten-Fenster ziemlich aktualisiert und WatchList auch. Das heißt, es gibt dort offensichtlich viele Aktionen.

Grund der Beschwerde: