[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 915

 
ViktorF:

Hallo!

Frage zum Testgerät:

Wenn ich EAs teste, stoppt der Tester die Verarbeitung von Preisen nach einem S/L-Durchbruch. Was sollte ich tun, um dies zu verhindern? Was muss ich tun, wenn ich möchte, dass der Tester den EA nach dem Überschreiten des Stopps weiter testet?


Vielleicht haben Sie ein Skript, nicht ein EA))) und welche Testperiode setzen Sie?

Wenn alles in Ordnung ist, posten Sie den EA, und jemand wird Ihnen sagen, was zu tun ist.

 
gheka:


Vielleicht haben Sie ein Skript, nicht ein EA))) und welche Testperiode setzen Sie?

Wenn Ihr Zeitrahmen in Ordnung ist, posten Sie den EA, jemand wird es Ihnen sagen.


Hauptsächlich 30 Minuten.

Das Interessanteste ist, dass, wenn ich Stop-Losses durch erzwungenes Schließen umgehe, die Preise weiter verarbeitet werden und die Kurve des Charts weiter gezeichnet wird. Aber wenn ich dieselbe Order an einem Stop schließe (den EA-Code ein wenig ändere) - hört der Test nach einem Stop-Durchbruch auf... Vielleicht sollten Sie einige Parameter in den Einstellungen des Testers ändern?

 
gheka:

Leute! Gibt es eine Funktion, die den Wert eines festen Verlusts in Pips zurückgibt, um eine Order zu schließen?

Ich weiß, dass es einen OrderStopLoss gibt, aber es ist ein Verlustkurs.

Ich weiß, es gibt eine OrderStopLoss - aber es ist ein Wert des Preises bei einem Verlust, aber ich habe nichts gefunden, helfen Sie mir

Hier suchen... :)

 
ViktorF:


Meistens 30 Minuten.

Das Interessanteste: Wenn ich die Stops durch erzwungenes Schließen umgehe, werden die Kurse weiterverarbeitet und die Chartkurve wird weiter gezeichnet. Aber wenn ich dieselbe Order durch einen Stop schließe (den Code des Expert Advisors ein wenig ändere) - hält der Test nach dem Zusammenbruch eines Stops an... Vielleicht sollten Sie einige Parameter in den Einstellungen des Testers ändern?

 
ViktorF:


Meistens 30 Minuten.

Das Interessanteste: Wenn ich die Stops durch erzwungenes Schließen umgehe, werden die Kurse weiterverarbeitet und die Chartkurve wird weiter gezeichnet. Aber wenn ich dieselbe Order durch einen Stop schließe (den Code des Expert Advisors ein wenig ändere) - hält der Test nach dem Durchbruch eines Stops an... Vielleicht sollten Sie einige Parameter in den Einstellungen des Testers ändern?

Höchstwahrscheinlich ein Fehler im EA-Code, der nach dem Schließen eines Stopps keine neuen Positionen mehr eröffnet
 

Guten Tag!

Frage zu Strategietester: Beim Testen im Journaltester keine Ergebnisse bei den Aufzeichnungen in der Logdatei, im Terminal Log Fehleraufzeichnungen auch keine ..... am Ende des Ladebalkens, im Tester gibt es ein fieses Quietschen. Berater liegt im Ordner Experten sind alle Checkboxen gesetzt hundert Hilfe plz?

 
artmedia70:

Hier suchen... :)


Danke!!!
 
artmedia70:
Höchstwahrscheinlich ein Fehler im EA-Code und nach dem Schließen eines Stopps werden keine neuen Positionen mehr eröffnet

Ich glaube, ich habe den Fehler herausgefunden: Das Kontrollkästchen ändert seinen Wert nicht, nachdem der Auftrag durch den Stop geschlossen wurde (d.h. nicht durch EA selbst). Wie kann ich das umgehen?
 
ViktorF:

Ich glaube, ich habe den Fehler herausgefunden: Die Flagge ändert den Wert nicht, nachdem die Order durch den Stop geschlossen wurde (d.h. nicht durch den Expert Advisor). Wie kann man das auf intelligente Weise umgehen?

Prüfen Sie im EA, ob der Auftrag durch einen Stop geschlossen wird. Und wenn ja, ändern Sie den Wert Ihrer Flagge.

Sie können die vorgefertigte Funktion von Igor Kim verwenden, um festzustellen, ob die letzte geschlossene Position durch einen Stop geschlossen wurde.

Oder Sie können es selbst tun. Auf jeden Fall kann es ein gutes Beispiel für den Anfang sein:

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.05.2008                                                     |
//|  Описание : Возвращает флаг закрытия последней позиции по стопу.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   ocp, osl;
  int      dg, i, j=-1, k=OrdersHistoryTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) {
                t=OrderCloseTime();
                j=i;
              }
            }
          }
        }
      }
    }
  }
  if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
    dg=MarketInfo(sy, MODE_DIGITS);
    if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
    ocp=NormalizeDouble(OrderClosePrice(), dg);
    osl=NormalizeDouble(OrderStopLoss(), dg);
    if (ocp==osl) return(True);
  }
  return(False);
}
 
artmedia70:

Prüfen Sie im EA, ob der Auftrag durch einen Stop geschlossen wird. Und wenn ja, ändern Sie den Wert Ihrer Flagge.

Sie können die vorgefertigte Funktion von Igor Kim verwenden, um festzustellen, ob die letzte geschlossene Position durch einen Stop geschlossen wurde.

Oder Sie können es selbst tun. Auf jeden Fall ist es ein gutes Beispiel für den Anfang:


Ich danke Ihnen! Ich werde es ausprobieren)
Grund der Beschwerde: