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
WebRequest no funciona en indicadores (y esta librería permite saltarse esta limitación). Un hilo separado en MT se asigna sólo a expertos y scripts, pero los scripts no funcionan con eventos.
Ya veo, gracias. No lo sabía.
En MT4 1146 los recursos son totalmente funcionales. La idea puede ser portado con seguridad a la cuarta versión.
Sí, esa es la idea. Pero sólo funcionará en MT5.
He implementado esta idea (con objetos gráficos).
utilizar iCustom-indicador como un gestor, y se pondrá en marcha WebRequest en su guión para cada WebRequestAsync.
El diseño debe ser más simple y más fiable, porque no habrá ventanas adicionales.
El resultado es el siguiente.
Los scripts no funcionan porque no puedo pasarles un parámetro al inicio - parece que los scripts no son nada amigables con las plantillas de gráficos. El hecho de que se las arreglan para ejecutarlos en absoluto con la ayuda de la biblioteca Expert.mqh (aunque sin parámetros), por analogía con Asesores Expertos - parece ser un feliz accidente.
Si ejecutas las web-requests no en scripts sino en Expert Advisors, el esquema funciona a medias. Es decir, los parámetros de entrada funcionan normalmente y conseguimos pasar el nombre del recurso con datos al Asesor Experto. Pero por alguna razón, en los Asesores Expertos lanzados en objetos gráficos sólo se dispara el evento OnInit, mientras que, por ejemplo, OnTick u OnTimer no. No es muy agradable ejecutar una petición web en OnInit, pero es posible. Sin embargo, toda esta lógica se ralentiza terriblemente, porque abrir un objeto gráfico para cada petición causa mucha sobrecarga.
Implementado esta idea (con objetos gráficos).
El resultado es el siguiente.
Los scripts no funcionan porque no puedo pasarles un parámetro al lanzarlos - parece que los scripts no son para nada amigables con las plantillas de gráficos. El hecho de que puedan ser lanzados usando la librería Expert.mqh (aunque sin parámetros), por analogía con los Asesores Expertos - parece ser un feliz accidente.
Tuve que estudiar el tema. Los scripts son ejecutados por la plantilla y en un gráfico normal, pero sin la posibilidad de establecer parámetros de entrada. Así que el método PlaySound definitivamente funcionará.
Si ejecutamos las consultas web no en scripts sino en Asesores Expertos, el esquema funciona a medias. Es decir, los parámetros de entrada funcionan normalmente y conseguimos pasar el nombre del recurso con datos al Asesor Experto. Pero por alguna razón, en los Asesores Expertos lanzados en objetos gráficos sólo se dispara el evento OnInit, mientras que, por ejemplo, OnTick u OnTimer no. No es muy agradable ejecutar una petición web en OnInit, pero es posible. Sin embargo, toda esta lógica se ralentiza terriblemente, porque la apertura de un objeto gráfico para cada solicitud le da un montón de sobrecarga.
Nada me funciona.
Tuve que estudiar el tema. Las secuencias de comandos se ejecutan por la plantilla y en un gráfico regular, pero sin la posibilidad de establecer parámetros de entrada. Así que el método PlaySound definitivamente funcionará.
Nada funciona para mí.
El conjunto que envié en un mensaje privado funciona para mí a través de OnInit en el Asesor de Expertos. Se puede ver en los registros. Envíame tus registros.
Estoy publicando una variante alternativa de lanzamiento de solicitudes web - con la ayuda de objetos gráficos, en la que se aplica una plantilla con un ayudante experto. Se puede utilizar tanto de expertos como de indicadores. Las dependencias son las mismas que en el artículo. Directamente nuevos archivos de la aplicación del enfoque:
Para cada consulta se crea un objeto, se crea un experto-asesor en él, el objeto se elimina cuando la consulta ha terminado. Los datos de la consulta y los resultados se intercambian mediante recursos, como en el artículo.
A juzgar por los registros, este mecanismo no proporciona un paralelismo completo de la ejecución de consultas, porque los objetos probablemente comparten una cola de eventos común. Ejemplo de registro:
Prueba el Resource_Data.mqh actualizado, los retrasos al transferir páginas web deberían desaparecer.
Versión antigua
Nueva versión
Prueba el Resource_Data.mqh actualizado, los retrasos al transferir páginas web deberían desaparecer.
Versión antigua
Nueva versión
¿Qué has tenido que hacer para acelerar 20 veces? ¿Se mantiene la compatibilidad con el código antiguo, no es necesario cambiar las llamadas al cliente?
¿Qué has tenido que hacer para acelerar 20 veces? La compatibilidad con el código antiguo se mantiene, no hay que cambiar las llamadas al cliente?
La compatibilidad se mantiene.
Foro sobre negociación, sistemas de negociación automatizados y prueba de estrategias de negociación.
Bibliotecas: TradeTransactions
fxsaber, 2018.12.09 01:23 pm.
En los fuentes de la librería está Convert.mqh, que convierte rápidamente un array de un tipo en un array de otro.
TypeToBytes era lento (ahora solo se usa si ninguno de los tipos de array es múltiplo del otro) en arrays grandes.
TypeToBytes no se utiliza para uchar[].