Errores, fallos, preguntas - página 1937

 
Renat Fatkhullin:
Lo siento, pero no tengo tiempo para ocuparme de enseñar programación a todos los principiantes. Sobre todo cuando ves que la persona ni siquiera ha pasado por lo básico para entender la programación y pregunta cosas triviales.


Pero te mostraré la dirección:

  1. Documentación de MQL5
  2. Base de código
  3. Artículos
  4. Foro (no en modo "escribe para mí, ¿por qué no me enseñas y haces mi trabajo?")
  5. Autónomos (pueden escribirlo correctamente aquí)
  6. Trabajo independiente con análisis reflexivo "¿por qué esta envoltura debe ralentizar y desperdiciar recursos, tal vez reescribir de manera óptima?"
  7. Utilizar un perfilador que muestre el consumo real de recursos en cada línea de código

¡Gracias Renat!

¡No me equivoqué contigo!

Sugiero obtener el derecho de descargar ME y comunicarme con usted en esencia para proporcionar a través de la LC un diploma de educación superior en el campo de "Programador".

 
Alexey Viktorov:

No tengo ningún deseo de comunicarme de esta manera. En lugar de tratar de entender lo que se dice, de averiguar lo que va a pasar, se plantean unas objeciones increíbles.

¿Por qué fantaseas? Entendí tu idea y confirmé que funciona, y tendrá efecto, si la solicitud se hace una sola vez y si se sabe cuántas barras son necesarias para que el EA funcione.

¿O tal vez sugirió utilizar la estructura de una manera diferente? Entonces, por favor, explíquelo, ¡y no se ofenda!

 
Aleksey Vyazmikin:

Sugiero que con el fin de obtener el derecho a descargar ME y comunicarse con usted en esencia proporcionar un diploma de educación superior en el campo de "Programador" a través de la LC.

Je... Un título universitario no es garantía de nada.

Básicamente, puedo ofrecerle esta variante (no comprobé la corrección del código, sólo para el probador, el símbolo actual, el período actual):

double iClose(int index)
  {
   double arr[ 1 ];
   return( ( CopyClose(_Symbol,_Period,index,1,arr) == 1 )? arr[ 0 ] : WRONG_VALUE );
  }

Puedes hacer el resto de las funciones por analogía.

 
Renat Fatkhullin:
Lo siento, pero no tengo tiempo para ocuparme de enseñar programación a todos los principiantes. Sobre todo cuando ves que la persona ni siquiera ha pasado por lo básico para entender la programación y pregunta cosas triviales.


Pero te mostraré la dirección:

  1. Documentación de MQL5
  2. Base de código
  3. Artículos
  4. Foro (no en plan "escribe para mí, ¿por qué no me enseñas y haces mi trabajo?")
  5. Autónomos (pueden escribirlo correctamente aquí)
  6. Trabajo independiente con un análisis reflexivo de "¿por qué esta envoltura debe ralentizar y desperdiciar recursos, tal vez reescribir de manera óptima?"
  7. Utilizar un perfilador que muestre el consumo real de recursos en cada línea de código

¿Por qué no iniciamos un hilo sobre las mejores (más eficientes) prácticas de programación directamente en MT5? Había, por ejemplo, una rama sobre la realización de iBarShift. También se pueden mejorar otros matices juntos. La gente, en general, no quiere aprender a programar, sino construir rápida y cómodamente un Asesor Experto - lo siento, pero es así. Y el experto, por supuesto, no debe frenar ni chocar. Si se pudiera, como los ladrillos ya hechos, juntarlos "a la perfección", sería genial. Porque hay todo tipo de "lo que no está bien" en todas partes. Y no siempre es evidente cuál es el "mal". ¿Qué tal "la manera correcta"?

La documentación es bastante minimalista en muchos aspectos.

El código base es una gran pila en la que hay que rebuscar deliberadamente durante días para encontrar el código adecuado.

Artículos - por regla general, los autores y altamente especializado, más en el comercio que la programación (sin embargo, la dirección del recurso debe ser considerado), y los que son sobre la programación - en su mayoría sobre los trucos.

Aquí es donde está el foro. Hacen preguntas aquí y las enviamos a... aquí también.

El trabajo autónomo no es garantía de buenas prácticas ni de formación.

Trabajo por cuenta propia, incluso con un perfilador - por supuesto presente, pero no hay tiempo suficiente para todo. Algo que quiero tomar en forma de bloques de construcción ya hechos.

 
Aleksey Vyazmikin:

Sugiero que para que se le permita descargar ME y comunicarse con usted en los méritos, debe proporcionar un grado de programación a través de la LC.

No hace falta un diploma para comunicarse, pero sí para decir "¿Y dónde está la alabada velocidad de MT5?".

Se te han señalado tus errores varias veces, pero en lugar de ello sigues torciendo la línea de "¡tengo derecho a no saber, enséñame siete!".
 
Alexey Kozitsyn:

Je... Un título universitario no es garantía de nada.

Básicamente, puedo ofrecerle esta variante (no comprobé la corrección del código, sólo para el probador, el símbolo actual, el período actual):

Puedes hacer las otras funciones por analogía.

Gracias. Intentaré hacerlo según su receta.

