In de wereld van trading is het cruciaal om je verliezen te beperken en je winsten veilig te stellen. Daarom gebruik ik deze Expert Advisor (EA) als een waardevol hulpmiddel in mijn handelsstrategie.
Essentiële Instellingen
Deze EA vereist drie belangrijke invoerparameters:
- Winstdoel
- Verliesbeperking
- Magic Number
extern double inTargetProfitMoney = 10; // Winstdoel (€) extern double inCutLossMoney = 0.0 // Verliesbeperking (€) extern int inMagicNumber = 0 // Magic Number
Wanneer deze EA wordt uitgevoerd, wordt eerst de OnInit() functie aangeroepen. Hier controleren we de invoer en initialiseren we de variabelen.
int OnInit() { //--- if(inTargetProfitMoney <= 0) { Alert("Ongeldige invoer"); return(INIT_PARAMETERS_INCORRECT); } inCutLossMoney = MathAbs(inCutLossMoney) * -1; //--- return(INIT_SUCCEEDED); }
Bij elke prijsbeweging (tick) wordt de OnTick() functie aangeroepen.
void OnTick() { //--- double tFloating = 0.0; int tOrder = OrdersTotal(); for(int i=tOrder-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderMagicNumber() == inMagicNumber) { tFloating += OrderProfit()+OrderCommission() + OrderSwap(); } } } if(tFloating >= inTargetProfitMoney || (tFloating <= inCutLossMoney && inCutLossMoney < 0)) { fCloseAllOrders(); } }
In de OnTick functie berekenen we voortdurend de totale winst of verlies. Vervolgens sluiten we alle orders die aan de voorwaarden voldoen, zoals het behalen van het winstdoel of het overschrijden van de verlieslimiet.
void fCloseAllOrders() { double priceClose = 0.0; int tOrders = OrdersTotal(); for(int i=tOrders-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderMagicNumber() == inMagicNumber && (OrderType() == OP_BUY || OrderType() == OP_SELL)) { priceClose = (OrderType()==OP_BUY)?MarketInfo(OrderSymbol(), MODE_BID):MarketInfo(OrderSymbol(), MODE_ASK); if(!OrderClose(OrderTicket(), OrderLots(), priceClose, slippage, clrGold)) { Print("WAARSCHUWING: Sluiten mislukt"); } } } } }
Voor meer gedetailleerde informatie en het delen van MQL4-code en educatie, sluit je aan bij onze Telegram-groep: t.me/codeMQL
Reactie 0