Rainbow Trading BASIS + DELUXE EA programmieren lernen

Kursseite für die online Workshops Rainbow Trading EA programmieren lernen (BASIS und DELUXE)

Am Ende dieses Kurses wissen Sie, wie man einen voll funktionsfähigen und reich ausgestatteten Expert Advisor für MetaTrader 4 programmiert, der Trendfolgesignale aus dem Rainbow Trading auswertet, filtert und daraus abgeleitete Deals für Sie automatisiert.


Kursseite

Online Workshop-Serie: Rainbow Trading EA programmieren

In diesem interaktiven, drei-teiligen online Workshop vollenden wir gemeinsam die im Live Event Webinar der JFD Bank und Cristof Ensslin von mindful FX am 17.11.2020 begonnene Programmierung eines Rainbow Trading EA’s für MT4.

Vorbereitung: Live Event Webinar der JFD Bank und Cristof Ensslin von mindful FX
Session Datum: 17.11.2020

Videoaufzeichnung:

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA ist noch nicht vollständig funktionabel und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​

Klicken Sie hier, um den Code herunterzuladen:

Zusammenfassung: Die Teilnehmer des sehr gut gefüllten Webinar-Raums konnten dabei sehen und lernen,

  1. wie zwei Gleitende Durchschnitte (Fastline und Centerline des “Regenbogens”) mittels der iMA-Funktion im MQL4-Code des EA’s abgerufen werden

  2. mit welcher Logik und wenn-dann-Bedingungs-Abfrage daraus Richtungsfilter und Hammer-Kerzen-Handelssignale ermittelt werden können

  3. wie der EA mit Hilfe dieser Handelssignale die OrderSend-Funktion ansteuert und einen (und auch wirklich nur einen!) Deal eröffnet.

Teil 1: Online Workshop-Serie: Rainbow Trading EA PROGRAMMIEREN lernen
Session Datum: 01.12.2020

Videoaufzeichnung:

Zusammenfassung: In dieser Session lernen wir, den Code des EA’s so zu programmieren, dass der EA

  1. mit Eingabevariablen versehen wird, um ihn im MT4 bequem verwenden zu können

  2. wie wir die Eingabevariablen mit Dropdown-Menüs versehen können mittels ENUM_… Variablen, z.B. ENUM_TIMEFRAME oder ENUM_MA_METHOD

  3. während seiner Programmierung regelmäßig kompiliert werden sollte, um eventuelle Syntaxfehler schnell zu finden

  4. mittels einer statischen Variable den Eröffnungstick einer Kerze erkennt

  5. Ressourcen spart, indem er den Großteil des OnTick-Codes nur bei Eröffnungsticks durchläuft

  6. nicht nur beim ersten auftretenden Hammersignal einen einzigen Buy-Deal, sondern auch bei Folge-Signalen jeweils einen Buy-Deal eröffnet

  7. mittels einer Array-Variable, also einer Variable, die nicht nur einen Wert, sondern eine ganze Datenreihe speichert, eine flexible Anzahl an MAs verarbeiten kann

  8. mittels einer for-Schleife alle MA-Werte in dieser Array-Variable speichert

  9. mittels einer weiteren for-Schleife all diese MA-Werte so ausweitet, dass er erkennt, ob die MA-Schar vollständig bullisch oder bärisch aufgefächert ist.

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA ist noch nicht vollständig funktionabel und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 2: ONLINE WORKSHOP-SERIE: RAINBOW TRADING EA PROGRAMMIEREN LERNEN
Session Datum: Dienstag, 08. Dezember 2020

Videoaufzeichnung:

Zusammenfassung: in dieser Session lernten wir

  1. eine “for”-Schleife, also einen Programm-Loop zu programmieren

  2. dass für den Computer die Ordnungsnummern einer Liste immer mit 0 (statt 1) beginnt

  3. wie wir damit mittels OrderSelect alle Deals des EA’s im Pool der offenen Deals sowie deren Daten-Einzelheiten (z.B. OrderSymbol(), OrderOpenPrice(), OrderMagicNumber()) jederzeit abrufen können

  4. den EA für Wiederaufnahme des Handels nach Absturz-und-Neustart zu rüsten

  5. einen Trick, wie ein EA mittels MagicNumber 0 manuell eröffnete Deals managen kann

  6. den Unterschied zwischen Punkten, Pips, Indexpunkten etc.

  7. den anfänglichen SL-Kurs automatisch durch das Tief der Signalkerze zu ermitteln.

  8. den TP automatisch mittels eines eingebbaren Chance-Risiko-Verhältnisses zu berechnen.

  9. Deals per SL, TP, Trailing Stop und Break Even zu managen.

  10. welche Parameter der Funktion OrderModify mitzugeben sind

  11. mit NormalizeDouble richtige Rundungen durchzuführen

  12. mit eben dieser Funktion in der Praxis unnötige Fehlermeldungen im Trailing Stop zu vermeiden

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 3: ONLINE WORKSHOP-SERIE: Rainbow Trading EA PROGRAMMIEREN lernen
Session Datum: Dienstag, 15.12.2020

Videoaufzeichnung:

Zusammenfassung: in dieser dritten Session lernten wir

  1. Die Lotsize automatisch aus SL-Abstand und Dealrisiko in Prozent vom Kontokapital errechnen zu lassen, so dass effektives Risiko- und Moneymanagement möglich ist

  2. Wie wir eine eigene Funktion programmieren und diese im Hauptcode gezielt abrufen können

  3. Die unterschiedliche Verwendung der in MQL4 eingebaute MarketInfo(…)-Funktion

  4. Dass mit Moneymanagement ein Totalverlust so gut wie ausgeschlossen werden kann

  5. Die Lotsize so zu runden, dass es dem Volumens-Schritt (Lotstep) des Brokers für das Chart-Symbol entspricht; auch wenn dieser Lotstep außerhalb der üblichsten Werte (0.01, 0.1 und 1) liegt

  6. Automatisch zwischen fixer und automatisch errechneter Lotsize auswählen zu können

  7. Dass in die Abfrage
    if ( !BoolescheVariable )
    mit der Abfrage
    if ( BoolescheVariable == false )
    identisch ist, quasi als Synonym in der Programmiersprache verwendet werden kann

  8. Dass bei einer while-Schleife es immer ratsam ist, !IsStopped() mit aufzurufen.

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 4 (Bonus): ONLINE WORKSHOP-SERIE: Rainbow Trading EA PROGRAMMIEREN lernen
Session Datum: Dienstag, 05.01.2021

Videoaufzeichnung:

Zusammenfassung: in dieser Bonus-Session lernten wir

  1. Die Einstiege auf der Sell-Seite zu programmieren, also inverse Hammerkerzen zu finden und darauf zu handeln.

  2. Das Dealmanagement auf der Sell-Seite zu programmieren, also SL- und TP-Erteilung sicherzustellen und Trailing Stop und Break Even Funktionalität anzupassen.

  3. Dass man kompilieren muss, um testen zu können, was man soeben programmiert hat :-)

  4. Wie man in die Break Even Funktionalität einen vertikalen Versatz einbaut, um Slippage und Commission vorzubeugen.

  5. Eine als Text einzugebende Zeit in eine datetime-Variable umzuwandeln.

  6. Zu programmieren, die Handelszeiten des EA’s einschränken zu können.

  7. Wie man manuell eine Teilschließung durchführt.

  8. Dass die EA-Programmierung in einem Team, in einer Community wie in diesem Workshop, eine tolle, für alle Teilnehmer nützliche Gruppen-Dynamik mit sich bringt.

    Vielen Dank nochmal für Deine aktive Teilnahme!

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:


Online Workshop-Serie:
Rainbow Trading DELUXE EA programmieren

In diesem interaktiven, ursprünglich drei-, nun aber vier-teiligen online Workshop erweitern wir gemeinsam den im BASIS-Workshop entwickelten Rainbow Trading EA für MT4 um weitere wichtige Funktionalitäten, um die DELUXE-Version des EA’s zu erstellen.

Teil 1: Online Workshop-Serie: Rainbow Trading DELUXE EA PROGRAMMIEREN lernen
Session Datum: 26.01.2021

Videoaufzeichnung:

