Ga naar inhoud

Bouw een EA met EA Builder Pro

Laatste update: 27 april 2023

Als u hier bent omdat u begint met het bouwen van een handelsrobot (EA), dan bent u op de juiste plek! Deze tutorial richt zich op het bouwen van een EA met EA Builder Pro. U kunt onze voorbeeld-EA bouwen door ons stap voor stap te volgen, of u kunt uw eigen keuzes maken met behulp van de extra informatie die deze tutorial biedt.

Deze tutorial geeft een voorbeeld van het bouwen van een geavanceerde EA en de tutorial kan ook behoorlijk complex aanvoelen.
Als u wilt beginnen met een EA van eenvoudige complexiteit, probeer dan ons YouTube-kanaal: Leer een handelsbot te bouwen.
Als u wilt beginnen met een EA van gemiddelde complexiteit (alleen MT5), willen we vermelden dat een van onze langdurige gebruikers, Raoul, een blog heeft geschreven over zijn EA en hoe hij deze heeft gebouwd met onze tool. Bekijk gerust Raoul’s blog.

Laten we beginnen! In deze geavanceerde tutorial gaan we de beroemde ‘Cowabunga’ EA maken. Deze EA gebruikt de trend op het H4 (4-uurs) tijdsframe als filter en kijkt vervolgens naar het M15 tijdsframe voor kansen om long of short te gaan.


Laten we de entries/exits opschrijven, die we ‘Signals’ noemen als algemene term voor een verzameling voorwaarden voor entries en exits.


  • Open buy Signal:
    Het filter om long te gaan controleert of de trend omhoog is. De trend is omhoog wanneer op het H4 tijdsframe:

    1. de 5-bar EMA boven de 10-bar EMA staat
    2. RSI groter is dan 50
    3. Stochastic omhoog beweegt maar niet overbought is

    De entry-kansen om long te gaan op het M15 tijdsframe zijn:

    1. MACD kruist omhoog door de 0-waarde of
    2. MACD is negatief maar begon net omhoog te gaan
  • Open sell Signal:
    Het filter om short te gaan controleert of de trend omlaag is. De trend is omlaag wanneer op het H4 tijdsframe:

    1. de 5-bar EMA onder de 10-bar EMA staat
    2. RSI kleiner is dan 50
    3. Stochastic omlaag beweegt maar niet oversold is

    De entry-voorwaarde om short te gaan op het M15 tijdsframe zijn:

    1. MACD kruist omlaag door de 0-waarde of
    2. MACD is positief maar begon net omlaag te gaan
  • Close strategie (voor zowel buy als sell):


    We gaan 50- en 00 prijsniveaus instellen als ons doel voor de exit-signals. Dus als de prijs bij het openen van een buy order 1,09887 is, dan richten we ons op 1,10000, wat 11,3 pip omhoog is. Als het doel echter minder dan 5 pip verwijderd is, veranderen we van tactiek en stellen we de exit in op de afstand van de openingsprijs van de order tot de Parabolic SAR. Dus als Parabolic SAR 10 pip onder de openingsprijs van de order staat, dan stellen we de exit in op 10 pip boven de openingsprijs van de order.


    We stellen ook de stop loss in op de waarde van Parabolic SAR wanneer SAR onder de openingsprijs van de order staat.

Dat is nogal wat! De EA die u in gedachten had is misschien minder ingewikkeld. Eigenlijk zijn 9 van de 10 handelsstrategieen minder ingewikkeld dan de Cowabunga-strategie. We wilden echter met deze tutorial laten zien dat EA Builder Pro in staat is om geavanceerde EAs te maken en tegelijkertijd ervoor zorgen dat u genoeg leert om zelf geavanceerde EAs te bouwen. Als u net bent begonnen met het bouwen van EAs en tijdens deze tutorial vragen heeft of extra hulp nodig heeft, abonneer u dan en stuur ons uw vragen. Laten we nu doorgaan!

Om te beginnen met het maken van onze eerste Expert Advisor (EA), wat een handelsrobot is, klikt u op de blauwe “Add Expert Advisor” knop, die u kunt vinden wanneer u onze Webtool gebruikt.

klik op expert advisor toevoegen
Klik op de knop om een nieuwe EA aan uw account toe te voegen.

