Handelstage

1 Antworten

jdowney

Kunde, bbp_participant, Gemeinschaft, 12 Antworten.

Profil besuchen

vor 10 Jahren #111962

Hallo Unterstützung,

 

Ich habe ein Problem mit meinem EA, um an bestimmten Tagen der Woche zu handeln, mit der Option, den Tag in EA aus- oder einzuschalten.

 

Wenn ich jedoch einen Backtest auf der MT4-Plattform durchführe, handelt der EA nur montags und nicht den Rest der Woche.

 

Ich habe Variablen sowohl als Boolan als auch als int festgelegt und beide Optionen erfolglos ausprobiert.

 

siehe beigefügtes Bildschirmfoto und Strategie (TradeDays On OFF.sqw)

 

Irgendwelche Ideen, übersehe ich etwas oder ist es vielleicht die Reihenfolge, in der die Regeln sein sollten...

 

Mit freundlichen Grüßen John.

 

 

//——————————————————————–
// No Trades Mon

IF (IsBarOpen ist True) && (((MonTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// No Trades Tue

IF (IsBarOpen ist True) && (((TueTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// No Trades Wed

IF (IsBarOpen ist True) && (((WedTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// No Trades Thur

IF (IsBarOpen ist True) && (((ThuTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// No Trades Fri

IF (IsBarOpen ist True) && (((FriTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// No Trades Sat

IF (IsBarOpen ist True) && (((SatTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_)))
DANN
   // Aktion #1
      Schließen Sie alle Aufträge ab;

   // Aktion #2
   Nichts tun

END IF;

//——————————————————————–
// EnvUpper Band Kurz

IF (IsBarOpen ist True) && (((Bid >= Envelopes( 8 , Exponential , 0 , Median price , 0.12 )[1])
      Und ((SpreadInPips < 7)
      Und ((DayOfWeek[0] = _CONSTANT_)
      Und ((MonTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((TueTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((WedTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((ThuTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((FriTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und (SatTrade = 1)))))))))))))))
DANN
   // Aktion #1
      Bestellung abschließen mit Magic Number: 2000;

   // Aktion #2
   Verkaufen Sie 0,1 Lose zum Marktpreis
      Magische Zahl = 1000;
      Stop Loss = 25 Pips;
      Profit Ziel = (Hüllkurven( 8 , Exponential , 0 , Medianpreis , 0,03 )[1] ? 1 : 0) pips;

   // Aktion #3
      Pfeil nach unten ziehen;

END IF;

//——————————————————————–
// EnvLower Band Long

IF (IsBarOpen ist True) && (((Ask <= Envelopes( 8 , Exponential , 0 , Median price , 0.12 )[1])
      Und ((SpreadInPips < 7)
      Und ((DayOfWeek[0] = _CONSTANT_)
      Und ((MonTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((TueTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((WedTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((ThuTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und ((FriTrade = 1)
      Oder ((DayOfWeek[0] = _CONSTANT_)
      Und (SatTrade = 1)))))))))))))))
DANN
   // Aktion #1
      Auftrag abschließen mit Magic Number: 1000;

   // Aktion #2
   0,1 Lose zum Marktpreis kaufen
      Magische Zahl = 2000;
      Stop Loss = 25 Pips;
      Profit Ziel = (Hüllkurven( 8 , Exponential , 0 , Medianpreis , 0,03 )[1] ? 1 : 0) pips;

   // Aktion #3
      Pfeil nach oben zeichnen;

END IF;
 

0

Mark Fric

Administrator, sq-ultimate, 2 Antworten.

Profil besuchen

vor 10 Jahren #123738

Hallo,

 

Ein Problem, das ich sehe, ist, dass dort und/oder Bedingungen nicht richtig eingeklammert sind. 

Sie sollten Klammern hinzufügen, um "und"- und "oder"-Bedingungen richtig zu gruppieren, da sie sonst einzeln ausgewertet werden, was zu sehr unerwarteten Ergebnissen führt.

 

Sie können Klammern im c IF-Panel setzen, siehe Screenshot.

 

 

 

Mark
StrategyQuant Architekt

0

Ansicht von 1 Antwort (von insgesamt 1)