Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Sin embargo, debe recordar. El EA sólo cierra las operaciones en curso. Tienes que abrir la operación tú mismo.
100%, no hay problema, más bien eso es exactamente lo que estoy tratando de lograr .. no quiero EA para abrir cualquier comercio, que es mi trabajo .. Sólo quiero que se cierre si más de 2 órdenes están abiertas en X beneficio y debe considerar la propagación ! Poco a poco me voy acercando a ello... esto de la programación deberían haberlo enseñado en las escuelas.. jeje que pena que sea de los 80, nunca pensé que tendría que pasar por ello, pero cuanto más leo el archivo de ayuda, más intrigante me parece... además, este foro tiene un montón de ayuda, gracias a tipos como vosotros.
¿Qué pasa si puedo añadir un bucle IF y luego pegar el resto del código de abajo que inicia el bucle?
La condición IF debe comprobar que el Total de Órdenes sea => 2 para que el control se pase a cerrar todas las órdenes abiertas con X de beneficio después del spread?
No estoy seguro de lo que realmente quieres decir con "La condición IF debería comprobar que el Total de Órdenes es => 2 para que el control se pase a cerrar todas las órdenes abiertas con X beneficios después del spread"
pero estoy bastante seguro de que no pasará nada realmente malo si lo intentas. Y si no funciona, no hay nada que perder. Al menos lo has intentado.
100%, no hay problema, más bien eso es exactamente lo que estoy tratando de lograr .. no quiero EA para abrir cualquier comercio, que es mi trabajo .. Sólo quiero que se cierre si más de 2 órdenes están abiertas en X beneficio y debe considerar la propagación ! Poco a poco me voy acercando a ello... esto de la programación deberían haberlo enseñado en las escuelas.. jeje que pena que sea de los 80, nunca pensé que tendría que pasar por ello, pero cuanto más leo el archivo de ayuda, más intrigante me parece... además, este foro tiene un montón de ayuda, gracias a tipos como vosotros.
Solo hay que incluir la propagación en el beneficio total.
No estoy seguro de lo que realmente quieres decir con "La condición IF debe comprobar que el OrdersTotal sea => 2 para que se pase el control para cerrar todas las órdenes abiertas a X de beneficio después del spread"
pero estoy bastante seguro de que no pasará nada realmente malo si lo intentas. Y si no funciona, no hay nada que perder. Al menos lo has intentado.
No estoy seguro de lo que realmente quieres decir con "La condición IF debe comprobar que el OrdersTotal sea => 2 para que se pase el control para cerrar todas las órdenes abiertas a X beneficios después del spread"
Hmm... Ok lo que quiero decir con eso es
SI .. número total de órdenes abiertas es más que o igual a 2 .. sólo entonces seguir adelante y seguir el resto del código ..
SI el número total de órdenes abiertas .. [ OrdersTotal() ?? ] .. es inferior a 2 .. que significa su 1 o 0, entonces no hacer nada ..
Ahora, aquí hay un problema para mí, que el archivo de ayuda de mql 4 dice que OrdersTotal() cuenta todas las órdenes, de mercado y pendientes... Estoy tratando de buscar alguna función que pueda obtener sólo las órdenes de mercado en vivo, no las pendientes, O, puede ser calculado matemáticamente ya que en su mayoría sólo tengo un máximo de 2 operaciones que se ejecutan a la vez de todos modos.
¿Esta explicación es más clara?
Gracias por el tiempo que me dedicas.
thrdel quiere que pruebes primero y veas lo que sucede aunque estoy bastante seguro de lo que probablemente sucedería.
thrdel quiere que pruebes primero y veas lo que pasa.
sí, revisando el archivo de ayuda para encontrar la función adecuada que sólo da órdenes abiertas.
Muéstranos tu código cuando consigas completarlo y te ayudaremos si podemos.
Entendido. Gracias un montón ..
..
y no pude encontrar una función que sólo devuelve las operaciones abiertas .. Esto está bien, así que he añadido el bucle IF como abajo ..
He añadido la condición IF en el inicio que va si (OrdersTotal()>=2) .. [ Resaltado en el código anterior con el comentario ]
Ahora, hubo un problema al cerrar el {} ya que en el primer intento lo intenté como
así que básicamente como un codificador de primera vez, traté de poner esa condición if para ser comprobada PRIMERO .. no compiló ..
Así que cerré el {} obteniendo la condición dentro .. ahora se compila con sólo 2 advertencias y ningún error ..
el valor de retorno de 'OrderSelect' debe ser comprobado Testcode 1.mq4 56 8
no todas las rutas de control devuelven un valor Testcode 1.mq4 86 2
Así que compila .. ¿es lógicamente correcto?
[Además, no se elimina ninguna información de derechos de autor, sólo estoy añadiendo una línea, la eliminación de sus detalles sería totalmente injusto por mi parte .. ¿cuál es la regla con respecto a eso? ]
Sí, revisando el archivo de ayuda para encontrar la función adecuada que sólo da órdenes abiertas.
Lo siento mucho hombre, como he dicho antes, realmente no soy tan bueno en la explicación . Entiendo que quieres encontrar una función que cuente sólo las órdenes de compra o venta abiertas, te pedí que miraras mi código, te lo expliqué lo mejor que pude y no era tan bueno como esperaba .
¿Recuerdas el primer paso que mencioné sobre ese código?
Fue : CountMyOrders. Ahora, si miraras el código como te pedí, esto es lo que encontrarías
Dice :
Debes saber lo que significa OP_BUY y OP_SELL.
No cuentan las órdenes pendientes, no hay stop de compra abierto, no hay stop de venta abierto, no hay límite de compra o límite de venta, sólo compra abierta y venta abierta.
¿Cómo puedo explicar mejor ese trozo de código y lo que hace?
Puedes seguir buscando en la documentación y familiarizarte con ella pero te puedo decir que la función que buscas no está ahí.
Mi EA dice que si no hay órdenes todavía, espere :
Quiere que su espere 2 órdenes. Si prestaras un poco de atención a lo que he dicho, probablemente te darías cuenta de que todo lo que tienes que hacer es :
Voilla. Ahora espera a que las 2 órdenes estén en su sitio - sin pendientes, ¡sólo compra o venta!
Por favor, comprenda que traté de poner el código para adaptarse a otros también que podrían estar buscando una manera de gestionar las operaciones abiertas y no tanto una costumbre diseñada para un propósito específico.
Está pensado como un ejemplo, toma lo que te parezca bueno, deja el resto fuera, mejóralo, cámbialo, aprende de él si puedes y experimenta con él.
Espero que tenga sentido.
Lo siento mucho hombre, como dije antes, no soy muy bueno explicando . Entiendo que quieres encontrar una función que cuente sólo las órdenes de compra o venta abiertas, te pedí que miraras mi código, te lo expliqué lo mejor que pude y no fue tan bueno como esperaba .
¿Recuerdas el primer paso que mencioné sobre ese código?
Fue : CountMyOrders. Ahora, si miraras el código como te pedí, esto es lo que encontrarías
Dice :
Debes saber lo que significa OP_BUY y OP_SELL.
No cuentan las órdenes pendientes, no hay stop de compra abierto, no hay stop de venta abierto, no hay límite de compra o límite de venta, sólo compra abierta y venta abierta.
¿Cómo puedo explicar mejor ese trozo de código y lo que hace?
Puedes seguir buscando en la documentación y familiarizarte con ella pero te puedo decir que la función que buscas no está ahí.
Mi EA dice que si no hay órdenes todavía, espere :
Quiere que su espere 2 órdenes. Si prestaras un poco de atención a lo que he dicho, probablemente te darías cuenta de que todo lo que tienes que hacer es :
Voilla. Ahora espera a que las 2 órdenes estén en su sitio - sin pendientes, ¡sólo compra o venta!
Por favor, comprenda que traté de poner el código para adaptarse a otros también que podrían estar buscando una manera de gestionar las operaciones abiertas y no tanto una costumbre diseñada para un propósito específico.
Está pensado como un ejemplo, toma lo que te parezca bueno, deja el resto fuera, mejóralo, cámbialo, aprende de él si puedes y experimenta con él.
Espero que tenga sentido.