Vervolgens wordt u gevraagd een template te kiezen voor MT4 of MT5. Als u niet weet welke u moet kiezen, lees dan mijn blog: MT4 of MT5, welke is het beste? Bepaal vervolgens of u wilt beginnen met een werkend voorbeeld, bijvoorbeeld het ‘Moving average template’, of dat u wilt beginnen met een lege EA. Aangezien we een nieuwe EA helemaal opnieuw gaan bouwen en we u door alle stappen begeleiden, kiezen we ‘Empty template’.

Voer vervolgens een naam in voor uw EA. We noemen onze EA ‘Cowabunga’ en klikken dan op “Create EA”.

naam en maak uw EA aan
Geef een naam en klik vervolgens op Add Expert Advisor.

De tool opent nu automatisch uw EA, verdeeld in 4 hoofdonderdelen: Indicators, Signals, Strategy en Money management. In het volgende deel van deze tutorial beginnen we met het eerste onderdeel: Indicators.

Nu gaan we indicators toevoegen aan deze EA.

Om een indicator toe te voegen, klikt u op ‘Add’ in uw indicatorenlijst.

klik op indicator toevoegen
Klik op de 'Add' knop om een indicator aan uw EA toe te voegen.

U krijgt de keuze uit alle standaard MetaTrader indicators, gesorteerd op alfabet. Als u uw eigen Custom Indicators heeft geupload, zijn deze ook beschikbaar bovenaan de lijst. Het aantal en de verscheidenheid aan indicators dat u kunt toevoegen is onbeperkt.

Voor onze EA gaan we de “Moving Average” indicator toevoegen. We voegen deze indicator zelfs 2 keer toe. Weet u nog ons doel voor uw EA, vermeld aan het begin van deze Tutorial? We gebruiken 2 verschillende varianten van EMA.
Zoek nu de “Moving Average” indicator in de lijst:

MA indicator toevoegen
Voeg de standaard 'Moving Average' indicator uit de lijst toe aan deze EA.

Na het selecteren van de indicator ziet u alle parameters van de indicator. U zou bekend moeten zijn met deze parameters, want dit zijn dezelfde parameters als weergegeven in MetaTrader bij het toevoegen van een indicator aan de grafiek. De waarden die u hier invoert zijn de waarden die uw EA voor deze indicator zal gebruiken bij elke handelsbeslissing die naar deze indicator verwijst.

voer indicatorparameters in
Voer de parameters van de indicator in.

Dit is hoe we de indicators hebben ingesteld (niet genoemde parameters behouden hun standaardwaarde):

  • Moving average: Naam ‘5 EMA’, Timeframe ‘PERIOD_H4’, Period ‘5’, Method ‘EMA’, Applied price ‘Close’
  • Moving average: Naam ‘10 EMA’, Timeframe ‘PERIOD_H4’, Period ‘10’, Method ‘EMA’, Applied price ‘Close’
  • Stochastic Oscillator: Naam ‘Stochastic’, Timeframe ‘PERIOD_H4’, K period ‘10’, D period ‘3’, Slowing ‘3’, Method: SMA, Price field: Low/ High, Mode: Main
  • Relative Strength Index: Naam ‘RSI’, Timeframe ‘PERIOD_H4’, Period: 9, Apply to: Close
  • MACD: Naam ‘MACD’, Fast EMA: 12, Slow EMA: 26, SMA: 9, Applied price: Close, Mode: Main
  • Parabolic SAR: Naam ‘PSAR’, Step: 0.02, Maximum: 0.2

Nadat u alle indicators heeft ingesteld, zou u een lijst van indicators moeten hebben die er zo uitziet:

lijst van indicators
Alle 6 indicators die door deze EA worden gebruikt.

We hebben nu alle indicators toegevoegd en kunnen doorgaan naar het volgende onderdeel.

Als u Custom Indicators wilt gebruiken, bekijk dan onze tutorial-video of lees hoe u dit kunt bereiken: Custom Indicators.

