Experts: Expert MACD EURUSD 1 Hour - page 3

 

I back tested the EA using EUR/USD at M15. A trailing stop loss of 50, lots at .10, risk .o1, DF and SF I kept at 0. I'm not sure what DF and SF are for. 2 and a half months From 2009.1.1 to 2009.03.13. It did really well. Even better than the 1hr . It made no difference whether the lots where 10 or .10.

 

hi im rehan.. and i cheked all EA at mql4 but not any 1 is perfact,, all is wrong ea all has a problum. is any body have a good EA?

Josep:

Hola Gabito

En mis pruebas he encontrado que en la sección "void CloseOpBuySell()" la condición "if(mac1<mac2)" nunca se cumple. La razón es que las llamadas a iMACD las haces a nivel local. Yo las he trasladado al "int start()" y ya funciona. No sé si a ti te ocurre lo mismo.

Esa puede ser la explicación de los resultados espectaculares (no losses) ya que nunca se produce un cierre (close) sin stop loss.

Lo he dejado asi:

int start()
{
mac1 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,0);
mac2 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,1);
mac3 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,2);
mac4 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,3);
mac5 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,0);
mac6 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,1);
mac7 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,2);
mac8 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,3);
int total=OrdersTotal();
total=OrdersTotal();
if(total<1)
{

OpBuySell();
return(0);
}
for(int cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol()==Symbol()) // check for symbol
{

CloseOpBuySell();
}
}

}
//-----------------------------------+

Un saludo.

 

hi im rehan.. and i cheked all EA at mql4 but not any 1 is perfact,, all is wrong ea all has a problum. is any body have a good EA?

Josep:

Hola Gabito

En mis pruebas he encontrado que en la sección "void CloseOpBuySell()" la condición "if(mac1<mac2)" nunca se cumple. La razón es que las llamadas a iMACD las haces a nivel local. Yo las he trasladado al "int start()" y ya funciona. No sé si a ti te ocurre lo mismo.

Esa puede ser la explicación de los resultados espectaculares (no losses) ya que nunca se produce un cierre (close) sin stop loss.

Lo he dejado asi:

int start()
{
mac1 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,0);
mac2 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,1);
mac3 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,2);
mac4 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_MAIN,3);
mac5 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,0);
mac6 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,1);
mac7 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,2);
mac8 = iMACD(NULL,0,5,15,3,PRICE_CLOSE,MODE_SIGNAL,3);
int total=OrdersTotal();
total=OrdersTotal();
if(total<1)
{

OpBuySell();
return(0);
}
for(int cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol()==Symbol()) // check for symbol
{

CloseOpBuySell();
}
}

}
//-----------------------------------+

Un saludo.

 

hello in you ea code there are a error buy order the price is set on bid and for sell is for set to ask

Reason: