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
Lo siento, en realidad me he confundido un poco.
if(iOpenOrders_Buy = 3)
Aquí, si el total de órdenes de compra abiertas es igual a '3', el código pasará a la siguiente parte.
if(iOpenOrders_Buy> 0)
Si el número de órdenes de compra abiertas es mayor que "0", el código pasará a la siguiente parte.
if(iOpenOrders_Buy== 3)
Entonces si la cuenta de órdenes de compra abiertas es igual a 3 entonces se abrirá la orden de compra_1, si es igual a '2' entonces se abrirá la orden decompra_2 y luego laorden de compra_3 si la cuenta de órdenes de compra abiertas es igual a 1.
¿Estoy en lo cierto?
tienes razón mira de nuevo el código cambiado ¿esta bien?
Tienes razón, mira de nuevo el código cambiado, ¿está bien?
No lo creo.
if(Condición de compra cumplida && iOpenOrders_Buy == 0)
Esto significa que la 'Condición de Compra se cumple' y no hay órdenes de 'Compra Abierta', ¿correcto?
entonces el código pasará a la siguiente línea donde iOpenOrders_Buy = 3;
Así que se le dice al EA que ya hay 3 órdenes abiertas allí, ¿verdad?
Pero si entro en el código sabiendo que no hay órdenes de compra abiertas allí entonces ¿por qué estamos asignando iOpenOrders_Buy =3;?
También el objetivo es, uno de los tres oficios se mantendrá en funcionamiento y sólo 'Nueva' orden de compra se abrirá cuando ese último comercio se cerrará.
Así que esto tiene que ser
if(iOpenOrders_Buy== 0) // No hay ninguna orden de compra abierta por lo que tenemos que abrir nuevas órdenes de compra
Cuando el EA obtenga la condición de compra, entonces abrirá tres operaciones con diferentes Take Profit.
Entonces, si dos de las operaciones se cierran de todos modos (ya sea por TP o SL), la tercera seguirá funcionando.
¿Qué opinas de esto? ¿Haría lo mismo que se indica arriba?
Saludos
No lo creo.
¿Qué opinas de esto? ¿Haría lo mismo que se indica arriba?
Saludos
no, que pasa si el ordersend no tiene éxito, como se comprueba que operación hay que abrir si una falla
¿por qué asignamos iOpenOrders_Buy = 3; ?
tienes que abrir 3 nuevas operaciones si ordersend tiene éxito haz iOpenOrders_Buy nuevo valor
si iOpenOrders_Buy se convierte en 0 tenemos nuestras 3 operaciones
no lo que sucede si ordersend no tiene éxito, ¿cómo se comprueba que el comercio que tiene que abrir si uno falla
¿por qué asignamos iOpenOrders_Buy = 3; ?
tienes que abrir 3 nuevas operaciones si ordersend tiene éxito haz iOpenOrders_Buy nuevo valor
si iOpenOrders_Buy se convierte en 0 tenemos nuestras 3 operaciones
Sí, es muy posible que 'Ordersend()' falle al abrir la orden.
Ahora entiendo por qué
if(iOpenOrders_Buy > 0 ) // tenemos que abrir nuevas órdenes de compra
se utilizó en su código. Como ya establecimos iopendOrders=3, así que lo verificará.
Pero más tarde me confundí que el valor de iopendOrders seguirá cambiando.
Probablemente por mi limitado cerebro no pude entender el mecanismo. Así que traté de implementar su lógica en la forma anterior.
¿Es esto lo que usted ha referido en su código dado?
Saludos
Sí, es muy posible que 'Ordersend()' falle al abrir la orden.
Ahora entiendo por qué
if(iOpenOrders_Buy > 0 ) // tenemos que abrir nuevas órdenes de compra
se utilizó en su código. Como ya establecimos iopendOrders=3, así que lo verificará.
Pero más tarde me confundí que el valor de iopendOrders seguirá cambiando.
Probablemente por mi limitado cerebro no pude entender el mecanismo. Así que traté de implementar su lógica en la forma anterior.
¿Es esto lo que usted ha referido en su código dado?
Saludos
Por favor, no te preocupes, pero de nuevo me he confundido.
Si utilizo
count=count-1; después
Print( "Orden de compra 1 abierta con éxito");
esto significa que si la primera orden de compra se abrió, entonces el valor de la cuenta se reducirá en 1.
Así que al entrar en la siguiente función, aquí la siguiente condición 'if':
if (count==2) {}
el valor de count se ha convertido en '2' para ello. [count=3-1=2]
¿Es esto correcto?
Por favor, no te preocupes, pero de nuevo me he confundido.
Si utilizo
count=count-1; después
Print( "Orden de compra 1 abierta con éxito");
eso significa que si la primera orden de compra se abrió, entonces el valor de la cuenta se reducirá en 1.
Así que al entrar en la siguiente función, aquí la siguiente condición 'if':
if (count==2) {}
el valor de count se ha convertido en '2' para ello. [count=3-1=2]
¿Es esto correcto?
pruébalo.... haz algunas pruebas
Pruébalo fuera.... hacer algunas pruebas
Cansado y este es el resultado.
Probablemente no pude colocar el código 'Cerrar la orden de venta antes de comprar' en el lugar correcto. Por lo tanto, se obtienen órdenes de venta y de compra a pesar de estar en contra del código original.
¡Y hay '4' órdenes de compra en total!
He fallado :(
opps, olvidé poner iOpenOrders_Buy ==0
Ahora probando de nuevo con esto.