Author: Yuriy Tokman
Indicators Used
Commodity channel index
1 Views
0 Downloads
0 Favorites
Signal_v1
//+------------------------------------------------------------------+
//|                                                       Signal.mq4 |
//|                                                     Yuriy Tokman |
//|                                            yuriytokman@gmail.com |
//+------------------------------------------------------------------+

//Ôóíêöèÿ òîðãîâûõ ñèãíàëîâ îñíîâàíà íà ïîêàçàíèÿõ èíäèêàòîðà CCI
//Äîáîâëÿåì ôóíêöèþ â ñîâåòíèê #include <Signal.mqh>
//Óñëîâèå if(GetSignal()==1) äëÿ ïîêóïêè
//Óñëîâèå if(GetSignal()==-1) äëÿ ïðîäàæè
  
#property copyright "Yuriy Tokman"
#property link      "yuriytokman@gmail.com"
 
extern int periodCCI = 55;//Ïåðèîä óñðåäíåíèÿ äëÿ âû÷èñëåíèÿ èíäèêàòîðà.
extern int applied_price = 0;//Èñïîëüçóåìàÿ öåíà. Ìîæåò áûòü ëþáîé èç öåíîâûõ êîíñòàíò.
extern int shift = 0;//ñäâèã îòíîñèòåëüíî òåêóùåãî áàðà íà óêàçàííîå êîëè÷åñòâî ïåðèîäîâ íàçàä
extern int CCI_High = 100;
extern int CCI_Low = 100;

//+------------------------------------------------------------------+
//| My function                                                      |
//+------------------------------------------------------------------+
 int GetSignal()
   {
    double CCICurrent=iCCI(NULL,0,periodCCI,applied_price,shift);
    double CCIPrevious=iCCI(NULL,0,periodCCI,applied_price,shift+1);
    
    int vSignal = 0;
    if(CCICurrent<-CCI_Low && CCIPrevious>-CCI_Low)vSignal = 1;//up 
    else
    if(CCICurrent>CCI_High && CCIPrevious<CCI_High) vSignal =-1;//down

    
    return (vSignal);
   } 
//+------------------------------------------------------------------+

Comments