En cuanto al diploma, estoy de acuerdo, pero hay sectores en los que no se puede trabajar sin él, por ejemplo, para llevar a cabo negocios en los tribunales como representante de casos CAS. Sin embargo, de esta manera los desarrolladores no pueden perder el tiempo en los comerciantes, sino prestar atención a los programadores, y como producto, estar en un nivel superior en el ranking de los lenguajes de programación.

 
Stanislav Korotky:

¿Por qué no iniciamos un hilo sobre las mejores (más efectivas) prácticas de programación directamente para MT5? Había, por ejemplo, una rama sobre la implementación de iBarShift. También se pueden mejorar otros matices juntos. La gente, en general, no quiere aprender a programar, sino construir rápida y cómodamente un Asesor Experto - lo siento, pero es así. Y el experto, por supuesto, no debe frenar ni chocar. Si se pudiera, como los ladrillos ya hechos, juntarlos "a la perfección", sería genial. Porque hay todo tipo de "lo que no está bien" en todas partes. Y no siempre es evidente cuál es el "mal". ¿Qué tal "la manera correcta"?

La documentación es bastante minimalista en muchos aspectos.

El código base es una gran pila en la que hay que rebuscar deliberadamente durante días para encontrar el código adecuado.

Artículos - por regla general, los autores y altamente especializado, más en el comercio que la programación (sin embargo, la dirección del recurso debe ser considerado), y los que son sobre la programación - en su mayoría sobre los trucos.

Aquí es donde está el foro. Hacen preguntas aquí y las enviamos a... aquí también.

El trabajo autónomo no es garantía de buenas prácticas ni de formación.

Trabajo por cuenta propia, incluso con un perfilador - por supuesto presente, pero no hay tiempo suficiente para todo. Algunas cosas las quiero tomar en forma de ladrillos ya hechos.

Estoy totalmente de acuerdo contigo.

Me reprenden por hacerlo "mal" y me envían al lugar donde lo aprendí...

 
Renat Fatkhullin:

No hace falta un diploma para comunicarse, pero sí para decir "¿Y dónde está la alabada velocidad de MT5?".

Se te han señalado tus errores en varias ocasiones, pero en cambio sigues torciendo la línea de "¡tengo derecho a no saber, enséñame siete!".

Las emociones no han sido canceladas - ¡las he reportado con la esperanza de recibir ayuda!

Quiero equivocarme, estoy dispuesto a cambiar el código, pero quiero creer que todo no será en vano.

No estoy de acuerdo contigo en que reclame "tengo derecho a no saber, ¡enséñame siete!". - En cuanto a la obligación de enseñar, yo personalmente esperaba que me ayudara, como experto, y que me diera consejos concretos sobre cómo se deben hacer las cosas.

El método de cada autor lo considero y lo pruebo, lo que se desprende de este hilo y por lo que son "¡gracias!".


 
Aleksey Vyazmikin:

Ya le han aconsejado una solución preparada: https://www.mql5.com/ru/code/18305

En función de sus necesidades:

Tengo bucles en mi código, la cantidad de cálculos puede no ser conocida de antemano.

Tengo ciclos en mi código y la cantidad de cálculos puede ser desconocida.

Высокопроизводительная библиотека iTimeSeries
Высокопроизводительная библиотека iTimeSeries
  • votos: 20
  • 2017.05.25
  • nicholishen
  • www.mql5.com
Эта библиотека предоставляет молниеносный доступ к таймсериям для реализации привычных методов MQL4 (например, iBarShift) в чувствительных к задержкам приложениях на MQL5.
 
Alexey Kozitsyn:

Básicamente, puedo ofrecerle esta variante (no he comprobado la corrección del código, sólo para el probador, símbolo actual, período actual):

Puedes hacer otras funciones por analogía.

Probó su variante - dentro del margen de error de cambio

Era:
2017.07.21 17:23:20.046 Núcleo 1 Si-9.17,M1: 107509 ticks, 35385 barras generadas. Entorno sincronizado a las 0:00:00.032. Prueba superada en 0:02:52.037 (incluyendo el preprocesamiento de ticks 0:00:00.031).
2017.07.21 17:23:20.046 Núcleo 1 Si-9.17,M1: tiempo total desde el inicio de la sesión hasta el fin de la prueba 0:02:52.069 (incluyendo 0:00:00.032 para la sincronización de los datos del historial)
2017.07.21 17:23:20.046 Núcleo 1 351 Mb de memoria utilizada, incluidos 32 Mb de datos históricos y 64 Mb de datos de ticks

Se convirtió con su código
2017.07.21 17:27:37.393 Núcleo 1 Si-9.17,M1: 107509 ticks, 35385 barras generadas. Entorno sincronizado a las 0:00:00.031. Prueba superada en 0:02:58.013 (incluyendo el preprocesamiento de ticks 0:00:00.031).
2017.07.21 17:27:37.393 Núcleo 1 Si-9.17,M1: tiempo total desde el inicio de la sesión hasta el fin de la prueba 0:02:58.044 (incluyendo 0:00:00.031 para la sincronización de los datos del historial)
2017.07.21 17:27:37.393 Núcleo 1 352 Mb de memoria utilizada, incluyendo 32 Mb de datos históricos, 64 Mb de datos de ticks

MT4
2017.07.21 17:27:57.070 RUBRUR,M1: 225314 eventos de tick (35701 barras, 231783 estados de barra) procesados en 0:00:04.306 (tiempo total 0:00:11.357)