Fragen von einem "Dummy" - Seite 101

 
Desead:
Bitte geben Sie mir einen Tipp, wie ich den Geld- und Briefkurs für ein Währungspaar ermitteln kann, das derzeit nicht gehandelt wird. In mt4 gab es den Befehl marketinfo, aber in mt5 gibt es keinen solchen Befehl.

Hilfreicher Artikel - Migration von MQL4 zu MQL5

Um genau auf Ihre Frage einzugehen:

SymbolInfoDouble() und SYMBOL_BID/SYMBOL_ASK-Parameter

//Аналог маркетинфо
double  EurAsk = SymbolInfoDouble("EURUSD",SYMBOL_ASK);
double  EurBid = SymbolInfoDouble("EURUSD",SYMBOL_BID);

double  GbpAsk = SymbolInfoDouble("GBPUSD",SYMBOL_ASK);
double  GbpBid = SymbolInfoDouble("GBPUSD",SYMBOL_BID);
 
Können Sie mir bitte sagen, wenn mt5 einen Nachrichtenkalender in seinen Tools hat, kann der EA sie in irgendeiner Weise analysieren? Informieren Sie sich zumindest über den Zeitpunkt der Veröffentlichung und die Währung, auf die sich die Nachricht auswirken wird.
 
Lazarev:
Mfg, in mt5 gibt es einen Nachrichtenkalender in den Tools, kann der EA diese in irgendeiner Weise analysieren? Ermitteln Sie zumindest den Veröffentlichungszeitpunkt und die Währung, die von den Nachrichten beeinflusst werden.

Wenn die Nachricht auf dem Chart markiert ist (optional kontrolliert), dann kann der EA sie meines Wissens nach erkennen. Für den Rest müssen wir selbst eine Lösung finden.

Seit zwei Jahren bitte ich die Entwickler, Nachrichten in MQL zu implementieren und ein Archiv bereitzustellen (und nicht wie bisher pro Woche).

 
Interesting:

Wenn die Nachricht auf dem Chart markiert ist (optional kontrolliert), dann kann der EA sie meines Wissens nach erkennen. Ich bitte die Entwickler schon seit zwei Jahren, die Nachrichten mit MQL zu verknüpfen.

Und seit zwei Jahren bitte ich die Entwickler, die Nachrichten mit MQL zu verlinken und ein Archiv zur Verfügung zu stellen (und nicht wie jetzt eine Woche lang).

Wenn Sie bereits in einem anderen Thread erwähnt haben, dass die Nachrichten durch grafische Objekte erkannt werden können, könnten Sie mir sagen, wie? Ich möchte einen EA schreiben, der auf die Nachrichten handelt, auch wenn es nicht im Tester optimiert ist, kann ich es selbst irgendwie auf einem Demokonto korrigieren
 
Lazarev:
Ich möchte einen Expert Advisor entwickeln, der auf die Nachrichten handelt, auch wenn er im Strategy Tester nicht optimiert ist, werde ich ihn selbst irgendwie mit einem Demokonto korrigieren

Die im Diagramm angezeigten Nachrichten sind Grafikobjekte des Typs OBJ_EVENT. Sie können Informationen über diesen Typ erhalten, aber es ist sehr dürftig, Sie können nur den Namen der Nachricht und den Zeitpunkt der Veröffentlichung erhalten, weder die Bedeutung noch andere Informationen aus der Kalendertabelle werden erhalten.

Hier ist ein Skript, das vertikale Linien zu News-Ereignissen hinzufügt, ich denke, als Ausgangspunkt für Ihr Thema tun wird.

Dateien:
 
Ich kann nicht herausfinden, was der Indikator anzeigt. D.h. welche Funktion den Ziehungsauftrag erteilt. Kann mir jemand ein Beispiel für einen OnCalculate-Funktionskörper geben, der eine gerade Linie mit dem Wert 17 zeichnet.
Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
Desead:
Ich kann nicht verstehen, was genau in dem Indikator gezeichnet wird. D.h. welche Funktion das Zeichnen anordnet. Kann mir jemand ein Beispiel für den OnCalculate-Funktionskörper geben, der eine gerade Linie mit dem Wert 17 zeichnet?

Indikatorpuffer oder Diagrammobjekte?

HH die Indikatorpuffer werden im Indikator gezeichnet, die Arrays werden nicht als solche deklariert, die Zeichenstile werden in Präprozessoreigenschaften definiert #property indicator_...

