3perekosa Indicator For MT4
The 3perekosa Indicator For MT4 is an indicator which has a slightly unorthodox way of representing price data - what this indicator does is that it paints red circles in line with the direction of the last candlestick therefore each circle overlaps the previous and the next circle thus resulting in an oscillated plot which this indicator is (an oscillator). Just like most oscillator indicators the trader may resort to using this particular indicator for detecting true oversold and overbought regions which this indicator does very well however thorough back testing is in order to give the trader more confidence on its efficacy. The trader may use a Parabolic Stop and Reverse indicator in their trading screens in conjunction with this brilliant indicator because then they will have a viable means for taking a trade or they may simply opt to look for bullish and bearish engulfing patterns each time the oscillator moves into respective oversold and overbought zones - that way the trader will be able to benefit through the direct use of this cyclic oscillator indicator.
Installing the 3perekosa Indicator For MT4
After you downloaded the indicator via the form above you need to unzip the zip-file. Then you need to copy the file 3end.mq4 into the folder MQL4\Indicators of your MT4 installation. After that please restart MT4 and then you will be able to see the indicator in the list of indicators.
Parameters of the 3perekosa Indicator For MT4
The 3perekosa Indicator For MT4 has 5 parameters to configure.
extern string NameCross ="GBPCHF"; // Íàèìåíîâàíèå êðîññà
extern string NameMain1 ="GBPUSD"; // Íàèìåíîâàíèå îñíîâíîé ïàðû 1
extern string NameMain2 ="USDCHF"; // Íàèìåíîâàíèå îñíîâíîé ïàðû 2
extern int NumberOfBars=1000; // Êîëè÷åñòâî áàðîâ îáñ÷¸òà (0-âñå)
extern bool Perevorot =false; // Ïåðåâîðà÷èâàåò èíäþêà îòíîñèòåëüíî ãîðèçîíòàëüíîé îñè.
Buffers of the 3perekosa Indicator For MT4
The 3perekosa Indicator For MT4 provides 4 buffers.
SetIndexBuffer(0, buf0);
SetIndexBuffer(1, buf1);
SetIndexBuffer(2, buf2);
SetIndexBuffer(3, buf3);
Main Parts Of The Code
void start()
{
int LoopBegin, sh;
//----
if (NumberOfBars==0) LoopBegin=Bars-1;
else LoopBegin=NumberOfBars-1;
LoopBegin=MathMin(Bars-1, LoopBegin);
for(sh=LoopBegin; sh gt =0; sh--)
{
P1=(iClose(NameMain1, 0, sh)*iClose(NameMain2, 0, sh)-iClose(NameCross, 0, sh))*3;
P2=(iClose(NameMain1, 0, sh)-iClose(NameCross, 0, sh)/iClose(NameMain2, 0, sh))*3;
P3=(iClose(NameMain2, 0, sh)-iClose(NameCross, 0, sh)/iClose(NameMain1, 0, sh))*3;
if (Perevorot) {P1=P1*(-1);P2=P2*(-1);P3=P3*(-1);}
C=iClose(Symbol(), 0, sh);
P1=P1+C;
P2=P2+C;
P3=P3+C;
P=(P1+P2+P3)/3;
// Comment(P," ",P1," ",P2," ",P3);
buf0[sh]=P;
buf1[sh]=C;
if (P gt C) buf2[sh]=C;
if (P lt C) buf3[sh]=C;
}
}
//+------------------------------------------------------------------+
// Comment(P," ",P1," ",P2," ",P3);
buf0[sh]=P;
buf1[sh]=C;
if (P gt C) buf2[sh]=C;
if (P lt C) buf3[sh]=C;
}
}
//+------------------------------------------------------------------+