Zusammenfassung: In dieser Session lernen wir,

  1. die Eingabevariablen in Blöcke zu unterteilen, um sie übersichtlicher zu gestalten

  2. wie der EA ein bullisches und ein bärisches Engulfing erkennt

  3. per oder-Verknüpfung mittels ‘||’ (zwei vertikale Striche) in einer If-Abfrage mehrere Signaltypen umsetzen zu können

  4. korrektes Verschachteln von UND- und ODER-Verknüpfungen in If-Abfragen durchzuführen

  5. per Schalter-Eingabevariablen (boolesche Variablen) Freiheitsgrade in der Striktheit von Engulfing-Formationen zuzulassen

  6. dass Hammer- und Engulfing-Signale ein- und ausgeschaltet werden können

  7. Kerzen A und B im Engulfing-Setup den korrekten Kerzen 2 und 1 im Chart aus Programmiersicht zuzuordnen

  8. dass eine mit dem Namen “tester” gespeicherte Chart-Vorlage automatisch vom visuellen Modus des Strategietesters geladen wird

  9. bei der Fehlersuche mit der Print(…)-Funktion konstruktiv umzugehen

  10. dass if ( !BoolescheVariable ) gleich if ( BoolescheVariable == false ) ist

  11. dass if ( BoolescheVariable ) gleich if ( BoolescheVariable == true) ist

  12. wie man im Code gezielt Werte manipuliert, um gewisse Testszenarien zu simulieren, die manuell schwer zu finden sind

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA ist noch nicht vollständig funktionabel und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 2: ONLINE WORKSHOP-SERIE: RAINBOW TRADING DELUXE EA PROGRAMMIEREN LERNEN
Session Datum: Dienstag, 02. Februar 2021

Videoaufzeichnung:

Zusammenfassung: in dieser Session lernen wir

  1. den Unterschied zwischen iLow(…) und iLowest(…) bzw. iHigh(…) und iHighest(…)

  2. dass iLow/High einen Kurs ermittelt, während iLowest/iHighest einen Kerzenversatz darstellt

  3. somit das niedrigste Tief bzw. das höchste Hoch einer bestimmten Datenreihe zu ermitteln

  4. eine Enumerierungsliste zu erstellen, um ein individuelles Drop-Down-Menü in den Eingabevariablen zu generieren

  5. die Werte des Drop-Down-Menüs im Code zu verwerten, um zwischen verschiedenen SL-Varianten wechseln zu können

  6. wie man später dieses Drop-Down-Menü erweitern kann und die neue Auswahlmöglichkeit funktional macht

  7. eine sich wiederholende Berechnung in eine Funktion auszulagern

  8. die Vor- und Nachteile der Auslagerung von Berechnungen in Funktionen kennen

  9. die Funktion korrekt zu definieren und mit den benötigten Berechnungs-Parametern auszustatten und gegebenenfalls die Abrufparameter zu erweitern

  10. was genau der ATR (Average True Range) ist und wie er sich von der Average Range unterscheidet

  11. den Indikatorwert des ATR im EA abzurufen, um den SL-Abstand entsprechend zu ermitteln

  12. wie wir über die ATR-SL-Methode auch einen fixen SL-Abstand erreichen können, nämlich mit ATR-Multiplikator von 0

  13. wie man die ATR-Steigung statt dem ATR-Wert verwendet, um den SL-Abstand zu errechnen

  14. von zwei verschiedenen SL-Methoden den größeren der beiden SL-Abstände zu verwenden

  15. HAUSAUFGABE: on zwei verschiedenen SL-Methoden den kleineren der beiden SL-Abstände zu verwenden, als funktionelle Eingabeoption

  16. Mindestgröße für den Hammerkerzenkörper einzufügen, um “Dojis” (Kerzen, deren Eröffnungs- und Schlusskurs gleich sind) als Signalgeber ausschließen zu können

  17. optional die Farbe des Hammerkerzenkörper beachten zu lassen.

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 3: ONLINE WORKSHOP-SERIE: Rainbow Trading DELUXE EA PROGRAMMIEREN lernen
Session Datum: Dienstag, 09.02.2021

Videoaufzeichnung:

