Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1229
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
Tengo entendido que es como una comprobación periódica de la disponibilidad. (¿Hay EURUSD? y ¿hay una orden con el Magic especificado?) Si falta alguna de las condiciones, abrimos una posición. Sólo si se cumplen ambas condiciones, abrimos una posición.
A continuación, se nos pregunta en el paso 2. Supongamos que tenemos una orden abierta manualmente. Entonces cumplimos la primera condición (tenemos el mismo símbolo) y no cumpliremos la segunda, ya que esta orden no contiene magia. Y si una de las condiciones no coincide, entonces el código debe abrir la orden. Esto es exactamente lo que hace el código. Pero en el siguiente tic, abre la tercera, cuarta y quinta orden.....
¿Por qué abre una tercera orden?
Pero hay dos pedidos que cumplen ambas condiciones en total. Debería haber una comprobación (cambio a return(0)), no una apertura. , no la apertura.
¡Buenas noches a todos! ¿Puedes decirme si puedes escribir un código en mql5 que dibuje una línea en el gráfico (imagen adjunta) y registre todas las coordenadas de esta línea en el archivo? Si quieres dibujar una línea y rellenarla con las coordenadas, entonces tienes que hacer un simple trazado de la línea.
Todo está en la documentación.
Todo está en la documentación.
Gracias por el consejo, tal vez usted puede ayudarme a construir uno de estos de forma gratuita, por supuesto.
Gracias por el consejo, pero tal vez usted puede ayudarme a construir una de estas cosas, no de forma gratuita, por supuesto.
No es gratis - eso es para ti)))
Tengo entendido que es como una comprobación periódica de la disponibilidad. (¿Hay EURUSD? y ¿hay una orden con el Magic especificado?) Si falta alguna de las condiciones, abrimos una posición. Sólo si se cumplen ambas condiciones, abrimos una posición.
A continuación, se nos pregunta en el paso 2. Supongamos que tenemos una orden abierta manualmente. Entonces cumplimos la primera condición (tenemos el mismo símbolo) y no cumpliremos la segunda, ya que esta orden no contiene magia. Y si una de las condiciones no coincide, entonces el código debe abrir la orden. Esto es exactamente lo que hace el código. Pero en el siguiente tic, abre la tercera, cuarta y quinta orden.....
¿Por qué abre una tercera orden?
Pero hay dos pedidos que cumplen ambas condiciones en total. Debería haber una comprobación (cambio a return(0)), no una apertura. pero no la apertura.
== - si es igual != - si no es igual. Continuidad - fin de la iteración del bucle y comienzo de una nueva iteración del bucle. Breaking - terminación del ciclo y transición al siguiente operador que sigue el ciclo, return - terminación de la función, en su caso Onstart y espera de un nuevo tick. Y si una orden con su magik está abierta, debe terminar la función y dejar a la espera de una nueva garrapata.
Pregunta, si quieres abrir una orden en la ventana actual, ¿por qué necesitas especificar la herramienta explícitamente, o quieres abrir órdenes desde la ventana de otra herramienta? Tampoco está claro cuántas órdenes quiere abrir. Según su código, sólo se puede abrir un pedido y sólo después de cerrarlo se abrirá el segundo. Tienes un mago y una herramienta de ventana abierta. Además, las condiciones de apertura de la orden se comprueban para el instrumento actual y no para los eurobucks.
== - si es igual != - si no es igual. Kontinue - termina la iteración del bucle y comienza una nueva iteración del bucle. Break - termina el bucle y pasa al siguiente operador que sigue al bucle, return - termina la función, en su caso OnStart y espera un nuevo tick. Y si una orden con su magik está abierta, debe terminar la función y dejar a la espera de una nueva garrapata.
Pregunta, si quieres abrir una orden en la ventana actual, ¿por qué necesitas especificar la herramienta explícitamente, o quieres abrir órdenes desde la ventana de otra herramienta? Tampoco está claro cuántas órdenes quiere abrir. Según su código, sólo se puede abrir un pedido y sólo después de cerrarlo se abrirá el segundo. Tienes un mago y una herramienta de ventana abierta. Además, las condiciones de apertura de la orden se comprueban para el instrumento actual y no para los eurobucks.
- Sí, quiero abrir en la ventana actual;
- Una orden. La siguiente orden no se abre hasta que se cierra la anterior.
"Además, las condiciones de apertura de la orden se comprueban para el instrumento actual y no para los eurobucks" - entonces ?
- Sí, quiero abrir en la ventana actual;
- Una orden. La siguiente orden no se abre hasta que se cierra la anterior.
"Además, las condiciones de apertura de la orden se comprueban para el instrumento actual y no para los eurobucks" - entonces ?
Y lo que entonces, por ejemplo, usted tiene una ventana abierta no Eurobucks, pero el Eurofunt, se compara el símbolo de la orden seleccionada con Eurobucks, si es cierto, entonces en el Eurobucks hay una orden, y si nuestro magik, entonces returnee de la función OnStart, y si no, entonces establecemos una orden en el Eurobucks, pero Kloz, alta, Asc, Bid, tendrá un error al abrir órdenes, porque Bid y Asc para estos instuents son diferentes. Y Symbol() devolverá el símbolo de la ventana actual y no se producirá ningún error.
Puede utilizar una plantilla desde el editor de meta, hay un botón Nuevo en la parte superior izquierda. La función OnStart se sigue utilizando, pero no está bien, y OnStart es para los scripts. La plantilla correcta.
Código correcto. Falta el comentario de tu pedido y el mago no está contabilizado en tu código. ¡¡¡En las advertencias a la línea de apertura anote Conversión de tipo implícita de un número a una cadena!!!
hay muchos errores en su ejemplo
debería haber:
aquí los precios no están normalizados OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-SL*Point,Bid+TP*Point,"My order",MagicNumber,0,clrGreen);
Aquí no entiendo la lógica por la que es necesaria la salida de OnTick() si la condición es falsa.
tal vez, deberíamos seguir con el bucley simplemente calcular cuántos pedidos hay
Tu ejemplo es muy simple en cuanto a la lógica y sería difícil modificarlo para otras tareas... tal vez le gustaría añadir el arrastre