Haciendo un código MQL4

¿Tiene dudas sobre el trading con divisas? No se preocupe, FXWizard tiene todas las respuestas.

Re: haciendo un código MQL4

Notapor cu6yu4 » 17 Sep 2010, 22:06

en mql4.com... inglés claro
Avatar de Usuario
cu6yu4
 
Mensajes: 156
Registrado: 10 Oct 2009, 15:04
Karma: 0

Re: haciendo un código MQL4

Notapor trader201 » 17 Sep 2010, 22:11

Hola cu6yu4. Si me interesa. Y Gracias.
trader201
 
Mensajes: 281
Registrado: 13 Feb 2010, 21:05
Karma: 0

Re: haciendo un código MQL4

Notapor FXWizard » 21 Sep 2010, 14:48

Secundo la sugerencia de cu6yu4, MQL4.com es posiblemente la mejor referencia, sino la única, para consultar documentación sobre MQL.

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

Re: haciendo un código MQL4

Notapor trader201 » 22 Sep 2010, 23:07

Hola FXWizard. Gracias por el código (21hour.mq4). Si me ha servido; ya lo puse a prueba con funcion Alert para confirmar y funcionó a la perfección.

Quisiera preguntarte sobre otra cosa, si no es molestia, es que me interesa saber cómo hacer en MQL4 un nivel fijo de precio, es decir, que si ocurren tales o cuales eventos que yo coloque, se marque un nivel de precio que quede "fijo" y al cual yo, a través de ordersend, me referiré a este bien como punto de entrada, stoploss o takeprofit . Por dar un ejemplo:

Código: Seleccionar todo
//aqui coloco las condiciones según se establecerá el nivel fijo de precio)
if (aqui coloco las condiciones)
double nivelfijo = Bid+30*point  //por dar un ejemplo. Este seria el nivel de precio que quiero que quede "fijo"

if (Bid = nivelfijo)
función ordersend (lleno los datos)


El problema con esta forma es que el me saca un nuevo "nivelfijo" porque el AE revisa el nuevo precio Bid y a ese "nuevo" precio le suma los 30 puntos.

Lo que me interesa es que ese nivel de precio quede fijo, que es el que utilizaría bien sea como punto de entrada, de salida o de take profit, que quede fijo, sin modificarse, mientras esté actiado el EA. Es decir, dígamos que yo coloco la función para que ejecute un máximo de 10 trades, mientras duren esos 10 trades ese nivel de precio será el mismo, sin modificarse por la opción return cuando devuelva en control al inicio ¿hay alguna función en MQL4 para hacer esto? (nivel fijo o cantidad fija o numero fijo: algún dato que quede sin modificarse hasta que el EA termine de ejecutarse)

Probé pasando el control con la opción return a un punto posterior a cuando saca el nivel pero como la formula requiere de tomar del precio para sacarlo, lo hace, con los precios actuales

Gracias FXWizard, espero puedas ayudarme.
trader201
 
Mensajes: 281
Registrado: 13 Feb 2010, 21:05
Karma: 0

Re: haciendo un código MQL4

Notapor elcctroo » 23 Sep 2010, 15:44

Puedes poner la variable nivelfijo como extern al comienzo del expert.
Un saludo.
elcctroo
 
Mensajes: 56
Registrado: 01 Dic 2009, 17:41
Karma: 0

Re: haciendo un código MQL4

Notapor trader201 » 23 Sep 2010, 17:01

Saludos elcctro. Gracias por la ayuda. El problema es que no me funcionó (no se si es no estoy haciendo lo que me quisiste decir). Lo intenté declarando la variable valorfijo antes de todas las funciones especiales, dentro de la función especial init y al comienzo de la función especial star. En ninguna me ha funcionado. ¿Puedes decirme exactamente cómo hacerlo?

Digamos, aquí el código para hacer la prueba:



int init()
{
return;
}
//--------------------------------------------------------------------

int start()
{
Alert ("Bid", Bid, "vp=", nivelfijo);
return;
}
//--------------------------------------------------------------------
int deinit()
{
return;
}
//-------------------------------------------------------------------

(Como es mi intención, Alert manda a decir el precio del Bid y el nivel fijo. Con cada nuevo tick el precio del Bid será nuevo, pero el de nivel fijo no deberá cambiar una vez ha establecido su valor - que en el ejemplo es Bid+30)
trader201
 
Mensajes: 281
Registrado: 13 Feb 2010, 21:05
Karma: 0

Re: haciendo un código MQL4

Notapor FXWizard » 24 Sep 2010, 10:33

trader201 escribió: (...) (Como es mi intención, Alert manda a decir el precio del Bid y el nivel fijo. Con cada nuevo tick el precio del Bid será nuevo, pero el de nivel fijo no deberá cambiar una vez ha establecido su valor - que en el ejemplo es Bid+30)


Si no me equivoco, tal y como supones al estar dentro del bucle start se va ir actualizando con cada nuevo tick. Empiezo a pensar que no necesitas un EA para hacer esto, quizás con un script se podría resolver. De todas formas, conozco a elcctroo y estoy seguro de que te dará la clave para resolver el problema.

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

Anterior

Volver a Pregunte a FXWizard

¿Quién está conectado?

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