Met de indicators toegevoegd aan uw EA zal uw EA nog geen orders openen of sluiten. U heeft alleen de indicators (en hun parameters) bekend gemaakt aan uw EA. De volgende taak is dus het maken van de entry/exit signals, die bestaan uit een of meerdere voorwaarde(n), die bepalen wanneer de EA orders opent en sluit. Kies eerst welk signal u als eerste gaat maken. We raden sterk aan om te beginnen met het maken van het ‘Open Buy’ signal en de andere signals te maken wanneer u heeft geverifieerd dat een buy order op het juiste moment wordt geopend. Pas dan zou u de andere signal(s) moeten maken. We raden dit aan om de complexiteit van het maken en aanpassen van signals zo laag mogelijk te houden terwijl u nog leert. We doen dit nu, dus we beginnen met het maken van het Open Buy entry signal.

De 4 typen signals zijn:

  • Open Buy: wanneer dit signal activeert, opent uw EA een buy order.
  • Open Sell: wanneer dit signal activeert, opent uw EA een sell order.
  • Close Buy: wanneer dit signal activeert, sluit uw EA uw buy order(s), tenzij het Open Buy signal op exact hetzelfde moment actief is.
  • Close Sell: wanneer dit signal activeert, sluit uw EA uw sell order(s), tenzij het Open Sell signal op exact hetzelfde moment actief is.

Om het Open Buy signal te maken, klikt u op ‘Open Buy’ in het hoofdscherm van uw EA.

open buy
Klik op het 'Open Buy' Signal van uw EA.

Als u het ‘Empty template’ heeft gekozen in Deel 1 (EA Builder Pro - Aan de slag) van deze tutorial, ziet u nu een bijna leeg scherm. Dit komt doordat het signal nog geen voorwaarden heeft. We moeten zelf de voorwaarde(n) toevoegen die het Signal vormen.

U ziet waarschijnlijk dit:

een leeg open buy signal
De eerste standaard voorwaarde-placeholder.

Het signal toont een placeholder om uw eerste voorwaarde in te voeren. Om meer voorwaarden toe te voegen, klikt u op het ‘menu-icoon’, dat eruitziet als 3 donkere punten in een verticale positie. Nadat u erop heeft geklikt, kiezen we ‘Add Condition’ om een voorwaarde toe te voegen. Herhaal deze stap nog 3 keer, zodat u in totaal 4 voorwaarden aan het signal heeft toegevoegd, die er allemaal hetzelfde uitzien.

Weet u nog ons Open Buy signal van de Tutorial introductiepagina? Laten we het Open buy signal herformuleren:

  1. de 5-bar EMA staat boven de 10-bar EMA
  2. RSI staat boven 50
  3. Stochastic beweegt omhoog, maar is niet overbought
  4. MACD kruist omhoog door 0 of
  5. MACD is negatief maar begon net omhoog te gaan

Laten we nu de voorwaarden die we zojuist hebben gemaakt aanpassen zodat de voorwaarden overeenkomen met de beschrijving van het eerste deel van het Open Buy signal: 1. De 5-bar EMA staat boven de 10-bar EMA
Om te controleren of de EMA 5 indicatorwaarde boven (>) de EMA 10 indicatorwaarde staat, vergelijken we de indicator met een andere indicator door de ‘above’ (>) operator te gebruiken.

De 5-bar EMA staat boven de 10-bar EMA
5-bar EMA staat boven de 10-bar EMA.

2. RSI staat boven 50
Om te controleren of de RSI indicatorwaarde boven (>) 50 staat, vergelijken we de indicator met de waarde door de ‘above’ (>) operator te gebruiken. Om ‘50’ te selecteren moet u eerst het rechterdeel van de voorwaarde wijzigen naar ‘Constant’ in plaats van ‘Indicator’ meer info.

RSI staat boven 50
RSI staat boven 50.

3. Stochastic beweegt omhoog maar is niet overbought
Hier moeten we 2 voorwaarden gebruiken, een om te controleren of de indicator omhoog beweegt en een om te controleren of de indicator niet in het overbought-gebied zit.

  • Om te controleren of de Stochastic indicator omhoog beweegt, moeten we de vorige waarde van de indicator vergelijken met de huidige waarde van de indicator. Wanneer de waarde stijgt, beweegt deze omhoog. Dus om te controleren of de lijn omhoog beweegt, moeten we controleren of de huidige waarde (shift 0) boven (>) de vorige waarde (shift 1) staat.
  • Om te controleren of de Stochastic indicator niet in het overbought-gebied zit, moeten we controleren of de waarde van de indicator onder 80 staat. We doen dit door de ‘Below’ (<) operator te gebruiken.
