kein einziger Advisor funktioniert in Metatrader 5 nicht, egal welches Währungspaar - Seite 7

 

Und hier kommt die Ursache:

10030

TRADE_RETCODE_INVALID_FILL

Nicht unterstützte Ausführungsart für Saldoaufträge angegeben

Es wurde bereits erwähnt:

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

kein einziger Advisor funktioniert in Metatrader 5 bei jedem Währungspaar

sandex, 2015.04.29 12:56

auf Dollar umgestellt, der hauseigene EA funktioniert nicht, meiner schon

die Auftragsausführungsart sollte ORDER_FILLING_RETURN sein


 
Karputov Vladimir:

Und hier kommt die Ursache:

10030

TRADE_RETCODE_INVALID_FILL

Nicht unterstützte Ausführungsart für Saldoaufträge angegeben

die bereits erwähnt wurde:


Wie kann die Ausführungsart festgelegt werden?ORDER_FILLING_RETURN
 
So korrektORDER_FILLING_ dort vielleicht FOG zu RETURN... Ich habe es auch mit MT5 versucht - die geringste Störung im Code während des Handels und ich verlor $100 darauf, neue Codes funktionierten auch nicht auf der Demo, bis ich einige meiner Funktionen hinzufügte - vielleicht war es so konzipiert ... Ich weiß nicht, wofür... Ich habe MT5 schon vor langer Zeit aufgegeben, obwohl ich damit angefangen habe - es schien sicherer und einfacher zu sein...
 
chipo:
So korrektORDER_FILLING_ dort vielleicht FOG zu RETURN... Ich habe es auch mit MT5 versucht - die geringste Störung im Code während des Handels und ich verlor $100 darauf, neue Codes funktionierten auch nicht auf der Demo, bis ich einige meiner Funktionen hinzufügte - vielleicht war es so konzipiert ... Ich weiß nicht, wofür... Ich habe MT5 schon vor langer Zeit aufgegeben, obwohl ich damit angefangen hatte - er schien mir zuverlässiger und einfacher zu bedienen zu sein...
Es gibt keineORDER_FILLING-ORDER_FOK- FOK Zeilen in 1 Standard Expert Advisor.
 
alle Standard-EAs auf einer Standardbibliothek aufbauen, müssen Sie die Bibliothek bearbeiten
 
Alexander Bereznyak:
alle Standard-EAs auf der Standardbibliothek aufbauen, sollte die Bibliothek korrigiert werden

Es besteht keine Notwendigkeit, die Standardbibliothek zu bearbeiten - dies ist der falsche Ansatz. Sie sollten den EA einfach unter einem neuen Namen speichern und den Code ein wenig ändern. Speichern Sie zum Beispiel Moving Averages.mq5 unter dem neuen Namen Moving Averages1.mq5.

Fügen Sie in der Kopfzeile eine Beschreibung hinzu, dass dieser EA die Ausführungsrichtlinie ORDER_FILLING_RETURN verwendet:

#property version   "1.00"
#property description "Политика исполнения: ORDER_FILLING_RETURN"
#include <Trade\Trade.mqh>

und fügen Sie eine Codezeile in den Funktionen für das Schließen und Öffnen von Positionen hinzu:

//+------------------------------------------------------------------+
//| Check for open position conditions                               |
//+------------------------------------------------------------------+
void CheckForOpen(void)
  {
   .
   .
   .
//--- additional checking
   if(signal!=WRONG_VALUE)
      if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
         if(Bars(_Symbol,_Period)>100)
           {
            CTrade trade;
            trade.SetTypeFilling(ORDER_FILLING_RETURN);
            trade.PositionOpen(_Symbol,signal,TradeSizeOptimized(),
                               SymbolInfoDouble(_Symbol,signal==ORDER_TYPE_SELL ? SYMBOL_BID:SYMBOL_ASK),
                               0,0);
           }
//---
  }
//+------------------------------------------------------------------+
//| Check for close position conditions                              |
//+------------------------------------------------------------------+
void CheckForClose(void)
  {
   .
   .
   .
//--- additional checking
   if(signal)
      if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
         if(Bars(_Symbol,_Period)>100)
           {
            CTrade trade;
            trade.SetTypeFilling(ORDER_FILLING_RETURN);
            trade.PositionClose(_Symbol,3);
           }
//---
  }
 
Karputov Vladimir:

Es besteht keine Notwendigkeit, die Standardbibliothek zu bearbeiten - dies ist der falsche Ansatz. Sie sollten den EA einfach unter einem neuen Namen speichern und den Code ein wenig ändern. Speichern Sie zum Beispiel Moving Averages.mq5 unter dem neuen Namen Moving Averages1.mq5.

Fügen Sie in der Kopfzeile eine Beschreibung hinzu, dass dieser EA die Ausführungsrichtlinie ORDER_FILLING_RETURN verwendet:

und fügen Sie eine Codezeile zum Schließen und Öffnen von Positionen hinzu:

Großartig! Alles funktioniert. Vielen Dank für Ihre harte Arbeit und Ihre Erklärungen!
 
Wird das Thema nicht gelöscht werden? Ich könnte es in Zukunft brauchen :)
Grund der Beschwerde: