Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1193

 
jamalhan2016:
Hola, ¿necesito ayuda? ¿Qué debo hacer para transferir una cuenta de mql4 a mql5?

es necesario abrir una cuenta de mt5 y transferir dinero de esa cuenta a una cuenta de mt5 (con su broker)

 
Koldun Zloy:

No se puede desde una DLL. Olvídalo. ¡No puedes, eso es todo!

Es una pena y extraño que haya aprendido a programar en 3 años, pero mql es lo mismo que ahora. Ciertamente, no es una prioridad, pero poco a poco (muy poco a poco) hay que estudiar esta cuestión.

 
Stanislav Korotky:

Esto es algo antiguo (se menciona otro servidor). Más de una vez este año, la última vez hace un mes en MetaQuotes-Demo una nueva cuenta de demostración se creó normalmente.

Además, si el servidor está eliminado, ¿por qué se muestra y hace ping en el asistente de apertura de cuentas? El atasco se produce sólo en el último paso.

He abierto una cuenta en el terminal móvil. Al principio tuve que entrar en la cuenta mql5 en el terminal y luego se añadió la cuenta demo. Me ha costado una hora añadirlo, pero ha funcionado.
 
Valeriy Yastremskiy:
He abierto una cuenta en el terminal móvil. Al principio tuve que autorizar mi cuenta mql5 en el terminal y luego se añadió la cuenta demo. Me ha costado una hora añadirlo, pero ha funcionado.

Ahora funciona bien (al instante) en mi PC.

 
Cuando mql4 crea arrays, ¿se puede cambiar el tamaño del array de mql4 por medios de terceros (otros lenguajes de programación)?
 
Hola!

Puede que este sea un tema primitivo, pero por más que he buscado, no he podido encontrar ninguna respuesta.

¿Pueden aconsejar cómo encontrar mediante programación los objetos de un determinado tipo en un gráfico (por ejemplo, 4-5) que se hayan establecido manualmente con anterioridad y guardar sus nombres, coordenadas y otras propiedades en el búfer para su posterior uso en el EA?

O, ¿qué sería más fácil, cómo leer el nombre, las coordenadas y otras propiedades de un objeto gráfico en el buffer del programa o un simple conjunto de variables inmediatamente después de su colocación con el ratón en el gráfico?
Se supone que las propiedades de este objeto pueden ajustarse manualmente o con el ratón, y luego estos datos se registran como datos finales para su uso posterior en el EA.
 
vladmirad:
Hola!

Puede que esté sacando un tema primitivo y trivial, pero por más que he buscado, no he encontrado una respuesta.

¿Puede usted aconsejar cómo encontrar manualmente los objetos de un determinado tipo en un gráfico (por ejemplo, 4-5) y guardar sus nombres, coordenadas y otras propiedades en el buffer para su posterior uso en el EA?

O, ¿qué sería más fácil, cómo leer el nombre, las coordenadas y otras propiedades de un objeto gráfico en el buffer del programa o un simple conjunto de variables inmediatamente después de su colocación con el ratón en el gráfico?
Se supone que las propiedades de este objeto pueden ajustarse manualmente o con el ratón, y luego estos datos se registran como datos finales para su uso posterior en el EA.

Estudio - Guía de Referencia MQL4 / Objetos Gráficos / ObjectFind() busca un objeto con el nombre especificado, ObjectGet() devuelve propiedades (por ejemplo, el precio de las líneas de puntos finales), ObjectSet() cambia las propiedades. De nuevo, el objeto debe tener un nombre. Hay muchas funciones que trabajan con objetos. Y, por supuesto, hay que calcularlos correctamente a través del bucle, no es algo rápido. No sé si se puede devolver el nombre del objeto, de hecho, el nombre lo da el usuario y se puede guardar en un array y copiarlo después para reducir la carga.

 
vladmirad:
Hola!

Puede que este sea un tema primitivo, pero por más que he buscado, no he podido encontrar ninguna respuesta.

¿Pueden aconsejar cómo encontrar mediante programación los objetos de un determinado tipo en un gráfico (por ejemplo, 4-5) que se hayan establecido manualmente con anterioridad y guardar sus nombres, coordenadas y otras propiedades en la memoria intermedia para su posterior uso en el EA?

