![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Una vez que te conviertes en programador, tienes que entender que eres tú quien empieza a consumir recursos con tus peticiones. Llamar a funciones caras no significa que se pueda desconectar de la cuestión de "cómo se manejan realmente los recursos".
La mejor manera es publicar el código completo aquí en el foro y el área del problema será detectada inmediatamente. Si no puedes hacerlo aquí, puedes hacerlo en el Service Desk (el código se borrará después de las comprobaciones).
ps: nunca tenemos problemas cuando el sistema operativo dice que no hay suficiente memoria y nunca culpamos a Microsoft por ello.
De todos modos, escribiré lo que me abstuve de hacer antes.
Sí, soy consciente de que hay empresas interesadas en forzar la venta de productos y aumentar los beneficios por cualquier medio. Hay conspiraciones de cárteles, por ejemplo. Y Microsoft, que se cree que es notorio por los choques cíclicos de programas para ralentizar su sufrido sistema operativo (lo que bien puede ser cierto), está casi constantemente en un estado de connivencia con los gigantes del hardware que también sueñan con retorcerse las manos al apresurarse a vender su nuevo y caro hardware al consumidor de Windows para reemplazar el viejo y perfectamente utilizable que aún tiene que vivir en plataformas Unix o en un viejo Windows.
El MQ nunca me ha dado la sensación de querer atarme con una aguja de hierro y dejarme sin ropa interior. Tanto MT4 como MT5 siempre han ofrecido una capacidad de respuesta y una facilidad de uso decentes a lo largo de los años, especialmente cuando se comparan con esas aplicaciones relativamente nuevas, omnipresentes y poco manejables de .NET Framework. Así que no hay nada malo en ello, que es lo que me gustaría ver en el futuro. Es importante disponer de información exhaustiva sobre las nuevas construcciones y de información complementaria sobre los cambios en los requisitos mínimos, etc., para saber para qué prepararse mental, intelectual y económicamente.
Y como nota al margen, respecto a las acusaciones de los desarrolladores dependientes hacia los desarrolladores primarios: Microsoft no obliga a nadie a actualizar sin alternativa. Por alguna razón no puedes desactivar las actualizaciones automáticas. Así que.
Seguiré escribiendo lo que me abstuve de escribir antes.
No habrás invertido más de 5 minutos en crear una aplicación de atención al cliente. Y quizá hubiera recibido una respuesta definitiva al día siguiente.
Pero prefieres discutir con Renat una conspiración de Microsoft contra los usuarios.
No digas después que realmente tienes un problema ;)
después de una tranquila actualización a la última compilación, los agentes borrados empezaron a caer:
Alguien está enviando datos erróneos. Antes de eso, los agentes se estrellaban silenciosamente (simplemente no lo notabas) debido a la división por 0. Esta división por cero no debería existir en principio, por lo que no teníamos la comprobación correspondiente. Este alguien puede no ser un intruso, por lo que estamos esperando una solicitud suya en el servicio de atención. No hemos podido reproducir este error nosotros mismos.
UPD
De repente vi la línea de registro
Esto demuestra que su agente fue efectivamente utilizado como agente remoto. Así que ya conoces el origen del problema. Me gustaría hablar con servicedesk
¿Qué es el
2012.12.19 21:33:50 Núcleo 01 2004.04.02 20:15:00 Violación de acceso escribir en 0x0000000000000009
Mostrado durante el backtest de la estrategia.
¿Qué es el
2012.12.19 21:33:50 Núcleo 01 2004.04.02 20:15:00 Violación de acceso escribir en 0x0000000000000009
Mostrado durante el backtest de la estrategia.
Error al enviar un mensaje a servicedesk
Renat, bueno, todavía tengo problemas con la versión de 32 bits, pero por primera vez tuve la oportunidad de probar el código en la versión x64 de MT5. Y esto es lo que descubrí...
No se produjeron esos errores que la versión de 32 bits del terminal produjo, pero hubo problemas con el dibujo inicial incompleto (es decir, antes de que cambiara manualmente a otros marcos temporales) de los diseños gráficos y el desplazamiento ocasional de los puntos de unión de algunos objetos de los extremos junto con el desplazamiento de las series gráficas de un indicador auxiliar. Hasta el último momento estuve preparando un flamante discurso para el ServiceDesk, pero tras una docena de lanzamientos del terminal (incluyendo incluso varios reinicios completos del ordenador) todo se estabilizó milagrosamente. No sé ni puedo adivinar la lógica de todo ello, pero mi impresión es que durante esas decenas de reinicios el terminal pareció "acelerarse" y finalmente se "adaptó" al SO y/o al indicador del terminal. Sí, suena místico, pero lógicamente no debería ser así: el único "ajuste" - es la carga completa del historial, el almacenamiento en caché de los plazos utilizados, el ajuste manual fino de las opciones del terminal y... Eso parece ser todo. Pero todo esto se hizo en el primer arranque, y las siguientes ejecuciones del terminal no han diferido de la segunda en sus estados (la última descarga de la historia y la adición de banderas de noticias al gráfico son irrelevantes, por lo que no las tenemos en cuenta).
Todavía estoy un poco confundido, supongo que las torceduras se mostrarán de forma semi-impregnada y entonces me ocuparé de ellas, pero todavía no es pronto, mientras tanto - optimización de código planificada. Si es interesante probar el código por sí mismo, hágamelo saber antes de que desaparezca de nuevo.
Mira el catálogo de la historia y verás cientos de megabytes de datos históricos.
¿Por "milagrosamente estabilizado" quiere decir que toda la historia se ha hinchado? Así que es de esperar: la historia se bombea por necesidad y puede llevar tiempo.
Mira el catálogo de la historia y verás cientos de megabytes de datos históricos.
Lo contrario es cierto. Bajo el control visual personal se descarga todo el historial en el primer inicio, al final de la descarga se comprueba con la tecla Home con ir al principio de 1994 en M1. A continuación, paso por alto manualmente los plazos que utilizo con frecuencia, así como los relevantes para el indicador multitemporal, espero a que se formen y vuelvo a cargar el terminal. Eso es todo.
Todas las pequeñas descargas posteriores de nuevos datos del historial no tienen ningún efecto principal, es decir, teóricamente, el terminal puede considerarse "estabilizado" tras la carga completa del historial al final de la primera ejecución o, para mayor fiabilidad, al principio de la segunda ejecución, cuando se garantiza que los plazos no generados por M1 se han asentado en el disco duro. Pero esto es teórico. Por alguna razón, todo se asentó (me refiero al correcto funcionamiento del indicador) aproximadamente al décimo reinicio, aunque, recalco, la historia principal ya estaba cargada en el primero, y los siguientes no deberían poder hacer el tiempo en principio... Diría incluso lo contrario: cuanto más grande es la historia de una carrera a otra, mayor es el riesgo de que el indicador no se lo trague en alguna carrera concreta y falle, pero en realidad era al revés: cuanto más lejos iba, mejor funcionaba).
Así que tal vez hay algunos procesos ocultos y no evidentes para el usuario de la combinación de terminal o MT5 + OS, que optimizan la aplicación en el entorno operativo no inmediatamente, pero después de algunos n-tweaking. No modifico mi propio código fuente durante mucho tiempo, en lo que respecta a su compilación - sólo en el primer lanzamiento de MT5 recién instalado (cuya compilación es siempre la misma en este estudio). No hubo retoques después de la primera carrera. Toda esta misteriosa situación me ha recordado al menú"Inicio" de Windows, en el que las aplicaciones que se llamaban con frecuencia estaban disponibles primero en el tiempo (el sistema operativo recopilaba estadísticas, pero llevaba tiempo y una cierta cantidad de llamadas a los mismos programas). O la desfragmentación de los archivos de disco optimiza el acceso al disco y hace que las aplicaciones funcionen más rápido, que es lo mismo.
No me inclino a creer que haya implementado algo similar en MT5, de lo contrario, o bien lo reportó usted mismo, o bien le habrían pillado preguntando por ello en el foro hace tiempo. Así que todo es una hipótesis no confirmada basada en la experiencia.