Fehler, Irrtümer, Fragen - Seite 1541

 
Karputov Vladimir:
Benötigen Sie ein Analogon zum Rechtsklick auf den Chart und "Aktualisieren" für den Indikator?
Ähm ... Ich brauche nichts. Ich habe nur gesagt, dass ChartRedraw() nicht mit dem "Refresh"-Klick vergleichbar ist.
 
Wie eröffnet man ein Demokonto auf dem Metaquotes-Server? Um neue Versionen von mt5 zu erhalten ...
 
Vladimir Pastushak:
Wie eröffnet man ein Demokonto auf dem Metaquotes-Server? Um neue Versionen von mt5 zu erhalten ...
wählen Sie den MetaQuotes-Demo-Server, wenn Sie ein Demokonto eröffnen
 
Karputov Vladimir:
Benötigen Sie ein Analogon zum Rechtsklick auf den Chart und "Aktualisieren" für den Indikator?

Ja, das ist richtig. Damit kann der Indikator zwar rechnen, aber nicht den Init ansprechen. ChartRedraw() tut dies nicht.

Aufgerufen in OnChartEvent

 
Владимир:

Ja, das ist richtig. Damit kann der Indikator zwar rechnen, aber nicht den Init ansprechen. ChartRedraw() tut dies nicht.

Aufgerufen in OnChartEvent

Machen Sie die gesamte Schleife zu einer Funktion und rufen Sie sie mit den erforderlichen Parametern von der gewünschten Stelle aus auf.
 
Владимир:

Ja, das ist richtig. Damit kann der Indikator zwar rechnen, aber nicht den Init ansprechen. ChartRedraw() tut dies nicht.

Aufgerufen in OnChartEvent

Für vier

  static int FullOnCalculate( void )
  {
    long volume[];
    int spread[];

    ArraySetAsSeries(volume, TRUE);
    ArraySetAsSeries(spread, TRUE);

    const int Size = MathMin(CopyTickVolume(Symbol(), Period(), 0, Bars, volume),
                             CopySpread(Symbol(), Period(), 0, Bars, spread));

    return(OnCalculate(Size, 0, Time, Open, High, Low, Close, Volume, volume, spread));
  }

Dasselbe gilt für den fünften.

 

Warum kompiliert diese Klasse unter MT4, aber nicht unter MT5?

class CHARTOBJECT
{
public:
  template <typename T>
#ifdef __MQL4__
  void SetProperty( const int id, const T Value, const int Modifier = 0 ) const
#else #endif
#ifdef __MQL5__
  void SetProperty( const ENUM_OBJECT_PROPERTY_STRING id, const T Value, const int Modifier = 0 ) const
#endif      
  {
    const string sType = typename(T);

    if (sType == "double")
      ::ObjectSetDouble(0, "", id, Modifier, (double)Value);
    else if (sType == "string")
      ::ObjectSetString(0, "", id, Modifier, (string)Value);
    else
      ::ObjectSetInteger(0, "", id, Modifier, (long)Value);

    return;
  } 
  
  virtual void operator =( const string Value ) const
  {
    this.SetProperty(OBJPROP_TEXT, Value);

    return;
  }
};
 
Gibt es zufällig ein #else oder #endif darin?
 
Комбинатор:
Ist #else oder #endif dort nicht unnötig?

Wenn ich in der#else #endif-Zeile#endif entferne, lässt sich das Programm nicht kompilieren. Ich weiß auch nicht, warum es sich nicht kompilieren lässt.

Aber selbst wenn ich alle bedingten Kompilierungen entferne, wird es unter MT5 nicht kompiliert, aber unter MT4 schon.

 
Alexey Kozitsyn:
Was ist ein Multiterminal?)
Es handelt sich um eine Version des MT4-Terminals, von dem eine Instanz angeblich mit mehreren Konten gleichzeitig arbeiten kann. Ich habe die Installationsdatei fcmt4multisetup_de.exe von der FXCluba-Website heruntergeladen. Handelt es sich um ihre Entwicklung im Allgemeinen und bin ich an die falsche Adresse gerichtet?