O, ¿qué sería más fácil, cómo leer el nombre, las coordenadas y otras propiedades de un objeto gráfico en el buffer del programa o un simple conjunto de variables inmediatamente después de su colocación con el ratón en el gráfico?
Se supone que las propiedades de este objeto pueden ajustarse manualmente o con el ratón, y luego estos datos se registran como datos finales para su uso posterior en el EA.
Hola.
Empiece por monitorizar el estado del gráfico en OnChartEvent() https://www.mql5.com/ru/docs/event_handlers/onchartevent
Hay unos cuantos eventos que necesita:
CHARTEVENT_OBJECT_CREATE Crear un objeto gráfico
CHARTEVENT_OBJECT_CHANGE Cambiar las propiedades de un objeto gráfico usando el diálogo de propiedades
CHARTEVENT_OBJECT_DELETE Eliminar objeto gráfico
https://www.mql5.com/ru/docs/constants/chartconstants/enum_chartevents
Registrar todos los parámetros en el manejador OnChartEvent() y ver sus valores cuando añada/modifique/elimine objetos gráficos. Esto te orientará hacia dónde ir.
 
vladmirad:
Hola!

Puede que esté planteando un tema primitivo y obsoleto, pero cuantas veces he buscado, no he encontrado respuesta.

¿Cómo puedo encontrar manualmente objetos de un determinado tipo en un gráfico (por ejemplo, 4-5) y guardar sus nombres, coordenadas y otras propiedades en el buffer para su posterior uso en el EA?

O, ¿qué sería más fácil, cómo leer el nombre, las coordenadas y otras propiedades de un objeto gráfico en el buffer del programa o un simple conjunto de variables inmediatamente después de su colocación con el ratón en el gráfico?
Se supone que las propiedades de este objeto pueden ajustarse manualmente o con el ratón, y luego estos datos se registran como datos finales para su uso posterior en el EA.

Puede encontrar y registrar objetos de un tipo determinado con sus coordenadas de la siguiente manera:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart(){
  int total = ObjectsTotal(0, subwin, type);
  int i = 0;
  string name;
  datetime time1, time2;
  double price1, price2;
  for(; i < total; i++) {
    name = ObjectName(0, i, subwin, type);
    Print("Object: \"", name, "\"");
    time1 = (datetime)ObjectGetInteger(0, name, OBJPROP_TIME, 0);
    time2 = (datetime)ObjectGetInteger(0, name, OBJPROP_TIME, 1);
    price1 = ObjectGetDouble(0, name, OBJPROP_PRICE, 0);
    price2 = ObjectGetDouble(0, name, OBJPROP_PRICE, 1);
    Print("Time1: ", TimeToString(time1), "; Price1: ", DoubleToString(price1, Digits()), "; Time2: ", TimeToString(time2), "; Price2: ", DoubleToString(price2, Digits()), ".");
  }
}

Puedes guardar cualquier dato en un archivo. Y en el Asesor Experto, haga un cargador que agregue los objetos apropiados, y luego cargue los datos del archivo en ellos. Pero al menos esboza un código fuente para su tarea específica y lo publica aquí.

Archivos adjuntos:
ObjGet.mq5  4 kb
 
Seric29:

Estudio - Guía de Referencia MQL4 / Objetos Gráficos / ObjectFind() busca un objeto con el nombre especificado, ObjectGet() devuelve propiedades (por ejemplo, el precio de las líneas de puntos finales), ObjectSet() cambia las propiedades. De nuevo, el objeto debe tener un nombre. Hay muchas funciones que trabajan con objetos. Y por supuesto hay que calcularlos correctamente a través del bucle, no es algo rápido. No sé si se puede devolver el nombre del objeto, de hecho el nombre lo da el usuario y se puede guardar en un array y copiarlo después para reducir la carga.

Gracias por el consejo, estoy al tanto de estas funciones.
Pero, ¿cómo podemos utilizarlos para detectar automáticamente un objeto en un gráfico y leer sus parámetros, si no conocemos su nombre a priori?
Al dibujar un objeto en un gráfico con el ratón, el sistema da su nombre.

Por supuesto, no es difícil organizar la introducción manual de todos los datos necesarios del objeto a partir de su tabla de propiedades, pero entonces ¿por qué la automatización?
Pero cómo pasar programáticamente el nombre del objeto, y que luego se puedan utilizar todas las funciones que has especificado, aún no me queda claro...