Rejoignez notre page de fans
- Vues:
- 12410
- Note:
- Publié:
- 2017.11.03 11:43
- Mise à jour:
- 2018.02.28 10:46
-
Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance
If a trade is closed by Stop loss, the volume is doubled; if it's closed by Take profit the minimum volume is used. OnTradeTransaction is used to determine whether a trade was performed after the activation of Stop loss or Take profit.
The excellent enumeration ENUM_DEAL_REASON was added in build 1625:
ENUM_DEAL_REASON | Reason description |
---|---|
... | ... |
DEAL_REASON_SL | The operation was executed as a result of Stop Loss activation |
DEAL_REASON_TP | The operation was executed as a result of Take Profit activation |
... | ... |
It can be checked in OnTradeTransaction.
In other words, it is a very simple and reliable way to determine that a trade resulted from Take Profit or Stop Loss.
At the moment (build 1626), this Expert Advisor can only be checked in a live test - by launching it on a chart or in a debug mode on real data (F5 in the MetaEditor editor). I used the following bypass maneuver:
In OnTradeTransaction, we determined whether Take Profit or Stop Loss triggered:
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(); }
Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/18755
![AFStar](https://c.mql5.com/i/code/indicator.png)
A semaphore signal indicator.
![ZigZagOnParabolic_channel](https://c.mql5.com/i/code/indicator.png)
A channel based on peaks and troughs of ZigZagOnParabolic.
![ColorFisher_m11](https://c.mql5.com/i/code/indicator.png)
Oscillator using inverse Fisher Transform.
![iCCI iMA](https://c.mql5.com/i/code/expert.png)
The iMA (Moving Average) indicator based on iCCI (Commodity Channel Index). It is an analogue of Previous Indicator's Data in the terminal.