Stochastic beweegt omhoog maar is niet overbought
Stochastic beweegt omhoog maar is niet overbought.

4. MACD kruist omhoog door 0 of MACD is negatief maar begon net omhoog te gaan
Nu gaan we nog een (de 5e) voorwaarde aan ons signal toevoegen, maar we kiezen nu ‘Group’ en selecteren ‘Any’. Gebruik het menu van de nieuwe ‘Any’ groep en voeg nog een voorwaarde en nog een (tweede) groep toe. Selecteer bij de tweede groep ‘All’. Gebruik het menu van de tweede groep en voeg 3 voorwaarden toe. Geweldig! U krijgt er nu de slag van!
Dus bij de eerste groep hebben we 2 voorwaarden, maar er hoeft er maar een waar te zijn, daarom gebruikten we ‘Any’ voor de eerste groep. De tweede groep bevat 3 voorwaarden. Voor de tweede groep gebruiken we echter de ‘All’ operator om de EA te vertellen dat aan alle voorwaarden moet worden voldaan.

MACD kruist 0 of begint omhoog te gaan
MACD kruist 0 of begint omhoog te gaan

We hebben nu het eerste signal gemaakt. Nu is het tijd om het signal te testen, dus we gaan:

  1. De EA exporteren.
  2. De EA in de ‘Experts’ map plaatsen (wat automatisch gebeurt in MT5 bij dubbelklikken op het gedownloade bestand, voor MT4 doet u dit handmatig).
  3. De EA draaien in MetaTrader’s Tester in ‘Visual mode’.
  4. Verifieren dat een Buy order op het juiste moment is geopend.

Nu we het eerste Signal werkend hebben, gaan we ook de andere signals maken:

Open Sell

open sell
Het Open Sell signal

Close Buy Weet u nog dat ik op de startpagina van deze tutorial zei dat deze tutorial geavanceerd zou worden? Wel, hier gaan we. Als u zich snel overweldigd voelt, maak u geen zorgen: probeer het eerst, rust als dat u helpt en kom later terug. Dit is een leerervaring die op de lange termijn resultaten zal opleveren.
Laten we de sluitstrategie nog eens doornemen: We gaan 50- en 00 prijsniveaus als doel instellen, maar alleen als het volgende niveau meer dan 5 pip verwijderd is. Anders stellen we het doel in op de afstand tot de waarde van Parabolic SAR. We gaan ook een stop loss instellen, waarvoor we later in deze tutorial een stop loss module zullen gebruiken.
Dus, hoe gaan we dat allemaal doen? We weten dat ons close signal uit 2 voorwaarden zal bestaan:

  1. De afstand tot het volgende prijsniveau moet meer dan 5 pip zijn.
  2. De prijs moet hoger zijn dan de openingsprijs + de afstand tot het volgende prijsniveau.

1. De afstand tot het volgende prijsniveau moet meer dan 5 pip zijn

Om te weten hoe ver het volgende prijsniveau is, moeten we de rest berekenen van de openingsprijs van de order, gedeeld door de afstand van het prijsniveau, wat 50 pip is. Bij het gebruik van rekenkundige operatoren in onze webtool selecteert u de ’%’ (modulo) operator om de rest van een deling te berekenen. Dus als we berekenen: 1,09887 (de openingsprijs) % 0,00500, is de rest 0,00387 (38,7 pip). Dus als we een voorwaarde kunnen maken die controleert of de rest minder is dan 45 pip, weten we dat de afstand tot het volgende prijsniveau meer dan 5 pip is.


Laten we nu de eerste voorwaarde maken:

Close Buy

close buy voorwaarde 1
De eerste voorwaarde van het Close Buy signal

2. De prijs moet hoger zijn dan de openingsprijs + de afstand tot het volgende prijsniveau.

Omdat de eerste voorwaarde is ingesteld, wordt de tweede voorwaarde alleen geevalueerd als de afstand tot het volgende prijsniveau meer dan 5 pip is.


