Diskussion zum Artikel "Welche Überprüfungen der Handelsroboter vor der Veröffentlichung in Market bestehen soll" - Seite 17

 
Mein Roboter scheitert Validierung wegen nicht genug Geld Fehler, ich habe versucht, mit dem Minimum erlaubt viel ist es immer noch fehlgeschlagen, jemand helfen!
Dateien:
 
nicht genug Geld vorhanden ist. Ich habe versucht, das minimal zulässige Lot zu verwenden, aber es funktioniert immer noch nicht, kann mir jemand helfen?

Sie berechnen Ihre Margin-Anforderungen nicht richtig. Verwenden Sie OrderCalcMargin, um das Auftragsvolumen richtig anzupassen oder den Auftrag überhaupt nicht zu platzieren, wenn die Margin-Anforderung höher ist als das zulässige Mindestvolumen.

Dies wird im zweiten Punkt des Artikels behandelt ... Unzureichende Mittel zur Durchführung des Handels

 

Hallo!

Kann jemand helfen, den Validierungsfehler zu beheben? Die EA kann auf Live-Handelskonto mit Trades geöffnet & geschlossen arbeiten, aber es kann nicht passieren diese. Bitte beraten Sie auf welche Codes hinzugefügt werden, danke.


 

Hallo zusammen, haben Sie eine Idee, warum ich die folgenden Meldungen erhalte: "keine Handelsoperationen" und "Tester braucht zu lange"? Ich habe bereits meine Einstellungen gelockert, so dass Trades ausgelöst werden. Ich stoße auch nicht wirklich auf Probleme, wenn ich den Strategietester benutze, GetLastError() gibt mir immer "0" zurück. Ist die Validierung gegen historische Preise wie in Tester oder zufällig generierte Preise?



 
Alexey Viktorov #:

Suchet und ihr werdet finden. Letzter Hinweis: Haftbefehlsprüfung.

Meinen Sie die Funktion OrderCheck()? In der Dokumentation steht, dass sie prüft, ob genug Geld für die Transaktion vorhanden ist. Ich hätte auch gerne eine Funktion zur Überprüfung des Marktschlusses, auch für MT4

 
Ivan Titov #:

Meinen Sie die Funktion OrderCheck()? In der Dokumentation steht, dass sie prüft, ob genug Geld für eine Transaktion vorhanden ist. Ich hätte auch gerne eine Funktion zur Überprüfung des Marktschlusses, auch für MT4

Nicht nur die Deckung der Mittel. Hier zum Beispiel

ENUM_ORDER_TYPE order_type;
double tp = 0.0,
       price = 0.0;
MqlTick mqlTick;
MqlTradeRequest           my_request;               // Daten anfordern
MqlTradeResult            my_result;                // Ergebnisdaten
MqlTradeCheckResult       my_check_result;          // Daten zur Ergebniskontrolle
long chart_id = ChartID();
/********************Script Programmstartfunktion*******************/
void OnStart()
 {
  ZeroMemory(my_request);
  ZeroMemory(my_check_result);
//--- Einstellung my_request
  int k = order_type%2 == ORDER_TYPE_BUY ? 1 : -1;
  double pr = price != 0.0 ? price : order_type == ORDER_TYPE_BUY ? mqlTick.ask : mqlTick.bid;
  ENUM_TRADE_REQUEST_ACTIONS action = order_type == ORDER_TYPE_BUY || order_type == ORDER_TYPE_SELL ? TRADE_ACTION_DEAL : TRADE_ACTION_PENDING;
  my_request.action     = action;
  my_request.symbol     = _Symbol;
  my_request.volume     = 0.1;
  my_request.type       = order_type;
  my_request.price      = pr;
  my_request.sl         = 0.0;
  my_request.tp         = tp > 0.0 ? pr+tp*k : 0.0;
//meine_Anfrage.magic = Magic;
  my_request.deviation  = 10;
  bool check = OrderCheck(my_request, my_check_result);
  if(!check)
    Print(my_check_result.retcode);
  DebugBreak();
 }/******************************************************************/

10027

TRADE_RETCODE_CLIENT_DISABLES_AT

Autotrading wird durch das Client-Terminal verboten


Auch falscher Preis in der Anfrage,


falsche Stops und viele andere Dinge, und was den Fehler 10018 angeht, ja, ich habe mich mit der Antwort beeilt und nicht nachgesehen. Und es stellte sich heraus, dass es alles andere als 10018 war....

 
Hallo, wie kann ich die Prüfung durchlaufen, wenn der Exper Advisor nur für ein Symbo... ist, dieses aber nicht geprüft wird und somit keine Trades in der automatischen Prüfung ausgeführt werden?
 
@Darius Elias Rey #: Hallo, wie kann ich die Prüfung durchlaufen, wenn der Expert Advisor nur für ein Symbol ist... dieses aber nicht geprüft wird und somit keine Trades in der automatischen Prüfung ausgeführt werden?

Gemäß den Regeln für Marktprodukte dürfen Sie Ihren EA nicht auf ein einziges Symbol beschränken oder limitieren. Ihr EA muss für alle Symbole funktionieren, auch wenn er nur für ein einziges Symbol verwendet werden soll.

 

Hallo,

Ich habe eine neue Version 1.28 meines EAs eingereicht und er wird nicht validiert mit "not enough money error", zuerst fand ich es seltsam, weil ich die CheckMoneyForTrade Funktion seit Version 1.0 implementiert habe und ich habe den Fehler vorher nicht einmal bekommen. Ich habe auch meinen Test gemacht, bevor ich den EA abgeschickt habe, und er ist schlüssig, er nimmt keinen Handel an, wenn es keine freie Marge gibt, um ihn zu decken. Irgendeine Idee?

Der Fehler, den ich bekomme:

Log von meinem Test während des gleichen Zeitraums wie oben, es werden keine Aufträge platziert, wenn kein Geld/Margin erkannt wird.

\

Hat noch jemand Erfahrung mit diesem Fall? Vielen Dank im Voraus.

Mit freundlichen Grüßen

 
Haidar, Lionel Haj Ali #: Ich war die Einreichung einer neuen Version 1.28 von meinem EA und es ist nicht erhalten validiert mit "nicht genug Geld Fehler", zuerst fand ich es seltsam, weil ich die CheckMoneyForTrade-Funktion seit Version 1.0 implementiert, und ich habe nicht einmal den Fehler vor bekommen. Ich habe auch meinen Test gemacht, bevor ich den EA abgeschickt habe, und er ist schlüssig, er nimmt keinen Handel an, wenn es keine freie Marge gibt, um ihn zu decken. Irgendeine Idee?

Der Fehler, den ich bekomme: Log von meinen Tests während des gleichen Zeitraums wie die oben genannten, keine Aufträge platziert werden, wenn kein Geld / Marge erkannt \ Jemand anderes in diesem Fall?

In Ihrem ersten Bild kann man deutlich sehen, dass vor dem Handel die verfügbare freie Marge -10,36 betrug. Wenn Ihr Code dies nicht korrekt erkannt hat, dann liegt das Problem in Ihrem Code.