Handelstage
1 Antworten
jdowney
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;
Mark Fric
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
Ansicht von 1 Antwort (von insgesamt 1)