De tweede voorwaarde controleert of de huidige prijs het volgende prijsniveau heeft gepasseerd. Hiervoor moeten we controleren of de prijs boven de openingsprijs van de order + de afstand tot het volgende prijsniveau staat. De afstand tot het volgende prijsniveau kan worden berekend door de rest af te trekken van 50 pip. Dus de berekening is 50 pip - (openingsprijs % 50 pip) = aantal pip tot het volgende prijsniveau. Dus we sluiten onze buy order als de Bid-prijs boven de openingsprijs van de order + (50 pip - (openingsprijs % 50 pip)) staat.


In ons voorbeeld vertaalt dit zich naar 1,09887 + (0,00500 - (1,09887 % 0,00500)) = 1,01000. Dus als de prijs 11,3 pip stijgt, wordt de order gesloten. Hier is de voorwaarde om te controleren of Bid boven (>) openingsprijs + (50 pip - (openingsprijs % 50 pip)) staat, gecombineerd met onze eerste sluitvoorwaarde:

close buy voorwaarde 2
De eerste en tweede voorwaarde van het Close Buy signal

Peptalk WOW! U heeft het close buy signal gemaakt! Wacht… bent u er nog? Maak u geen zorgen als u nog berekeningen op papier doet om dit allemaal te controleren en te begrijpen. Neem ook gerust een pauze bij het bouwen van EAs, het vergt oefening en het voelt vaak als een puzzel, maar u wordt er beter in en voordat u het beseft bouwt u elke EA die u zich kunt voorstellen!

Close Sell Hier is het close signal voor sell orders. Het is in feite hetzelfde signal als het signal voor het sluiten van buy orders, maar dan omgekeerd.

close sell
Het Close Sell signal

Als u meer wilt weten over Signals en wat ze kunnen, bekijk dan de uitgebreide Signals documentatie. U heeft nu de Open- en Close signals van de EA gemaakt, wat betekent dat uw EA al automatisch zal handelen. Er is echter meer. Er zijn allerlei manieren om het gedrag van uw EA te veranderen. Dit zijn de zogenaamde ‘Modules’ die we ook voor onze EA zullen gebruiken.

Met de signals toegevoegd aan uw EA zal uw EA nu orders openen en sluiten. Er resteren nog twee taken: het instellen van de alternatieve take profit op PSAR, voor het geval het doel minder dan 5 pip verwijderd is, en ten tweede het instellen van de stop loss gelijk aan de waarde van PSAR. Hiervoor moeten we de Take profit - Conditional (Pro) en de Stop loss - Conditional (Pro) module twee keer toevoegen, een keer voor buy en een keer voor sell. We eindigen dus met 4 sluitmodules: 2 keer voor take profit en 2 keer voor stop loss.

Om de Take profit - Conditional (Pro) module toe te voegen, klikt u op ‘Add’ in het Strategy-onderdeel van het hoofdscherm van de EA.

module toevoegen
Klik op de 'Add' knop van het Strategy-onderdeel van uw EA.

U ziet nu een lijst van alle modules die u aan uw EA kunt toevoegen. We gaan de Take profit - Conditional (Pro) module toevoegen, een van de meest geavanceerde modules. Na het klikken op Add kijkt u naar de lijst van modules:

take profit module toevoegen
Klik op de Take profit - Conditional (Pro) module.

U moet nu de parameters van de module invoeren. We vullen eerst een naam en andere basisinstellingen in:

  1. Naam: Buy TP
  2. Ingeschakeld voor: Is Enabled For Buy Order (om deze module alleen in te schakelen voor buy orders)

Vervolgens definiëren we de voorwaarde, wat de voorwaarde is waaraan moet worden voldaan voordat de TP wordt ingesteld. Aangezien we de take profit alleen willen instellen wanneer het verschil tussen de openingsprijs van de order en het doel minder dan 5 pip is, passen we dezelfde logica toe als op de vorige pagina van deze tutorial. Ook stellen we de TP alleen in op de waarde van PSAR als PSAR onder de huidige prijs staat, zodat de richting van de prijs omhoog is. Kort gezegd, als de prijs omhoog beweegt, controleren we of de rest van de openingsprijs modulo 50 pip groter is dan 45 pip:

take profit voorwaarde
De voorwaarde van Take profit - Conditional (Pro) voor buy orders

Vervolgens stellen we de waarde van take profit in op de waarde van de openingsprijs van de order + de afstand tot PSAR:

take profit waarde
De waarde van Take profit - Conditional (Pro) voor buy orders

We voeren geen voorwaarde in voor wanneer de take profit moet worden verwijderd, dus we laten de laatste voorwaarde leeg. We stellen echter wel de laatste waarden in:

  1. Trail distance (pips): 0
  2. Trail step size: 0
  3. Close percentage: 100

We voegen ook dezelfde Take profit - Conditional (Pro) toe voor sell orders. Zo hebben we het ingesteld:

take profit sell
De Take profit - Conditional (Pro) module voor sell orders

Nu voegen we de stop loss modules toe, die eenvoudiger te configureren zijn omdat ze een simpele voorwaarde hebben: we stellen de waarde van stop loss simpelweg altijd in op de prijs van de order minus PSAR, als PSAR boven de huidige prijs staat. Dus de voorwaarde (voor buy) is als PSAR boven de huidige prijs staat. De startwaarde is de waarde van PSAR.

stop loss buy
De Stop loss - Conditional (Pro) module voor buy orders

En voor sell is de voorwaarde het tegenovergestelde, maar al het andere is hetzelfde:

stop loss sell
De Stop loss - Conditional (Pro) module voor sell orders

Als u meer wilt weten over Modules en wat ze kunnen, bekijk dan de uitgebreide Modules documentatie. U zult verrast zijn over de flexibiliteit die u kunt creeren met modules. Bekijk als voorbeeld deze blog: Hoe stel je stop loss in op basis van de ATR indicator?

U heeft nu uw eerste volledig werkende EA voltooid!

U kunt nu uw EA exporteren en gebruiken in MetaTrader. Als u gedetailleerde instructies nodig heeft, bekijk dan onze tutorial over hoe u uw eerste EA draait.

download uw EA
Klik op de 'Export to MetaTrader' knop.

We adviseren de volgende stappen:

  1. Test uw EA in MetaTrader door een backtest te draaien. Zorg ervoor dat u ‘Visual mode’ inschakelt, zodat u visueel kunt bevestigen dat de orders worden geopend en gesloten wanneer verwacht. Als u twijfelt of u fouten heeft gemaakt bij het volgen van deze tutorial, kunt u uw EA vergelijken met de ‘Tutorial - Cowabunga’ template EA, die u kunt kiezen bij het toevoegen van een nieuwe EA aan uw account.
  2. Als u verdere hulp nodig heeft bij het configureren van uw EA, abonneer u dan en neem contact met ons op met uw vra(a)g(en). We zullen antwoorden en voorbeelden geven totdat u uw doel heeft bereikt.
  3. Stem uw EA af door de Input-waarden van de EA te verbeteren. Als u de gratis versie van EA Builder Pro gebruikt, kunt u de instellingen wijzigen in EA Builder Pro. Als u abonnee bent, kunt u de inputs (automatisch) optimaliseren in MetaTrader.
  4. Wanneer u denkt dat u een goed werkende EA heeft en u deze echt wilt gaan gebruiken, draai de EA dan eerst op een Demo Account totdat u zeker weet dat de EA werkt zoals verwacht. We raden sterk aan de EA op een VPS (meer info) te draaien.
  5. Draai uw EA lang genoeg op een Demo account. Houd er rekening mee dat het draaien van de EA gedurende ongeveer een week over het algemeen niet als lang genoeg wordt beschouwd. Wij verifieren persoonlijk ten minste 200 orders handmatig en draaien de EA minimaal 3 maanden op een Demo account voordat we overstappen naar een Live account. Houd er rekening mee dat wij niet bevoegd zijn om financieel advies te geven. De beslissing om een EA op een Live account te zetten (en op basis van welke informatie) is uw verantwoordelijkheid.

We danken u dat u ons door deze tutorial heeft gevolgd en we hopen u te blijven zien! Meer dan 50.000 traders waren hier voor u. Meer dan 2 miljoen tests werden uitgevoerd met onze online backtester!