Expert Advisors: ManualTradeOnStrategyTester - Seite 2

 

Schön und perfekt. Excel funktioniert gut.
ABER nach 2 Tagen kommt diese Spamming-Meldung

2016.08.16 16:19:08.052 2016.01.04 00:25:00 EA detected error: 1004 -- EA Aborted!!! Pls. close EA now and attend to your open entry/ies.

that block orders

HELP!


 
Andrasdudu:

Schön und perfekt. Excel funktioniert gut.
ABER nach 2 Tagen kommt diese Spamming-Meldung

2016.08.16 16:19:08.052 2016.01.04 00:25:00 EA detected error: 1004 -- EA Aborted!!! Pls. close EA now and attend to your open entry/ies.

that block orders

HELP!


Der Fehler, den Sie erhalten haben, ist aufgetreten, als der EA einen Befehl von Ihrer Excel-Schaltfläche erhalten hat... irgendwie war Ihr EA nicht in der Lage, den Auftrag auszuführen, die Meldung "Order Not Sent" hätte ebenfalls erscheinen müssen:

//+------------------------------------+
//| TRADE ausführen |
//+------------------------------------+ 
bool ExecuteTrade(string Entry,double ThePrice,double lot) // Eintrag = Kauf oder Verkauf / gibt bei Erfolg true zurück.
  {
   bool success;

   success=true;

   MqlTradeRequest mreq; // für Handel senden Anfrage.
   MqlTradeResult mresu; // Handelsergebnis erhalten.
   ZeroMemory(mreq); // Initialisierung der Anfrage zum Senden des Handels.

   Print("Order Initialized");
   mreq.action = TRADE_ACTION_DEAL;                                   // sofortige Auftragsausführung
   if(Entry=="buy") mreq.price = NormalizeDouble(ThePrice,_Digits);   // sollte der letzte Angebotspreis sein
   if(Entry=="sell") mreq.price = NormalizeDouble(ThePrice,_Digits);  // sollte der letzte Briefkurs sein
   mreq.symbol = _Symbol;                                             // Währungspaar
   mreq.volume = lot;                                                 // Anzahl der zu handelnden Lose
   mreq.magic = 11119;                                                // Magische Zahl bestellen
   if(Entry=="sell") mreq.type = ORDER_TYPE_SELL;                     // Verkaufsauftrag
   if(Entry=="buy") mreq.type = ORDER_TYPE_BUY;                       // Bestellung kaufen
   mreq.type_filling = ORDER_FILLING_FOK;                             // Art der Auftragsausführung
   mreq.deviation=100;                                                // Abweichung vom aktuellen Preis
//--- Bestellung abschicken
   if(!OrderSend(mreq,mresu))
     {
      Alert("Order Not Sent: ",GetLastError());
      ResetLastError();
      success=false;
     }
.
.
.
.
   if(success==false)
     {
      Alert("Error ORDER FAILED!!! - error:1004");
      Arun_error=1004;
     }
   return(success);
  }

... nicht sicher, was schief gelaufen ist auf Ihrem Prozess ... aber die einzige Ursache für den Fehler, den ich denken konnte, ist etwas auf Ihrem MT5-Setup ... oder ... auf der Quelle Befehl Ordner, wo Sie die Befehlsdateien Text gesendet, wahrscheinlich ein Text-Befehl sind nicht richtig gelöscht, nachdem sie verwendet werden oder gesagt, so von der EA. Überprüfen Sie, dass Befehlsquelle "gemeinsamen" Ordner, wenn es richtig auf Ihre Excel und der EA reagiert ... wenn es tut, dann muss es etwas in Ihrem MT5-Strategie-Tester, die die angeforderte Bestellung nicht erkennen kann.

 

Hallo zusammen, vielen Dank für den Expert Advisor.

Wenn ich auf den Start des Strategietesters drücke, öffnet sich der Visualizer und zeigt eine große "Waiting for update"-Meldung und nichts passiert.

Wie kann ich das Problem lösen?


Danke...

 


Hallo,

ich habe auch versucht, diesen Indikator zu verwenden, aber ich habe die gleiche Meldung erhalten.

Log schreiben:

1. 2020.04.18 21:14:44.766 strategytesterpracticetrade ist kein eigener Indikator und wird entfernt

2. 2020.04.18 21:14:44.766 kann keinen Indikator erstellen


Kann jemand dieses Problem lösen?

 


Ok, die Lösung ist (siehe Bild).

Maus-Rechtsklick auf ExpertMACD um das Kontextmenü im Navigator zu öffnen-> "Testen" oder "Test" auswählen.



Aber jetzt habe ich ein anderes Problem.


Wenn es eine .txt Datei mit dem Namen "sell.txt", "buy.txt" oder "close.txt" gibt, die auf

Win10:

C:\Users\[User]\AppData\Roaming\MetaQuotes\Terminal\Common\Files

MT5 öffnet jedes Mal eine neue Order! Er schließt eine Order nicht, wenn sich eine close.txt auf dem Pfad befindet.

Ich denke, das Problem liegt hier im Code:


// Wenn eine close.txt gefunden wird, wird jede offene Position mit der für die Position angegebenen maximalen Volumengröße geschlossen. 
   if(FileIsExist("close.txt",FILE_COMMON))
     {

      FileDelete("sell.txt",FILE_COMMON);
      FileDelete("buy.txt",FILE_COMMON);
      FileDelete("close.txt",FILE_COMMON);

      if(OpenPosition()=="buy")
        {
         PositionSelect(_Symbol);
         JustifySize=NormalizeDouble(PositionGetDouble(POSITION_VOLUME),2);
         ExecuteTrade("sell",CurP,JustifySize);
        }

      if(OpenPosition()=="sell")
        {
         PositionSelect(_Symbol);
         JustifySize=NormalizeDouble(PositionGetDouble(POSITION_VOLUME),2);
         ExecuteTrade("buy",CurP,JustifySize);
        }
     }


Es scheint, dass MT5 auf diese Zeile anders reagiert als gewünscht

if(OffenePosition()=="Kaufen")

Dateien:
pic.jpg  98 kb
 
Ich habe diese Nachricht bekommen EA abgebrochen !
Dateien:
the_PR.png  38 kb
 
Hallo gute Zeit
Möglichkeit, diese App oder Excel-Datei an mich zu schicken
Weil ich nichts mache