Ayuda con un EA!!!

Espacio para compartir y debatir sobre Asesores Expertos de MetaTrader

Ayuda con un EA!!!

Notapor Mnemic » 19 Jun 2011, 22:27

Hola, quisiera que alguien me ayude con este EA porque no tengo nada de experiencia en programacion.
Como hago para cambiarle los valores de las EMAS, por ejempo: EMA CORTA = 5 y EMA LARGA = 13 ??
//+------------------------------------------------------------------+
//| SimpleEMA.mq4 |
//| Programando Forex |
//| http://www.programandoforex.com |
//+------------------------------------------------------------------+
#property copyright "Programando Forex"
#property link "http://www.programandoforex.com"

extern int LargaEMA = 200;
extern int CortaEMA = 23;
extern int Size = 1;

int start()
{
static datetime MarcaTiempo = 0;
static int ticket;
int señal;
datetime NuevaTiempo = Time[0];

// A cada nueva barra
if(MarcaTiempo != NuevaTiempo)
{
// Tomamos datos de las dos EMAs (Corta y Larga).
double emaLargaA = iMA(NULL,0,LargaEMA,0,1,4,3);
double emaLargaB = iMA(NULL,0,LargaEMA,0,1,4,1);
double emaCortaA = iMA(NULL,0,CortaEMA,0,1,4,3);
double emaCortaB = iMA(NULL,0,CortaEMA,0,1,4,1);

// Calculamos si se han cruzado
if(emaCortaA < emaLargaA && emaCortaB > emaLargaB)
señal = 0; // ema corta cruza de abajo a arriba.
else if(emaCortaA > emaLargaA && emaCortaB < emaLargaB)
señal = 1; // ema corta cruza de arriba a abajo.
else
señal = -1; // no hay cruce.

// Si no hay órden abierta y hay señal podemos operar.
if(OrdersTotal() == 0 && señal != -1)
{
if(señal == 0) // Señal 0 -> COMPRA
ticket = OrderSend(Symbol(),OP_BUY,Size,Ask,3,0,0,NULL,23,0,Green);
else if(señal == 1) // Señal 1 -> VENTA
ticket = OrderSend(Symbol(),OP_SELL,Size,Bid,3,0,0,NULL,23,0,Green);
}

// Si hay una orden abierta y hay señal en contra cerramos
if(OrdersTotal() != 0 && señal != -1)
{
// Seleccionamos la orden.
OrderSelect(ticket,SELECT_BY_TICKET);
//Comprobamos si la señal es contraria
if(OrderType() == 0 && señal == 1)
OrderClose(ticket,Size,Bid,3,Yellow); // Cerramos la compra.
if(OrderType() == 1 && señal == 0)
OrderClose(ticket,Size,Ask,3,Yellow); // Cerramos la venta.
}

MarcaTiempo = NuevaTiempo;
}


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

tendria que cambiarle donde dice:
extern int LargaEMA = 200;
extern int CortaEMA = 23;
extern int Size = 1;
?? y tambien donde dice:
if(señal == 0) // Señal 0 -> COMPRA
ticket = OrderSend(Symbol(),OP_BUY,Size,Ask,3,0,0,NULL,23,0,Green);
else if(señal == 1) // Señal 1 -> VENTA
ticket = OrderSend(Symbol(),OP_SELL,Size,Bid,3,0,0,NULL,23,0,Green);
}
??

AGRADEZCO A TODOS..
gracias!
Mnemic
 
Mensajes: 23
Registrado: 19 Jun 2011, 22:14
Karma: 0

Re: Ayuda con un EA!!!

Notapor Trader2010 » 20 Jun 2011, 23:06

Puedes hacerlo de dos formas, cuando le dices propiedades simplemente pones en CortaEMA= 5 y en LargaEMA= 13.
la otra forma es cambiar simplemente las lineas que dicen " extern int LargaEMA y extern Int CortaEMA" y le pones los valores que deseas.
Saludos espero te sirva
Trader2010
 
Mensajes: 317
Registrado: 17 Sep 2009, 15:26
Karma: 0

Re: Ayuda con un EA!!!

Notapor pgarfio » 25 Ago 2011, 14:13

Hola a todos, quisiera felicitarles por este magnifico foro que tantas cosas me a enseñado, porque aunque me e registrado hoy, hace mucho tiempo que les sigo.


Aparte de la duda del compañero para cambiar los valores de las ema's, hay tambien un valor que no se si hay que cambiar que es el de "Size"
El valor que pone es 1 y quisiera saber si es valido para un periodo de 15 minutos o hay que cambiarlo y si hubiese que camiarlo que valor hay que poner para 5 minutos.
extern int LargaEMA = 200;
extern int CortaEMA = 23;
extern int Size = 1;
pgarfio
 
Mensajes: 3
Registrado: 25 Ago 2011, 14:04
Karma: 0

Re: Ayuda con un EA!!!

Notapor pgarfio » 26 Ago 2011, 10:18

Hola de nuevo.
Me respondo yo mismo el Size es el volumen del lote y no tiene nada que ver con el tiempo.

Este EA no me acaba de convencer, se supone que abre posicion cuando se cruzan las EMA'S y que la cierra cuando se vuelven a cruzar, Ayer solo me abriò una operacion y hubo varios cruces, la abrió al cerrar la segunda vela despues del cruce , osea que el precio al abrir la operacion se habia separado una barbaridad del cruce y por ultimo no me cerro la operación despues del cruce(esperé hasta el cierre de la cuarta vela y nada).

Me pregunto y os pido lo siguiente:

Se puede ajustar este EA? si es asi por favor se puede explicarmelo clarito ya que yo no se programar.
Hay otro EA similar a este para poder probarlo?

Muchas gracias por todo.
pgarfio
 
Mensajes: 3
Registrado: 25 Ago 2011, 14:04
Karma: 0

Re: Ayuda con un EA!!!

Notapor FXWizard » 26 Ago 2011, 11:10

Size hace referencia al tamaño de la posicion con la que vas a operar por lo que no depende del timeframe sino del dinero que tengas en la cuenta.

Saludos,
FXWizard
Avatar de Usuario
FXWizard
 
Mensajes: 8493
Registrado: 12 Feb 2008, 15:17
Karma: 35

Re: Ayuda con un EA!!!

Notapor pgarfio » 26 Ago 2011, 13:02

Gracias FXWizard, y que me dices de ajustar el EA o de otros similares/parecidos.
pgarfio
 
Mensajes: 3
Registrado: 25 Ago 2011, 14:04
Karma: 0


Volver a Expert Advisors

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados