Fehler, Irrtümer, Fragen - Seite 1545

 
Alexey Volchanskiy:
Youtube akzeptiert alle Dateien im Avi-Format, solange es keine gewalttätige Werbung oder Pornos gibt und die Größe < 15 MB ist, wenn Sie nicht im erweiterten Modus sind. Außerdem sollte es keine Werbung geben, auch nicht in Ihrer Signatur.
Ich habe Ihnen eine PM geschickt. Bei mir funktioniert das nicht.
 
Karputov Vladimir:

Dies ist ein technisches Forum und jeder Kommentar muss bestätigt werden:

  • Terminal- und Betriebssysteminformationen (die ersten drei Zeilen auf der Registerkarte "Log" nach dem Neustart des Terminals)
  • Code
  • eine detaillierte Beschreibung dessen, was Sie getan haben und was Sie bekommen haben.

Ziemlich detaillierte Beschreibung dessen, was ich beobachtet habe. Die Entwickler schulden mir nichts und ich schulde ihnen nichts. Wenn sie interessiert sind, werden wir mit ihnen im Service Desk sprechen.

Der Code für den leeren Indikator ist offensichtlich.

 
comp:

Ich habe ein Video aufgenommen, das zeigt, wie der Indikator (im Standardmodus - nicht im Debug-Modus) aktualisiert wird, aber keine neuen Balken gezeichnet werden. Sobald Sie den Indikator aus dem Chart nehmen, erscheinen sofort neue Balken.

Die Hoster akzeptieren die Videodatei nicht. Bei Bedarf kann ich sie an servicedesk schicken, so wie sie ist.

Bündeln Sie es in einem Archiv und versenden Sie es. Zip-Dateien werden unterstützt.
 
Bitte sagen Sie mir, wie ich die "Präzise Zeitskala" in MetaTrader 5 programmatisch aktivieren/deaktivieren kann. Ich kann sie nicht finden.
Durch CHART_SHOW_DATE_SCALE - das ist es nicht, wie ich es verstehe.

Aktivieren Sie die Zeit von Interesse manuell über den folgenden Pfad:

Terminal -> Dienst -> Einstellungen -> Grafiken -> Präzise Zeitleiste


Ich füge den Testcode unten an. Wenn "Präzise Zeitskala" manuell im Handelsterminal aktiviert ist, zeichnet dieser Testindikator vertikale Liniensegmente mit Verbindungspunkten zwischen zwei Balken. Wenn sie nicht aktiviert ist, befindet sie sich nicht zwischen den Balken.

Der folgende Screenshot zeigt ein vertikales Liniensegment, das vom Testcode zwischen den Balken erzeugt wird, wenn "Präzise Zeitskala" aktiviert ist



Die zweite Sache, die mich interessiert, werde ich Ihnen gleich sagen:

Wenn ich diesen Code im Testprogramm ausführe, werden die Linien nicht mit Ankerpunkten zwischen den Balken gezeichnet. Sie werden nicht wie im Screenshot oben, sondern wie im Screenshot unten erstellt.

MetaTrader 5 Version: 5.00 build 1295

Ich weiß nicht, wie ich hier eine präzisere Frage stellen kann, da ich keine Antwort auf die erste Frage habe.



P./S.:

Ich habe einige Klarstellungen vorgenommen:

  • Bildschirmfotos hinzugefügt;
  • den Testcode ersetzt, wobei die hier nicht verwendete Variable entfernt und ein separates Fenster angezeigt wurde;
  • Klarstellungen, die wir an dem Text in dunkelblauer Schrift vorgenommen haben.
Dateien:
 

Wie kann ich das Terminal dazu bringen , OnCalculate im MT5 aufzurufen? ChartRedraw ist nicht hilfreich. Die DLL-Variante ist nicht geeignet.

Mit anderen Worten, ich muss ein Ereignis "Berechnen" erstellen: https://www.mql5.com/ru/docs/runtime/event_fire#calculate

Документация по MQL5: Программы MQL5 / События клиентского терминала
Документация по MQL5: Программы MQL5 / События клиентского терминала
  • www.mql5.com
Программы MQL5 / События клиентского терминала - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Aus den Suchergebnissen kam ich zu dem Schluss, dass es in der MQL5-Hilfe keine Funktion zu geben scheint, mit der man die "Präzise Zeitskala" in MetaTrader 5 programmatisch aktivieren/deaktivieren kann.

Aus irgendeinem Grund hatte ich den Eindruck, dass sich diesbezüglich in letzter Zeit einiges geändert hat. Aber ich muss mich natürlich irren.

Wenn ja, dann wiederhole ich meine erste Frage:

Wird es eine Funktion geben, um die "Präzise Zeitskala" programmatisch zu aktivieren/deaktivieren?


Und in jedem Fall (wird oder wird nicht eingeführt werden): wie machen Sie diese on/off-Schalter in der Tester?

 
comp:

Wie kann ich das Terminal dazu bringen , OnCalculate im MT5 aufzurufen? ChartRedraw ist nicht hilfreich. Die DLL-Version funktioniert nicht.

Wenn Sie es finden, sagen Sie es mir bitte auch).

Soweit ich weiß, lautet die Antwort derzeit "auf keinen Fall".

 
Комбинатор:

Wenn Sie es finden, lassen Sie es mich auch wissen).

Soweit ich weiß, lautet die Antwort derzeit "auf keinen Fall".

Wenn ich ein Berater bin, sieht es folgendermaßen aus

#define  PERIOD_NULL -1

void CallOnCalculates( void )
{
  const string Name = __FUNCTION__;

  if (GlobalVariableCheck(Name))
  {
    const int Value = (int)GlobalVariableGet(Name);

    if (Value == PERIOD_NULL)
    {
      GlobalVariableDel(Name);

      ExpertRemove();
    }
    else if (ChartSetSymbolPeriod(0, Symbol(), (ENUM_TIMEFRAMES)Value))
      GlobalVariableSet(Name, PERIOD_NULL);
  }
  else
  {
    const ENUM_TIMEFRAMES period = Period();

    if (ChartSetSymbolPeriod(0, Symbol(), (period == PERIOD_MN1) ? PERIOD_W1 : PERIOD_MN1))
    {
      GlobalVariableTemp(Name);

      GlobalVariableSet(Name, period);
    }
  }

  return;
}

void OnInit( void )
{
  CallOnCalculates();

  return;
}

Aber ich brauche es für etwas anderes und es passt nicht zu mir.

 
comp:

Wenn durch einen Expert Advisor, dann wie folgt

Wenn das Skript, dann können wir (die Umsetzung ist völlig anders - ohne Änderung der TF)rufen OnCalculate für einen bestimmten Indikator auf dem Chart oder für alle von ihnen auf einmal.

Aber ich brauche es für etwas anderes und diese Variante ist nicht geeignet.

Diese (Skript-)Variante ist aber auch nicht geeignet, wenn der Indikator das Terminal dazu bringen soll, sein eigenes OnCalculate (MT5) aufzurufen.

 
Mit einem Indikator, ich brauche einen Indikator.
Grund der Beschwerde: