Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

EA immer auf letzte Wochen optimieren?

Geschrieben

hey...

also meine erste eigene EA Gurke ist soweit startbereit. Naja.... das Grundgerüst habe ich von einer dieser EA Builder HP´s... Aber er Handelt immerhin.

Ab Montag stell ich den einfach mal Demo mäßig online und guck zu ob er meine spielgeld vernichtet^^

 

Aber mal so ne ganz generelle Frage:

Ich habe eig so ziemlich jeden Parameter der Irgendwie variabel ist .. ähm.. wie soll ich das sagen.. so erstellt das ich sie von MT4 aus da in dem Einstellungsfesnter direkt ändern kann. z.Z läuft da grade eine Optimierung auf die letzten Wochen. Längere zeiträume würden wahrscheinlich Jahre dauern. Also ist es sinnvoll im rahmen der aktuellen Marktanpassung immer mit aktuellen backtest optimierungsdaten zu arbeiten? Also wenn ich z.B jeden Fr. Abend diese Optimierung für die letzten 4 Wochen durchlaufen lasse und mit diesen Einstellungen am Montag beginne? Wäre ja dann nicht unbedingt überoptimiert. wäre halt immer aus aktuelle Marktzeiträume optimiert.... Bin aber auch generell in sachen Forex noch unerfahren udn am meisten reizt mich wohl nur das thema EA. Deshalb würd ich halt gern mal hören was die Profis dazu sagen =) Wie schnell neigt denn der Markt dazu komplett umzuschwenken? Habe mal ein paar tests mit aktuellen werten in 2007 und 2008 gemacht. also das ergebniss war echt fürn Arsch. Anfang des Jahres bis heute dagegen wesentlich besser. Wobei ich als noob einfach mal davon ausgehe, das wenn ich ihn auf die Zeiträume davor optimiert hätte, ein besseres ergebniss gehabt hätte. ..

 

So genug geschwafelt...Aber eins noch. Mein EA lebt quasi vom Trend. gibt es da Tageszeiträume wo man so einen besser nicht laufen lassen sollte?

Featured Replies

Geschrieben

DAS ist eine interessante Frage.

Grundsätzlich kommt es auf deinen EA an. Das muss man für sich selbst ausprobieren. Es kommt auf die Idee und funktionsweise des EAs an.

 

Der Knackpunkt ist nämlich, dass eine Strategie niemals ewig funktioniert. Es macht also keinen Sinn eine Kurzfristtrade-Strategie über 5 Jahre zu optimieren.

 

 

Wenn es eine typische Strategie ist, die 2-4x am Tag handelt mit einer Haltedauer von ca. 15-30 Minuten, würde ich die diese für 4 bis 12 Wochen optimieren. Anschließend schauen nach "Wolken", also Parametergruppen die alle ähnlich sind (um einen zufälligen positiven Parameterpaarausreisser auszuschließen). Hat man etwas gefunden, dann die Strategie im Zeitraum davor backtesten. Ist dieses Ergebnis absolut daneben, taugt das alles nichts.

 

Man kann auch, gerade wenn die Strategie "nagelneu" und ungetestet ist, den Optimierungszeitraum anders wählen: die letzte Woche NICHT, aber dann zB 8 Wochen zurück.

Hat man schöne Parameter, backtestet man diese auf die letzte Woche. So machst du einen "Walk Forward" per Hand.

 

Scheitern tun nämlich die allermeisten Strategien im Walk Forward. Bestimmt Handelsplattformen, wie Ninjatrader oder Multicharts, haben das "ab Werk" dabei. Dabei gibt man einen Gesamtzeitraum ein, einen Optimierungszeitraum und einen "Live"Zeitraum. So kannst du simulieren, welche Ergebnisse du gehabt hättest wenn du bereits früher diesen EA gehabt hättest.

 

MT4 hat diese Funktion glaube ich nicht, dann muss man es per Hand machen. Also zB für die ersten 8 Wochen dieses Jahres optimieren, dann den "besten" Parameter nehmen und die 9. Woche backtesten. Am Ende der 9. Woche wieder für die letzten 8 Wochen optimieren, und für die 10. Woche Backtesten etc.

 

 

Es gehört ein wenig Erfahrung dazu, beurteilen zu können ob die Optimierungserlebnisse auch etwas fürs Live taugen. Ich hab mir schon abgewöhnt mich tierisch zu freuen wenn ich perfekte Ergebnisse im Backtest habe :blink: Da weiß ich, da stimmt etwas nicht.

 

edit:

Du kannst das mit den Tageszeiträumen eingrenzen, indem du einen Zeitfilter einbaust und auch noch nach Uhrzeiten optimierst, falls deine Strategie zB zur Asian Session zu viele Fehlsignale produziert.

Geschrieben

Ja das Backtesten ist eine Wissenschaft für sich. Die besten Strategien sind die, die nicht nur auf EINEM Währungspaar funktionieren. Z.b. eine EA, der auf dem EURUSD entwickelt wurde, der auch auf dem GBPJPY funktioniert.

 

Ich entwickle die EAs immer für einen bestimmten Zeitraum. Z.B. 1 Jahr und teste dann nach Abschluss nochmal in unterschiedlichen anderen Zeiträumen. Z.B. vor 2 Jahren oder 4. etc. Wenn dann das das Ergebnis positiv ist und die Equity Curve möglichst glatt ist, ist das schonmal ein gutes Zeichen.

 

Ein weiterer Test ist dann auf anderen Währungspaaren, die natürlich in der Regel ganz anders "funktionieren" - aber man bekommt manchmal gute Lerneffekte.

 

Darauf folgend schalte ich z.B. in ausgeprägten Short-Phasen (z.B. EURUSD seit Januar) alle Komponenten des EA's bis auf die Long-Komponente ab und teste nur die long-Komponente. Hier ist es dann von Interesse, dass diese Komponente in solchen Phasen wenig Equity verliert oder am besten noch Gewinn macht. Das gleiche mache ich für die Short-Komponente - nur eben in ausgeprägten Long-Phasen.

 

Ich achte generell darauf, eine möglichst glatte Equity-Curve zu erhalten und möglichst viele Trades durchzuführen - da eine hohe Anzahl an Trades die statistische Sicherheit erhöht und ich halte die Optimierungen in Grenzen um nicht in die Über-Optimierungsfalle zu geraten.

 

Nach Abschluss der ganzen Entwicklung teste ich den EA zeitnah mit microlots und Echtgeld (Verlust muss wehtun) :blink:

Geschrieben

Also ich bin mittlerweile davon ab, jedes System immer optimal zu halten. Die beste Optimierung ist immer noch ein gut diversifiziertes Systemportfolio. So lange die einen Systeme in den Marktphasen, für die sie nicht geschaffen sind, weniger verlieren als die dann gut laufenden "Spezialisten" gewinnen, mache ich Plus.

 

Mein Tipp: vergiss das mit der Überoptimierung und streue lieber Dein Portfolio. Dass die darin enthaltenen Systeme jedes für sich langfristig einen positiven Erwartungswert aufweisen sollten (inkl. Back- und Forwardtests) versteht sich von selbst.

Geschrieben
  • Autor
edit:

Du kannst das mit den Tageszeiträumen eingrenzen, indem du einen Zeitfilter einbaust und auch noch nach Uhrzeiten optimierst, falls deine Strategie zB zur Asian Session zu viele Fehlsignale produziert.

 

ja schön^^ Aber wie geht das? hab doch vom programmieren null Ahnung.

wäre auch gut wenn er keine Trad`s übers WE offen lässt. Normal würd ich ja manuell schließen. Aber das verfälscht ja nur den Backtest. und wie in einem anderen Thread schon gefragt: Wie mach ich das mit dem Teilaussteig bei T/P?^^

Muss doch auch brauchbare tut seiten auf deutsch geben. Find aber nur englische. und damit kann ich nur bedingt was anfangen....

Geschrieben
  • Autor
Wenns der Broker zulässt mit OrderClose(...).

 

OrderClose(takeprofit=50%) ? ja kp.. musst schon genauer werden.. wie oft mus sich noch schreiben das ich nochn anfänger bin^^

und woher weis ich ob der Broker das zulässt? steht das irgendwo auf seiner HP?

Geschrieben
wie oft mus sich noch schreiben das ich nochn anfänger bin^^

 

Gegenfrage: Willst du es lernen, oder willst du fertige Codeschnippsel die du nur zusammenkopieren musst?

 

Weil wenn du MQL lernen willst, und verstehen willst was dein EA tut. Sprich auch in der Lage sein willst ihn ohne fremde Hilfe anzupassen, dann solltest du dir erstmal die Grundlagen beibringen (gibt hier einige gute Topics dazu).

Und das verwenden von OrderClose etc. zählt bei MQL zu den absoluten Grundlagen.

 

Wenn englisch ein Problem ist, dann gibts einerseits wie gesagt im Forum bereits viele gute deutsche Topics für Anfänger, andererseits entsteht gerade eine Übersetzung den MQL-Books. Du kannst ja dort nachschauen, bzw. anfragen ob konkrete Chapters prorisiert behandelt werden falls sie noch nicht übersetzt sind.

 

Wenn du nur fertige Codeschnippsel willst, bin ich definitiv die falsche Ansprechperson :blink:

 

bzgl. Broker: sicher kannst du dir nur sein wenn du es testest (Demo läuft meist exakt gleich wie real).

Geschrieben
  • Autor

na also von wegen lernen.

Einzelne Bausteine sind ja eig klar. Aber ich habe bis jetzt noch nichts gefunden was mir mal erklärt wie die zusammenhänge sind.

Wann ich wieviel Klammern setzen muss und warum. in welcher Reihenfolge ich was schreiben muss. und wenn ich weis wie Baustein A funzt, dann weis ich aber immernoch nciht zu welchem Baustein ich Ihn packen soll. etc. Vllt bin ich ja auch einfach nur zu dumm um da irgenwo zusammenhänge zu sehen. Bis jetzt konnte ich mir eig vieles was mich so interessiert irgendwie selber beibringen. Aber programmieren is echt hardcore^^ Finds auch (auch wenns nichts nutzt) total bescheuert das die ein programm rausgeben ws für jeden frei zugänglich ist, aber wenn man es voll nutzen will man halb studieren muss. ich habe in den weiten des WWW tatsächlich ein Programm gefunden was wohl als Bauksten dienen soll. kostet aber 180 takken... xD ... ist auch leider nicht bekannt genug als das man es als DDL findet.

es gibt aber auch sachen die ich einfach rein logisch nicht verstehe. wenn ich z.b sage öffne wenn linie a größer als liie b. so.. wenn ich dann auf den Backtest Chart gucke dann sehe ich eindeutig das erst lange dannach geöffnet wurde, nachdem die Bedingung schopn lange gegeben war. Wenn ich will das sich etwas öffnet wenn sich die ADX Linien kreutzen und ich sage minusdi == plusdi (oder so) dann amcht er irgendwann mal auf.. nur nicht dann, wenn sie sich kreutzen. Wenn ich mit dem Supertrend Indikator arbeite. ich ihm sage mach auf wenn grün, schließe wenn rot. also über Pufferstellen und dem XXX!=1 dann kann es vorkommen das er wie wild auf und zu macht und innerhalb einer Kerze alles geld verbrennt. Da werden dann auch Trades geöffnet wärend ich zugucke und genau sehe das er eig nicht hätte öffnen dürfen. Das sind alles so dinge die ich rein logisch nicht nachvollziehen kann und mich tierisch aufregen^^

Bearbeitet von dobbi

Geschrieben

@dobbi

Zum Einstieg hilft Dir vielleicht der EA Builder (Klick mich!). Nur weil die Software frei verfügbar ist, bedeutet das noch lange nicht, dass sie jeder beherrschen muss. Programmieren hat halt auch ein wenig was mit logischem Denken und viel Geduld zu tun und es dauert eine Weile, bis man begriffen hat, was der Rechner da macht. Letztendlich macht der Computer nämlich das, was man ihm sagt - der Trick liegt darin, zu erkennen, was man ihm denn nun wirklich gesagt hat :blink:.

 

P.S.: Lies Dir mal meine Signatur durch.

Geschrieben
hey...

also meine erste eigene EA Gurke ist soweit startbereit. Naja.... das Grundgerüst habe ich von einer dieser EA Builder HP´s... Aber er Handelt immerhin.

Ab Montag stell ich den einfach mal Demo mäßig online und guck zu ob er meine spielgeld vernichtet^^

 

Aber mal so ne ganz generelle Frage:

Ich habe eig so ziemlich jeden Parameter der Irgendwie variabel ist .. ähm.. wie soll ich das sagen.. so erstellt das ich sie von MT4 aus da in dem Einstellungsfesnter direkt ändern kann. z.Z läuft da grade eine Optimierung auf die letzten Wochen. Längere zeiträume würden wahrscheinlich Jahre dauern. Also ist es sinnvoll im rahmen der aktuellen Marktanpassung immer mit aktuellen backtest optimierungsdaten zu arbeiten? Also wenn ich z.B jeden Fr. Abend diese Optimierung für die letzten 4 Wochen durchlaufen lasse und mit diesen Einstellungen am Montag beginne? Wäre ja dann nicht unbedingt überoptimiert. wäre halt immer aus aktuelle Marktzeiträume optimiert.... Bin aber auch generell in sachen Forex noch unerfahren udn am meisten reizt mich wohl nur das thema EA. Deshalb würd ich halt gern mal hören was die Profis dazu sagen =) Wie schnell neigt denn der Markt dazu komplett umzuschwenken? Habe mal ein paar tests mit aktuellen werten in 2007 und 2008 gemacht. also das ergebniss war echt fürn Arsch. Anfang des Jahres bis heute dagegen wesentlich besser. Wobei ich als noob einfach mal davon ausgehe, das wenn ich ihn auf die Zeiträume davor optimiert hätte, ein besseres ergebniss gehabt hätte. ..

 

So genug geschwafelt...Aber eins noch. Mein EA lebt quasi vom Trend. gibt es da Tageszeiträume wo man so einen besser nicht laufen lassen sollte?

Das ist ja ein Thema, da kann man sich auslassen.

Ich würde nicht auf die letzte Woche zurück optimieren, besser 10000 Bars wenn mgl.

Gefahr allgemein - OVERFITTING -

 

1. Walk Forward

2. Genetic Opt.

3. Brute Force

Geschrieben
Das ist ja ein Thema, da kann man sich auslassen.

Ich würde nicht auf die letzte Woche zurück optimieren, besser 10000 Bars wenn mgl.

Gefahr allgemein - OVERFITTING -

 

1. Walk Forward

2. Genetic Opt.

3. Brute Force

 

 

 

Hallo,

Ich bin ziemlicher MQL-Anfänger und habe mir da erst mal was programmiert, das Einstiegssignale generiert.

Das kann ich mir dann drucken oder am Bildschirm anzeigen lassen, aber es gibt doch auch die Funktion:

 

void PlaySound( string filename)

Function plays a sound file. The file must be located in the terminal_dir\sounds directory or in its subdirectory.

 

Kann mir jemand sagen, was für eine Datei ich in welches Verzeichnis laden muß?

Einen Ordner terminal_dir habe ich nicht gefunden.

 

Vielen Dank für einen Hinweis.

Geschrieben
Das ist ja ein Thema, da kann man sich auslassen.

Ich würde nicht auf die letzte Woche zurück optimieren, besser 10000 Bars wenn mgl.

Gefahr allgemein - OVERFITTING -

 

10000 Bars? Tick? Seconds? H4, D1? :wub:

Es kommt auf die Strategie drauf an, man muss ein Gefühl dafür bekommen. Es bringt mir nichts, 10000 H4-bars zu backtesten wenn die Strategie nur für 1 Jahr funzt (und genau da laufen soll). Das ist ja das schwierige, herauszufinden, wann steige ich ein und wann steige ich aus mit dieser Strategie.

 

 

void PlaySound( string filename)

Function plays a sound file. The file must be located in the terminal_dir\sounds directory or in its subdirectory.

 

Kann mir jemand sagen, was für eine Datei ich in welches Verzeichnis laden muß?

Einen Ordner terminal_dir habe ich nicht gefunden.

 

terminal_dir steht für deinen Metatrader-Hauptordner.

So etwas in der Art:

C:\Programme\Metatrader 4\Sounds

 

Und die Sounddatei - schau mal in diesen Ordner ob da "ab Werk" schon ein paar Dateien drinne sind. Diese Dateinamen setzt du anstelle des "string filename" im Code rein.

Geschrieben
Ich merke schon die Sache wird abstrakt. Bleibe trotzdem bei meinen 10000, ist ne gute Ausrichtung für jeden Frame. Gebe dir natürlich Recht, wenn das Zeitfenster begrenzt ist bzw. Definitionslos ist.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.