Publi |
Publi |
Gracias por la respuesta, pero de ese modo tengo que tener el ea activado antes de la primera hora que quiero tomar.Soy un autodidacta de la programacion en mql4 por necesidad jajajaja pero yo lo haria de la siguiente manera, recuerda que pueden existir muchas formas.
2 variables de tipo double
utilizaria timecurret y lo compararia si es igual a las horas que defines
cuando sea igual que le asigne el valor del bid o ask como prefiereas a la variabe 1
luego la siguiente hora lo mismo y que asigne el valor a la variable 2
y al final del dia a las 12 digamos que lo reinicie si no te servira mas.
Saludos y exitos.
Seguiré indagandoForo de Forex Trading United
Buenas a todos y de antemano gracias por vuestro tiempo.
Que orden debo poner en un programa para saber el precio de un activo a una hora determinada, por ejemplo, quiero asignar a una variable el valor de mercado a las 8:00 y a otra el de las 10:00.
De nuevo muchas graciasForo de Forex Trading United
Soy un autodidacta de la programacion en mql4 por necesidad jajajaja pero yo lo haria de la siguiente manera, recuerda que pueden existir muchas formas.Buenas a todos y de antemano gracias por vuestro tiempo.
Que orden debo poner en un programa para saber el precio de un activo a una hora determinada, por ejemplo, quiero asignar a una variable el valor de mercado a las 8:00 y a otra el de las 10:00.
De nuevo muchas gracias
2 variables de tipo double
utilizaria timecurret y lo compararia si es igual a las horas que defines
cuando sea igual que le asigne el valor del bid o ask como prefiereas a la variabe 1
luego la siguiente hora lo mismo y que asigne el valor a la variable 2
y al final del dia a las 12 digamos que lo reinicie si no te servira mas.
Saludos y exitos.Foro de Forex Trading United
Bueno, si lo haces como dice el compañero Wolfman, tendrías el problema de que si justo a las 8 (o la hora que sea que quieras) no tienes el EA o la plataforma funcionando por lo que sea, o se te ha ido la luz o en ese par no se produce un tick justo en ese momento (si no hay un tick justo a las 08:00:00, sino que el siguiente tick que llega es a las 08:00:01 por ejemplo o a las 08:00:03) no te guardaría la variable. Y aunque te la guardase, tendrías que guardarla en un archivo o en las variables globales del terminal, puesto que si después a lo largo del día tuvieras un solo microcorte de conexión con el broker (cosa que todos los días suele pasar varias veces) el EA se reiniciaría y el valor almacenado en esa variable se perdería.
Por tanto, NO es aconsejable hacerlo de ese modo. Eso solo podría servir para backtest, pero no para operativa on line.
Lo más recomendable es NO guardar ninguna variable, sino comprobar el precio de apertura de la vela que te interesa a posteriori en cada momento que te interese y el EA esté funcionando.
La forma de hacer esto es mediante la función iBarShift. Si es para el símbolo donde está puesto el EA se podría hacer así:
Código:double precio = Open[iBarShift(_Symbol, 0, hora, false)]; // Donde hora tiene que ser una variable datetime donde hayas calculado la hora que te interese.
Saludos y un abrazo.
Muchas gracias, también he descubierto las funciones iopen y la iclose, que me dan los valores de las velas anteriores e el timeframe que quieras.
Muchas gracias por todoForo de Forex Trading United
De nada hombre, de todos modos con iClose, iOpen, etc también tienes que usar iBarShift igualmente para localizar la vela de la que quieres el precio de apertura, o cierre o el que sea.Muchas gracias, también he descubierto las funciones iopen y la iclose, que me dan los valores de las velas anteriores e el timeframe que quieras.
Muchas gracias por todo
Saludos.Foro de Forex Trading United
©2016, Robertomar Trader.
https://robertomartrader.blogspot.com
https://www.facebook.com/robertomartrader
Para que un Expert Funcione debe de estar trabajando siempre, tu pc no debe de apagarse y tener tu metatrader corriendo con el Ea.
Saludos y exitos.Foro de Forex Trading United
Bueno, si lo haces como dice el compañero Wolfman, tendrías el problema de que si justo a las 8 (o la hora que sea que quieras) no tienes el EA o la plataforma funcionando por lo que sea, o se te ha ido la luz o en ese par no se produce un tick justo en ese momento (si no hay un tick justo a las 08:00:00, sino que el siguiente tick que llega es a las 08:00:01 por ejemplo o a las 08:00:03) no te guardaría la variable. Y aunque te la guardase, tendrías que guardarla en un archivo o en las variables globales del terminal, puesto que si después a lo largo del día tuvieras un solo microcorte de conexión con el broker (cosa que todos los días suele pasar varias veces) el EA se reiniciaría y el valor almacenado en esa variable se perdería.
Por tanto, NO es aconsejable hacerlo de ese modo. Eso solo podría servir para backtest, pero no para operativa on line.
Lo más recomendable es NO guardar ninguna variable, sino comprobar el precio de apertura de la vela que te interesa a posteriori en cada momento que te interese y el EA esté funcionando.
La forma de hacer esto es mediante la función iBarShift. Si es para el símbolo donde está puesto el EA se podría hacer así:
Código:double precio = Open[iBarShift(_Symbol, 0, hora, false)]; // Donde hora tiene que ser una variable datetime donde hayas calculado la hora que te interese.
Saludos y un abrazo.Foro de Forex Trading United
Aviso Legal Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal |