Fehler, Irrtümer, Fragen - Seite 306

 
Jager:
Wenn die Builds überall gleich sind, versuchen Sie, die Ordner tester\Agent-x.x.x.x-xxxxx\bases (auf Remote-Agenten und lokalen Agenten) ebenfalls zu löschen. Bei mir hat es funktioniert, wenn ich auf MQ-Angebote und das nächste auf A-ri-Angebote optimiert habe - manchmal wollten die Remote-Agenten auch nicht starten.
 
notused:
Wenn die Builds überall gleich sind, versuchen Sie auch, die Ordner tester\Agent-x.x.x.x-xxxxx\bases (auf Remote-Agenten und lokalen Agenten) zu löschen. Bei mir hat es funktioniert, wenn ich die Optimierung auf MQ-Quotes und die nächste auf A-ri-Quotes laufen ließ - manchmal wollten die Remote-Agenten auch nicht laufen.
Wenn es Dutzende von Agenten auf verschiedenen Computern gibt, ist das nicht realistisch. Es soll ohne äußere Einflüsse funktionieren.
 

Die automatische Ersetzung von "uint" anstelle von "int" für das Snippet for ist eine Zeitverschwendung. Anfänger fallen oft auf einen solchen Trick herein:

for (uint i = 0; i < SomeObject.Count - 1; i++)

uint kann eine beliebige Ganzzahl ohne Vorzeichen sein

 
Aus irgendeinem Grund ist oft, nachdem der Optimierer seine Arbeit beendet hat, die Kontextmenüleiste "Einzeltest ausführen" auf der Registerkarte"Optimierungsergebnisse" nicht aktiv, und dementsprechend wird auch ein Linksklick auf die Durchlaufzeile nicht gestartet.
 

Heute habe ich festgestellt, dass die Dynamisierung der EA-Parameter

und es ist nicht möglich, den Expert Advisor und den Indikator in einem zu kombinieren

...zusammen in einem.

Gibt es überhaupt eine Möglichkeit?

 
Im_hungry:

Ich habe heute festgestellt, dass es nicht möglich ist, EA-Parameter im EA dynamisch zu machen, und es ist nicht möglich, einen EA mit einem Indikator in einem zu kombinieren. Gibt es überhaupt keine Möglichkeit, dies zu tun?

Beschreiben Sie besser nicht Ihre Schlussfolgerungen, sondern die Ziele, die Sie zu erreichen versuchen.

 
Yedelkin:

Beschreiben Sie besser nicht Ihre Schlussfolgerungen, sondern die Ziele, die Sie zu erreichen versuchen.

Das ist natürlich alles richtig. Hier ist die Aufgabe:

den Indikatorparameter dynamisch machen, wenn Sie die Position schließen

Wir ändern einen der Indikatorparameter, nämlich die Aufgabe.

Hier ist meine Lösung:

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   vhandle=iCustom(NULL,0,"МТ5"); 
   if(vhandle<0)
     {
      Alert("Ошибка при создании индикаторов: ",GetLastError());
      return(-1);
     }
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   IndicatorRelease(vhandle);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{ 
   if (isNewBar()==true)
     {
     ArraySetAsSeries(Sp1Buffer,true);
     ArraySetAsSeries(Sp2Buffer,true);
//----------------------
     vhandle=iCustom(NULL,0,"МТ5",Symbol1,100,Lots,Close());
     if(vhandle<0)
       {
        Alert("Ошибка при создании индиката: ",GetLastError());
       }
     if(CopyBuffer(vhandle,0,0,50,Sp1Buffer)<0 || CopyBuffer(vhandle,1,0,50,Sp2Buffer)<0)
       {
        Alert("Ошибка копирования буферов индикатора номер ошибки:",GetLastError());
       }
     }    
}
//+==================================================================+
int Close()
{
...
}


Ich kann sagen, dass dieser Code funktioniert, weil das Testen zeigt unterschiedliche Ergebnisse, aber es ist nicht klar

aber es ist schwer zu verstehen, warum es so schlecht funktioniert.

es friert ein und gibt die gleichen Werte im Puffer, obwohl es unmöglich ist (2 Wochen mit den gleichen Werten

Wenn es keine Schleife gibt, wird einfach ein Fehler geschrieben:

Nachricht über Alert

Ошибка копирования буферов индикатора номер
 

Die Remote-Agenten werden nicht mehr aktualisiert.

2011.02.19 21:15:01     Tester  tester agent VPN  20 lvlaxim is failed
2011.02.19 21:15:01     VPN  20 lvlaxim connect closed
2011.02.19 21:15:01     Tester  tester agent VPN  20 lvlaxim cannot synchronized
2011.02.19 21:14:00     VPN  20 lvlaxim Old build 392 of Tester Agent. Attempt to update.
2011.02.19 21:14:00     VPN  20 lvlaxim authorized (agent build 392)
2011.02.19 21:13:59     VPN  20 lvlaxim connected

2011.02.19 19:08:29     VPN  20 lvlaxim connect closed
2011.02.19 19:08:29     Tester  tester agent VPN  20 lvlaxim cannot synchronized
2011.02.19 19:07:28     VPN  20 lvlaxim Old build 392 of Tester Agent. Attempt to update.
2011.02.19 19:07:28     VPN  20 lvlaxim authorized (agent build 392)
 
Voodoo_King:

401 bauen.

1) Es scheint, dass MT5-Benutzer nie darauf warten werden, dass die Entwickler einen Schalter im Testerformular hinzufügen und

eine Codezeile mit einer Wenn-Bedingung schreiben... um das Öffnen des Visualisierungsfensters bei jedem Lauf zu vermeiden

obwohl viele Benutzer in diesem Thread schon vor vielen Jahren darum gebeten haben.

2) Bitte stellen Sie die Ausgabe der Berechnung der verbleibenden Optimierungszeit im Testfenster in voller Größe wieder her (so wie es in MT4 war).

Ich unterstütze es voll und ganz - vielleicht in servicedesk? (schließen Sie es hundertmal).
 
notused:

Die automatische Ersetzung von "uint" anstelle von "int" für das Snippet for ist eine Zeitverschwendung. Anfänger fallen oft auf einen solchen Trick herein:

uint kann eine beliebige Ganzzahl ohne Vorzeichen sein

Danke