Home Systeemhandel Bericht

Stop Loss en Take Profit: Een Gids voor MetaTrader 5

Bijlage
18755.zip (2.99 KB, Downloaden 2 keer)

Als een trade wordt afgesloten door een Stop Loss, wordt het volume verdubbeld; als het wordt afgesloten door een Take Profit, wordt het minimale volume gebruikt. De functie OnTradeTransaction wordt gebruikt om te bepalen of een trade is uitgevoerd na de activatie van Stop Loss of Take Profit.

In build 1625 is de uitstekende enumeratie ENUM_DEAL_REASON toegevoegd:

ENUM_DEAL_REASON Omschrijving van de reden
... ...
DEAL_REASON_SL De operatie is uitgevoerd als gevolg van de activatie van Stop Loss
DEAL_REASON_TP De operatie is uitgevoerd als gevolg van de activatie van Take Profit
... ...

Dit kan worden gecontroleerd in OnTradeTransaction.

Met andere woorden, het is een zeer eenvoudige en betrouwbare manier om te bepalen of een trade het resultaat was van Take Profit of Stop Loss.

Op dit moment (build 1626) kan deze Expert Advisor alleen in een live test worden gecontroleerd - door het te starten op een grafiek of in de debugmodus met echte data (F5 in de MetaEditor). Ik heb de volgende omweg gebruikt:

In OnTradeTransaction hebben we bepaald of Take Profit of Stop Loss is geactiveerd:

      if(deal_symbol==m_symbol.Name() && deal_magic==m_magic)
         if(deal_entry==DEAL_ENTRY_OUT)
           {
            if(deal_reason==DEAL_REASON_SL)
               ExtLot*=2.0;
            else if(deal_reason==DEAL_REASON_TP)
               ExtLot=m_symbol.LotsMin();
           }

Gerelateerde berichten

Reactie (0)