CCI Based indictor with a unique trailing take profit


 Read more about the Indicator and the Robot EA below:


First thing I want the readers to understand is that this is not some sort of miracle indicator. Like many other successful indicators, it works on probability and historical behaviour of the currency pair. In my opinion, it is impossible to find an indicator that will give winning trades 100% of the time. If someone is saying they have an indicator like this, I am pretty sure they are misleading you. Also, indicators cannot be associated with success factor. They are just indicators. What can be associated with the success factor is the overall trading strategy – when do you enter and when do you exit.

My trading strategy using this indicator has shown around 60% success rate which means that about 6 out of 10 trades end up in profit and 4 in loss. Of course, you can always play with the parameters and see if you can get better results. I have only tried this on hourly chart so far.

The good part however is that the average winning trades are usually bigger than the average losing trades. This is where the strategy makes the killing. You have more than half the winning trades and the ones that end up winning give you more profit per trade than the losing ones. This is the main reason the trading stratgy using this indicator has been so successful.


Now, lets see what this indicator has done on my live and test accounts.

Live Account results: I am not using this on the live account yet. However, I plan to do this soon given the success, it has shown on the test accounts using the strategy tester.

Test Account results: So far, I have done the following testing on test accounts using strategy tester (click on the image to read the complete statement):


I have used this strategy on the following set of currency pairs successfully so far (all on hourly charts only):


All other currency pairs, either gave bad results or I did not try them yet. You are most welcome to try these (of course on the test account first!).


Now comes the main part – the indicator itself.

This indicator is based on CCI – Commodity Channel Index.

The charts need to be setup as follows:

  • Chart period – hourly (60 minutes)
  • Currencies – this works on many currencies (See test results section above for complete list of currencies I have tested this on successfully.)
  • CCI Period – 20
  • CCI Shift – 0
  • Apply to Price – Typical Price (HLC/3)
  • Max orders allowed per pair at any given time – 1


See the screenshot above. You have to wait for the CCI to go very high or very low. Then wait for it to come down from the peak. If the last CCI point (shown as CCI – 1) is still above a certain level called as upper line (I use 200 as upper line) go long. Vice-versa, if the CCI is very low and comes up from the peak but CCI – 1 is still below the lower line (I use -200 as lower line) – go short.

If you look at it, the indicator is pretty simple and basic. The success of the trading strategy is really not in this indicator. It is just an entry criteria. The success of the strategy is really in how the robot harvests the directional momentum. The key lies in the exit criteria. When do you really exit the trade is what makes this trading strategy great.

Exit Criteria –

Trailing take profit (this is my invention!)

The exist criteria is based on the CCI Stop value which is calculated at the end of each stick. Think of it as a traditional trailing stop but except for actual currency value, we are going to use a specific CCI value (called as CCI Stop here) as a trailing take profit amount. Note that the terminology can be little confusing. I am calling this as a CCI Stop value but in reality, I am using it as a take profit level. I know it is confusing but if you read the explanation below, you will see, it is really not that difficult to understand. (Evenif you don’t understand, I have also written a MT4 robot that you can use to try out this on your own.)

In case of Buy order: CCI Stop = Least value of a) previous CCI Stop or b) CCI of the previous stick + CCI Step (I use CCI Step = 50). If CCI value on the current sctick is grater than CCI Stop, close the trade.

In case of Sell order: CCI Stop = Biggest value of a) previous CCI Stop or b) CCI of the previous stick – CCI Step. If CCI value on the current stick is less than CCI Stop, close the trade.

Other exit criteria: Apart from the CCI Stop technique used above, the trades are exited also when the CCI on the current stick crosses zero line. For buy order, it is closed when the CCI value on the current line drops below 0 and for sell order, it is closed when CCI value crosses above zero. This is safeguard against the strong pull-backs in the currency pair which happens around 20-30% of the times.

Trading Robot Program (EX4 file for MT4 platform)

I have written a robot program in MQL4 that hunts for the indicator explained above. Like I have mentioned above, the most critical part is to exit at the right time. Catching the exit point manually is almost next to impossible. Hence this robot program comes in handy as it keeps entering and exiting trades on your behalf.

Picture below will explain the input values that I use (you are welcome to play with these but don’t forget the defaults) while running my robot (Expert Advisor) program:


Thank you for reading!


1712 Total Views 1 Views Today

Leave a Reply

Risk warning: Before deciding to participate in the Forex market, you should carefully consider your investment objectives, level of experience and risk appetite. Most importantly, do not invest money you cannot afford to lose. There is considerable exposure to risk in any off-exchange foreign exchange transaction, including, but not limited to, leverage, creditworthiness, limited regulatory protection and market volatility that may substantially affect the price, or liquidity of a currency or currency pair. More over, the leveraged nature of forex trading means that any market movement will have an equally proportional effect on your deposited funds. This may work against you as well as for you. The possibility exists that you could sustain a total loss of initial margin funds and be required to deposit additional funds to maintain your position. If you fail to meet any margin requirement, your position may be liquidated and you will be responsible for any resulting losses.