This manual only for indicator :"EA999 Strong K BreakOut ".
V1.1 Upgrade, for EA can read the signal, this upgrade is used as follows:
Examples of get signals from indicator:
Please note, do not read the current K line signal, because the current K line signal is not accurate before the close, at least read the previous K line signal.
Note that the Bufferindex read is 10 is for long and 11 is for short because some buffers was used to draw K.
For ease of reference, I use the function method to get.
This manual only for indicator :"EA999 Strong K BreakOut ".
V1.1 Upgrade, for EA can read the signal, this upgrade is used as follows:
Examples of get signals from indicator:
Please note, do not read the current K line signal, because the current K line signal is not accurate before the close, at least read the previous K line signal.
Note that the Bufferindex read is 10 is for long and 11 is for short because some buffers was used to draw K.
For ease of reference, I use the function method to get.
Long examples:
double SignalBuy = iGetIndicator(NULL,PERIOD_CURRENT,10,1);
if(SignalBuy!=EMPTY_VALUE)
{
//long signal, for buy
break;
}
else
{
Print("Buy Signal: Not available, pause");
}
double SignalSell = iGetIndicator(NULL,PERIOD_CURRENT,11,1);
if(SignalSell!=EMPTY_VALUE)
{
//short signal for
Print("Sell Signal: OK, do something");
break;
}
else
{
Print("Sell Signal: Not available, pause");
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
double iGetIndicator(string symbol,
ENUM_TIMEFRAMES tf,
int bufferindex,
int shift)
{
int handle=iCustom(symbol,tf,"EA999 Strong K Breakout 1.1");
if(handle<0)
{
Print("iCustom indicator create error:",ErrorDescription(GetLastError()));
return(-1);
}
else
return(CopyBufferMQL4(handle,bufferindex,shift));
}
//+------------------------------------------------------------------+
double CopyBufferMQL4(int handle,int index,int shift)
{
double buf[];
switch(index)
{
case 0:
if(CopyBuffer(handle,0,shift,1,buf)>0)
return(buf[0]);
break;
case 1:
if(CopyBuffer(handle,1,shift,1,buf)>0)
return(buf[0]);
break;
case 2:
if(CopyBuffer(handle,2,shift,1,buf)>0)
return(buf[0]);
break;
case 3:
if(CopyBuffer(handle,3,shift,1,buf)>0)
return(buf[0]);
break;
case 4:
if(CopyBuffer(handle,4,shift,1,buf)>0)
return(buf[0]);
break;
case 5:
if(CopyBuffer(handle,5,shift,1,buf)>0)
return(buf[0]);
case 6:
if(CopyBuffer(handle,6,shift,1,buf)>0)
return(buf[0]);
case 7:
if(CopyBuffer(handle,7,shift,1,buf)>0)
return(buf[0]);
case 8:
if(CopyBuffer(handle,8,shift,1,buf)>0)
return(buf[0]);
case 9:
if(CopyBuffer(handle,9,shift,1,buf)>0)
return(buf[0]);
case 10:
if(CopyBuffer(handle,10,shift,1,buf)>0)
return(buf[0]);
case 11:
if(CopyBuffer(handle,11,shift,1,buf)>0)
return(buf[0]);
break;
default:
break;
}
return(EMPTY_VALUE);
}