Autoaprendizaje del lenguaje MQL5 desde cero - página 49

 
MrBrooklin:

Peter, ¿creamos el código de seguimiento en el script? ¡Genial! Lo que has enumerado lo tomo ahora como secciones básicas y empiezo a describirlas con palabras, para que quede claro cómo escribir después funciones, bucles, etc. ¿Es esto correcto?

Saludos, Vladimir.

No se puede utilizar ningún script para el arrastre. Esto socava la idea misma de lo que estoy tratando de decirte.
Escribiré más tarde en mi ordenador.
Tenemos una línea general: sólo utilizamos funciones. Más adelante escribiré cómo.
 
Vasiliy Sokolov:
No se puede utilizar ningún script para el arrastre. Esto socava la idea misma de lo que estoy tratando de decirte.
Escribiré más tarde en el ordenador.
La línea general es la misma: sólo utilizamos funciones. Cómo - escribiré más tarde.

¡Lo tengo, Vassili! Entonces lo dejé todo en suspenso.

Saludos, Vladimir.

 
Vasiliy Sokolov:
No se puede utilizar ningún script para el arrastre. Esto socava la idea misma de lo que estoy tratando de decirte.
Escribiré más tarde en el ordenador.
La línea general es la misma: sólo utilizamos funciones. Más adelante escribiré cómo.
Así es como usamos las funciones en el script también, Vasiliy. Sí, es menos conveniente que en el Asesor Experto, pero Vladimir implementa el plan de autoaprendizaje. No es conveniente desviarse de él, porque puedes confundir completamente los objetivos y el material. Por lo tanto, he apoyado su deseo de hacer trazos en el guión, aunque no sea muy correcto.
 
MrBrooklin:

¡Lo tengo, Vassili! Entonces dejaré todo en suspenso.

Respetuosamente, Vladimir.

No hay ninguna diferencia fundamental en cuanto a dónde escribir las funciones de arrastre, lo principal es escribir y aprender.
 
Реter Konow:
No hay ninguna diferencia fundamental sobre dónde escribir las funciones de arrastre, lo principal es escribir y aprender.

No se puede llamar a OnTick en el script)

 
MrBrooklin:

¡Lo tengo, Vassili! Entonces dejaré todo en suspenso.

Respetuosamente, Vladimir.

Acerquémonos paso a paso a la cola. Ahora te propongo que escribas el algoritmo de arrastre en papel: es decir, que hagas un TdR detallado, punto por punto, sin un código de cómo debería funcionar en tu opinión. Trabajaremos con esto en el futuro.
 
Valeriy Yastremskiy:

No se puede llamar a OnTick en el script)

No iba a hacerlo. Habría bloqueado el hilo de la secuencia de comandos y habría estado siempre en bucle a través del entorno comercial. Es decir, lo haría todo a la vez de una manera brutal.
 
Vladimir Simakov:

Existe la observación de que una vez que se empieza a crujir, es difícil parar, y como consecuencia, el código del proyecto se convierte en lo que se conoce como d.c.

Déjeme explicarle:

  1. Usted tiene un proyecto con una solución intermedia de trabajo y el número de características implementadas cuenta=0.
  2. Nuestra tarea es implementar la función ++count.
  3. Para añadir las características que necesitamos:
    • escribir los métodos del árbol de objetos y conectar todas estas cosas a los manejadores de eventos con la lógica (tiempo estimado 3 horas *cuenta; cuenta=0).
    • escribir una muletilla en forma de variable global y utilizarla en varios métodos, donde la necesitemos (tiempo estimado 15 min. *contar.).
  4. Error de autonumeración (se trata de un informe de error para las metacomillas).
  5. Naturalmente, se eligió la versión de muleta (es realmente difícil hacernos trabajar en este caso)
  6. si (lo hicimos) goto 2
  7. Si no, todo se va a la mierda, gritando help-mi y leyendo comentarios hilarantes de que está mal hacer eso.

Espero que hayas prestado atención al hecho de que el contador de características implementadas, aumenta el tiempo de implementación de la siguiente característica, pero cuando se implementa correctamente, se pone a cero.

Esto es muy exagerado, pero así es como funciona en la vida real.

Lo que quiero decir es que si no reescribes el proyecto después de implementar todas las características, pasará a producción como un spoiler ilegible. Y luego, el ciclo de vida de cualquier proyecto conlleva un dolor de cabeza para la dirección: o poner a todo el equipo a refactorizar globalmente todo lo que han hilado (y los competidores no duermen, ellos, malvados, escriben nuevas funcionalidades), o seguir escribiendo muletillas y parchando bugs, filtrando a raudales.

Regulación y vuelta a la regulación. Y la excomunión por violaciones)))) y en un procedimiento monolítico todo puede ser implementado también))))

Aunque, vale, estoy de acuerdo, todo lo anterior puede seguir siendo, pero los nuevos trabajadores en las reglas es un coste extra).

Y para ser sinceros, desde luego, después de tener más de 3-5 fuentes de datos diferentes y más de 3 algoritmos de procesamiento distintos, las variables globales sin una regulación clara de su declaración son un mal.

En tiempo de ejecución, todas las variables computacionales se declaran globalmente. Después de procesarlas, puedes envolverlas con lo que quieras)

 
Valeriy Yastremskiy:

Regulación y vuelta a la regulación. Y para las infracciones, la excomunión))))) y en un procedimiento monolítico también se puede aplicar todo))))

Aunque, estoy de acuerdo, todo lo anterior se puede seguir haciendo, pero es demasiado caro poner nuevos empleados en el procedimiento)

Es por eso que es más fácil / más fácil / más barato para entrenar a los combatientes recién llegados comando "globales es el mal" - lágrimas, auto-disparo, la ira de los compañeros de edad inmediatamente disminuir el orden. Y las funciones complejas a través de los globales que los principiantes todavía no necesitan.
 
Vasiliy Sokolov:
No iba a hacerlo. Habría bloqueado el flujo del guión y en un eterno bucle habría sacudido el entorno comercial. Es decir, lo haría todo de una vez de forma brutal.

Esto es lo que me imaginaba, pero sólo con la función Sleep en el script y la posibilidad de establecer el período de sueño de 1 a 10 segundos.

Respetuosamente, Vladimir.

Razón de la queja: