Author of the idea: Vladimir
MQL5 code author: barabashkakvn
The EA uses iCCI (Commodity Channel Index, CCI) indicator value on the last four bars and Open/Close prices on the last three bars. A position opening signal is checked if less than 20 seconds remain before closing the current bar (this is a very rare solution) and if there are no positions opened by this EA.
Position opening conditions
//--- BUY Â Â if(cci[1]<5 && cci[2]<cci[3] && cci[1]<cci[2] && cci[0]>cci[1] && Â Â Â Â Â Â Open[2]>Close[2] && Open[1]>Close[1] && Open[0]<Close[0] && Open[1]<Close[0]) //--- SELL Â Â if(cci[1]>-5 && cci[2]>cci[3] && cci[1]>cci[2] && cci[0]<cci[1] && Â Â Â Â Â Â Open[2]<Close[2] && Open[1]<Close[1] && Open[0]>Close[0] && Open[1]>Close[0])
where:
- cci[] – array of CCI indicator values;
- Open[] and Close[] – open and close prices arrays, respectively.
Main trading settings
- Lots – constant position volume (if martingale and incremental volume increase are disabled) or this is an initial lot for martingale and incremental volume increase;
- Stop Loss (“0.0” → disabled);
- Take Profit (“0.0” → disabled);
- Trailing Stop (“0.0” → disabled);
- Trailing Step.
CCI parameters
- CCI: averaging period – averaging period;
- CCI: type of price – type of price to calculate the indicator.
Positions volume
It can be specified in one of the following ways:
- fixed lot (Lots);
- martingale (Use martingale);
- incremental volume increase (Use step by step).
Let’s consider the last two methods of setting positions volume in more detail:
Martingale
The method is applied only if a loss-making position (positions) is present in trading history. Main settings:
- Use martingale – martingale flag;
- Martingale coefficient – position volume increase ratio;
- Ordinal number of the losing trade – index of a losing trade the volume increase starts from;
- Maximum number of multiplications – maximum number of position volume increases in a row.
Volume incremental increase
The method is applied to a series of loss-making or profitable positions. Main settings:
- Use step by step – incremental lot increase flag;
- Step lots – position volume increase step;
- Maximum lots – maximum volume to be used with incremental lot increase;
- Use step after… – apply incremental volume increase after:
- … losing – a losing trade;
- … profitable – a profitable trade.
When using martingale, Stop Loss, Take Profit, Trailing Stop and Trailing Step parameters should be selected carefully apart from the martingale settings.
The default parameters, M15, initial deposit $10 000, tets on all symbols:
Symbol | Pass | Result | Profit | Expected Payoff | Profit Factor | Recovery Factor | Sharpe Ratio | Custom | Equity DD % | Trades |
---|---|---|---|---|---|---|---|---|---|---|
EURGBP | 12 | 510.69 | 678.56 | 3.29 | 1.27 | 0.55 | 0.05 | 0 | 12.14 | 206 |
USDCHF | 1 | 180.17 | 250.96 | 0.81 | 1.08 | 0.32 | 0.02 | 0 | 7.25 | 310 |
EURCHF | 14 | 178.94 | 227.73 | 0.80 | 1.08 | 0.22 | 0.02 | 0 | 9.93 | 284 |
USDCAD | 3 | 87.20 | 113.09 | 0.28 | 1.03 | 0.15 | 0.01 | 0 | 7.26 | 409 |
AUDJPY | 9 | 27.45 | 1.28 | 0.00 | 1.00 | 0.00 | 0.00 | 0 | 7.44 | 417 |
CADCHF | 18 | -42.18 | -101.84 | -0.37 | 0.97 | -0.09 | 0.00 | 0 | 10.53 | 272 |
AUDUSD | 5 | -82.46 | -160.03 | -0.53 | 0.95 | -0.14 | -0.01 | 0 | 10.91 | 301 |
EURCAD | 6 | -82.68 | -233.21 | -0.42 | 0.95 | -0.19 | -0.01 | 0 | 11.98 | 562 |
USDJPY | 4 | -90.72 | -211.15 | -0.52 | 0.95 | -0.21 | -0.01 | 0 | 9.63 | 404 |
EURUSD | 0 | -181.05 | -451.65 | -1.07 | 0.90 | -0.24 | -0.02 | 0 | 17.60 | 422 |
AUDNZD | 7 | -227.43 | -305.03 | -0.94 | 0.89 | -0.39 | -0.02 | 0 | 7.54 | 324 |
GBPUSD | 2 | -245.81 | -838.84 | -1.76 | 0.86 | -0.62 | -0.03 | 0 | 13.20 | 477 |
EURNZD | 15 | -390.22 | -1381.32 | -2.01 | 0.80 | -0.68 | -0.05 | 0 | 20.18 | 686 |
EURJPY | 16 | -390.24 | -1210.77 | -2.19 | 0.80 | -0.58 | -0.04 | 0 | 20.45 | 553 |
EURAUD | 13 | -477.19 | -1483.33 | -2.41 | 0.77 | -0.64 | -0.06 | 0 | 22.12 | 616 |
GBPJPY | 19 | -558.54 | -2645.95 | -3.87 | 0.69 | -0.81 | -0.08 | 0 | 32.18 | 683 |
GBPCHF | 17 | -626.44 | -3325.40 | -6.56 | 0.63 | -0.83 | -0.09 | 0 | 39.28 | 507 |
AUDCHF | 10 | -738.94 | -1472.97 | -5.11 | 0.67 | -0.67 | -0.09 | 0 | 21.09 | 288 |
CHFJPY | 11 | -920.15 | -5540.53 | -12.95 | 0.42 | -0.92 | -0.21 | 0 | 58.57 | 428 |
AUDCAD | 8 | -1541.16 | -3692.85 | -12.69 | 0.35 | -0.94 | -0.24 | 0 | 39.19 | 291 |