Zusammenfassung: in dieser dritten Session lernen wir

  1. in den SL-Methoden den kleineren der beiden Abstände auswählbar zu machen

  2. dass bei den meisten Brokern nach einer Teischließung die Restorder im Dealpool der offenen Orders im Orderkommentar den eindeutig erkennbaren Vermerk “from #” erhält

  3. dass bei sehr wenigen Brokern die Teilschließung anders gehandhabt wird, und zwar indem die Originalorder offen bleibt und die GuV der Teilschließungen im Dealpool der Kontohistorie mit einem eindeutig erkennbaren Vermerk “part.close p&l for #” versehen werden

  4. dass beide dieser Abfragen (beide mittels StringFind()-Funktion) vorhanden sein müssen, um bei jedem Broker wirklich nur eine Teilschließung zuzulassen, damit nicht bei jedem Tick eine erneute Teilschließung geschieht

  5. wie man die OrderClose()-Funktion vewendet, um Teile einer Order zu schließen

  6. sicherzustellen, dass immer der richtige Dealpool angesteuert wird, auch wenn man innerhalb des Durchschleifens eines Dealpool in den anderen und dann wieder zurück wechselt

  7. schon vorhandene Funktionen aus anderen EAs oder Code-Basen einzufügen und anzupassen

  8. einen klickbaren Button im Chart anzuzeigen, der farblich einstellbar ist

  9. diesen Button per Klick mit der Teilschließungsfunktion zu belegen, unter Nutzung von OnChartEvent()

  10. den Code so anzupassen, um den Button-Klick auch im Strategietester nutzen zu können

  11. den Button-Klick mit einer Message-Box zu verknüpfen, um den Button-Klick sicherheitshalber bestätigen zu müssen

  12. dass es für diese Teilschließungs-Anwendung sinnvoll ist, den Dealpool rückwärts zu durchschleifen; insbesondere wenn mehrere Deals offen sind, die teilgeschlossen werden sollen

  13. wie der EA zwischen Anwendung im Strategietester und im Livehandel unterscheiden kann.

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Teil 4 (Bonus-Session): ONLINE WORKSHOP-SERIE: Rainbow Trading DELUXE EA PROGRAMMIEREN lernen
Session Datum: Dienstag, 23.02.2021

Videoaufzeichnung:

Zusammenfassung: in dieser dritten Session lernen wir

  1. Widerstands- und Unterstützungszonen durch den EA erkennen zu lassen, mit Hilfe des im MT4 eingebauten Fractals-Indikator

  2. einen einstellbaren, abweichenden Timeframe für die Widerstands- und Unterstützungszonenermittlung zu verwenden

  3. wie wir per Schleife (for-Loop) einen Indikator auslesen, der nicht in jeder Kerze einen Wert ausgibt (so wie eben der Fractals-Indikator)

  4. Einstiegssignale so zu filtern, dass nur bei Kursen vor den ermittelten Widerständen/Unterstützungen umgesetzt werden

  5. bei einem trendbestätigenden Durchbruch der ermittelten Widerständen/Unterstützungen einen Pyramidierungsdeal zu eröffnen

  6. dass “Pyramidierung” und “Pyramidisierung” das gleiche ist

  7. die Pyramidierungslotsize per Faktor zu bestimmen

  8. für die korrekte Lotsizerundung eine separate Funktion zu erstellen

  9. was “Backspin” im Rahmen des Rainbow Tradings bedeutet

Code Download (.mq4-Datei):

HAFTUNGSAUSSCHLUSS UND RISIKOHINWEIS: dieser EA könnte noch nicht vollständig funktionabel sein und stellt keine Handelsempfehlung dar, sondern dient lediglich zur Veranschaulichung des MQL4-Programmierens und somit nur für Lernzwecke des EA-Programmierens. Nutzen Sie ihn ausschließlich auf Demo-Konten!​ Wir übernehmen keinerlei Haftung. Echtgeld-Trading mit EAs ist stark risikobehaftet, Sie können mehr als Ihren Einsatz verlieren.

Zur Sicherheit bitte ich Sie, Ihre Email-Adresse zu bestätigen, um den Download der Code-Datei zu erhalten:

Bleiben Sie am Ball

Programmieren Sie weiter nach Lust und Laune. Solange Sie sich auf einem Demokonto befinden, können Sie ausprobieren, was Sie möchten. Die eigene Trial-and-Error-Methode kann zeitweise frustrierend sein, ist aber oftmals die langfristig tiefgehendste und somit ertragreichste!