Das heißt, alles, was in den Indikatorpuffern steht, wird automatisch gezeichnet.

Dateien:
Test.mq5  3 kb
 
Urain:

Indikatorpuffer oder Diagrammobjekte?

HH die Indikatorpuffer werden im Indikator gezeichnet, diese Arrays werden nicht als solche deklariert, die Zeichenstile werden in den Präprozessoreigenschaften #property indicator_... gesetzt.

Das heißt, dass alles, was sich in den Indikatorpuffern befindet, automatisch gezeichnet wird.

Danke, ich werde mir das jetzt ansehen.

Das Problem ist sehr einfach, in einem separaten Fenster die Kursdifferenz zwischen eurusd und gbpusd darzustellen. Ich habe die Preise der aktuellen Angebote erhalten. Der Unterschied bzw. auch. Das bedeutet, dass ich für jeden Tick einen Wert habe, nach dem ich einen Punkt zeichnen muss, der eine Linie bildet, oder ich muss eine Linie an diesen Koordinaten zeichnen.

Ich habe herausgefunden, dass ich Puffer und Arrays mit unterschiedlich gerichteter Anzeige verwenden sollte, ich kann nicht wirklich verstehen, wofür, wenn man bedenkt, dass ich keine Glättung nach Zeitraum benötige. Ich werde nach Informationen über das Zeichnen mit grafischen Objekten suchen, vielleicht gibt es ja etwas, das ich brauche.

 
Desead:

Danke, ich werde es mir jetzt ansehen.

Im Allgemeinen ist die Aufgabe sehr einfach, in einem separaten Fenster die Preisdifferenz zwischen Eurusd und Gbpusd darzustellen. Ich habe die Preise der aktuellen Angebote erhalten. Der Unterschied bzw. auch. Das bedeutet, dass ich für jeden Tick einen Wert habe, nach dem ich einen Punkt zeichnen muss, der eine Linie bildet, oder ich muss eine Linie an diesen Koordinaten zeichnen.

Ich habe herausgefunden, dass ich Puffer und Arrays mit unterschiedlich gerichteter Anzeige verwenden sollte, ich kann nicht wirklich verstehen, wofür, wenn man bedenkt, dass ich keine Glättung nach Zeitraum benötige. Ich werde nach Zeichnungen von grafischen Objekten suchen, vielleicht gibt es etwas, das ich brauche.

Achtung, es wird Probleme mit der Synchronisation geben. Zunächst müssen Sie eine synchronisierte Datenbank erstellen und dann Subtraktionen durchführen.

string Symbolbuf[6]={"EURUSD","GBPUSD","AUDUSD","USDJPY","USDCHF","USDCAD"};
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime fmin(datetime value1,datetime value2)
  {
   return(value1<value2?value1:value2);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime fmax(datetime value1,datetime value2)
  {
   return(value1>value2?value1:value2);
  }  
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
   datetime timestart;
   timestart=(datetime)SeriesInfoInteger(Symbolbuf[0],PERIOD_M1,SERIES_FIRSTDATE);
   for(int i=1;i<6;i++)
     {
      timestart=fmax(timestart,(datetime)SeriesInfoInteger(Symbolbuf[i],PERIOD_M1,SERIES_FIRSTDATE));
      Print(Symbolbuf[i]," = ",(datetime)SeriesInfoInteger(Symbolbuf[i],PERIOD_M1,SERIES_FIRSTDATE));      
     }
   Print("-----------------   ",timestart);  
   for(int i=0;i<6;i++)
     {
      Print(Symbolbuf[i]," = ",Bars(Symbolbuf[i],PERIOD_M1,timestart,TimeCurrent()));
     }
  }
 

Hallo. Ich möchte meinen Expert Advisor auf AUD/USD anwenden. Wie kann ich das machen, bei mir funktioniert es nur mit Euro/Dollar. Ich habe das Paar im Menü Service/Einstellungen/Debug geändert. Aber ich bekam die Meldung"Das ausgewählte Symbol wurde nicht gefunden".

Ich danke Ihnen.

Документация по MQL5: Получение рыночной информации / SymbolSelect
Документация по MQL5: Получение рыночной информации / SymbolSelect
  • www.mql5.com
Получение рыночной информации / SymbolSelect - Документация по MQL5