Preguntas de los principiantes MQL4 MT4 MetaTrader 4 - página 238

 
Ventura:

Artyom, gracias, estaba esperando tu consejo. Mientras esperaba, yo mismo buscaba posibles soluciones. Esta mañana he descubierto cómo mostrar la ventana de configuración mediante programación.

He descubierto que la ventana se llama pulsando F7. Una búsqueda en Internet me ha mostrado que puedo hacer una pantalla de teclas programables utilizando MQL.

El resto es una cuestión de técnica. Aquí está el código que puede ser de utilidad para alguien:

extern double BuyStop, SellStop;

...

De nada. Puede esperar mucho tiempo mi respuesta/consejo :) Otros le han dicho lo mismo.

No hay solución para el mercado. Y necesitas PostMessageW()

 
Ventura:

Pero me alegré demasiado pronto. He conseguido abrir la ventana de parámetros mediante programación, pero los valores que he asignado a los parámetros en el procedimiento no se han guardado (((

Es decir, cuando abro la ventana de parámetros, veo los valores especificados durante la inicialización, en mi caso ceros.

¿Hay alguna manera de hacer que los valores calculados se transfieran al formulario de parámetros?

No. Al llamar a los parámetros con F7 se saldrá del EA a través de OnDeInit y se iniciará el EA de nuevo a través de OnInit. Así es como funciona el EA en un gráfico. Crusty ni siquiera funciona. El formulario de parámetros sólo funciona en un sentido, los valores intput y extern se leen allí de forma programada (en 5ka no hay extern, por cierto) antes de inicializar el EA. La segunda vez que OnInit no se llama durante la operación actual de EA.

La única manera de crujirlo es sacar el código de EA, hacer cambios allí, compilar y llamar a la forma de parámetro)) Pero esto es una tarea de Sísifo)) Un panel similar a la forma de los parámetros es más correcto...

 
Valeriy Yastremskiy:

No. Al llamar a los parámetros con F7 se termina el EA a través de OnDeInit, y se inicia el EA de nuevo a través de OnInit. Así es como funciona el EA en el gráfico. Ni siquiera se forma una costra. El formulario de parámetros sólo funciona en un sentido, los valores intput y extern se leen allí de forma programada (en 5ka no hay extern, por cierto) antes de inicializar el EA. La segunda vez que OnInit no se llama durante la operación actual de EA.

La única manera de cruzar es sacar el código de EA, hacer cambios allí, compilarlo y llamar a la forma de parámetro)) Pero esto es una tarea de Sísifo)) Un panel similar a la forma de los parámetros es más correcto...

Gracias, lo intentaré. He pensado en otra variante - para llamar a la forma de los parámetros, a continuación, por las funciones de la API para escribir en Editar campos valores de los parámetros.

Por cierto, ¿cómo hacer para que cuando inicie un EA, el formulario de parámetros NO se muestre? Lo llamo programáticamente, por lo que no tiene sentido en el primer programa.

 
Ventura:

Gracias, lo probaré. Pensé en otra opción - para llamar a la forma de parámetros, a continuación, por las funciones de la API para escribir en los campos de edición de los valores de los parámetros.

Por cierto, ¿podríais aconsejar cómo hacer que el formulario de parámetros NO se muestre al iniciar el EA? Lo llamo programáticamente, por lo que no tiene sentido en el primer programa.

generar programáticamente una plantilla con todos los parámetros requeridos y luego ChartApplyTemplate()

 
Ventura:

Gracias, lo probaré. Pensé en otra opción - para llamar a la forma de parámetros, a continuación, por las funciones de la API para escribir en los campos de edición de los valores de los parámetros.

Por cierto, ¿podríais aconsejar cómo hacer que el formulario de parámetros NO aparezca al inicio del Asesor Experto? Lo llamo programáticamente, por lo que no tiene sentido en el primer programa.

No entiendo la lógica de por qué hacerlo) Hay OOP, cualquier EA puede ser envuelto en una clase, y llamarlo desde dentro de una clase con parámetros obtenidos / calculados como se desee. Y eso sin salir del ámbito de la μl.

No sé cómo hacer que un formulario no se muestre en el inicio manual.

Si para muletear más, es posible escribir parámetros en parammysov.set y leerlo. Pero este es un complemento complejo.

 
Maxim Kuznetsov:

generar programáticamente una plantilla con todos los parámetros necesarios y luego ChartApplyTemplate()

¡Maxim, brillante! No sabía que los ajustes de EA se guardan en una plantilla. Esta opción es la más fácil, así que lo haré así. Sólo hay un problema: no muestra la forma de los parámetros al inicio.

Pero no es crítico, sólo necesitaría una vez más presionar ОК.

 

hola, ayúdame a crear un algoritmo sencillo en el que se eliminen los pedidos antiguos si se forman otros nuevos...

 

Chicos. MT4 no funciona. Muestra la hora de ayer como 23:59. La misma situación en línea. La misma situación desde el teléfono a través de Internet móvil. ¿Qué es?

 
dvimax:

Chicos. MT4 no funciona. Muestra la hora de ayer como 23:59. La misma situación en línea. Desde el teléfono a través de Internet móvil misma situación. ¿Qué es eso?

Puedo adivinar que es un día libre.

 
Estimados señores Cómo restaurar los nombres no identificados de los instrumentos bajo el gráfico de MT4
Razón de la queja: