Moving Average MT4 editor

Foro para cuestiones generales sobre la plataforma MetaTrader 4.

Moving Average MT4 editor

Notapor zaidisk » 02 Jul 2012, 08:59

Hola, compañeros

estoy tratando de hacerme un propio EA, pero el Meta edito me esta volviendo loco.

necesito es básicamente es:
al terminar una barra, necesito mirar el movimiento promedio de esta barra y de las 2 anteriores.
por ejemplo en un timeline de 15min acaba de terminar la barra de las 8:00, necesito mirar el movimiento promedio de las 7:45 y 7:30 en el mismo
instante.

alguna idea de como lo puedo hacer.

gracias

Manuel.
zaidisk
 
Mensajes: 2
Registrado: 02 Jul 2012, 08:45
Karma: 0

Re: Moving Average MT4 editor

Notapor elolima » 02 Jul 2012, 19:52

Hola
Una aproximación al caso.
Saludos

// Para identificar el inicio de cada barra
if(Volume[0] > 1){...}

// Indicador "Moving Averages", no se si es tu idea....
// Repasa los parámetros del MA, para adecuarlos a tu sistema
double EMA12 = iMA(NULL,0,12,0,MODE_SMA,PRICE_TYPICAL,0);

// Para ir guardandolos
double GuardarEMA[3] // Definir el array dónde almacenar los valores. De 0 a n.
int Indice = 0;

// Ir Dandole la vuelata al array de datos ...
Indice++;
if(Indice > 3)
Indice = 0;
GuardarEMA[Indice] = iMA(NULL,0,12,0,MODE_SMA,PRICE_TYPICAL,0);
elolima
 
Mensajes: 47
Registrado: 13 May 2012, 10:10
Karma: 0

Re: Moving Average MT4 editor

Notapor zaidisk » 02 Jul 2012, 21:19

Muchas gracias

Si, asi lo tengo hecho, pero el moving Average que me esta arrojando es el valor en el que entro
no en el valor al momento de salir de la barra, así que el valor que guarde no me sirve
por que puede cambiar en el transcurso de la operación.

puedo limitar el valor del moving average
ejemplo:
cuando lo calculo me da 1.2356697
pero viendo en el gráfico me da 1.2357, como haga para redondearlo en el código para que me de igual al gráfico?.

Muchas gracias por su ayuda

Manuel
Adjuntos
moving.jpg
movig
zaidisk
 
Mensajes: 2
Registrado: 02 Jul 2012, 08:45
Karma: 0

Re: Moving Average MT4 editor

Notapor elolima » 03 Jul 2012, 12:23

Hola
Por seguir con la idea, si la he entendido bien ...
1- Para poder operar, habrías de esperar al inicio de la siguiente barra, es mas, has de esperar la finalización de 3 barras, para poder promediar ...
2- El MA se esta moviendo continuamente, hasta la finalización de la barra.

// Para redondear a un número determinado de dígitos.
NormalizeDouble(valor, dígitos);

// Para identificar el inicio de cada Barra
if(Volume[0] > 1)
// El último valor guardado, será el final de la Barra anterior ...
...
GuardarEMA[Indice] = ValorEMA12;
else
// Vamos guardando el último valor del EMA
ValorEMA12 = iMA(NULL,0,12,0,MODE_SMA,PRICE_TYPICAL,0);

Saludos
elolima
 
Mensajes: 47
Registrado: 13 May 2012, 10:10
Karma: 0

Re: Moving Average MT4 editor

Notapor FXWizard » 03 Jul 2012, 12:28

Zaidisk, prueba la función NormalizeDouble, con ella puedes redondear cualquier valor al número de decimales que quieras:

http://docs.mql4.com/convert/NormalizeDouble

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


Volver a MetaTrader 4

¿Quién está conectado?

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

cron