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
"Apoteosis" considero una expresión de fxsaber, sobre la que él mismo no pudo decir cómo funciona, afirmando simplemente que "el código ha sido probado repetidamente, y funciona". Eso, en mi opinión, no debería ser así:
Este código comprueba si se puedeejecutar una orden otfFilingType, y la devuelve si está disponible en strSymbol, en caso contrario es correcta.
No tengo ni idea de cómo funciona. Y sólo confiar en la autoridad de fxsaber.
¿Quizás alguien pueda explicarlo?
Para entenderlo, basta con desmontar esta engorrosa expresión de retorno en sus componentes.
Tu ejemplo de "el fin justifica los medios"
por cierto este código es como un espagueti, pero teniendo en cuenta que es probablemente el autor más útil en kodobase en este momento y yo mismo uso sus códigos como es, que alguien más critique
por cierto este código es como un espagueti, pero dado que es probablemente el autor más útil en kodobase ahora mismo y yo mismo uso sus códigos tal cual, que alguien más critique
no se trata de criticar, estoy tratando de averiguar lo que puede hacer.... Pero como se muestra en la entrevista, y el propio@fxsaber admitió - nada más que dolores de cabeza
SZZ: es muy probable, que la variante inicial del pequeño monstruo se viera más claramente ;)
ZS: alta probabilidad de que la versión original del monstruito pareciera más evidente ;)
Lo tomé del ZIP (contiene la primera versión).
Pero después se necesitó más y más funcionalidad, y el código se fue desarrollando poco a poco. Con la función de llenado fue diferente. No se ha desarrollado nada allí, se ha escrito de golpe.
Sólo el compilador sabe exactamente lo que hará. Los compiladores modernos tienen una eurística asombrosa. Se adaptan al codificador medio y ya saben mejor lo que necesita. Lo mejor que puede hacer un compilador es escribir un código sencillo y directo con funciones cortas. Es más fácil y eficiente para el compilador analizar el gráfico del código fuente que consta de muchos nodos de función para construir el programa resultante. Sólo tendrá un efecto positivo en la productividad, ya que las funciones necesarias estarán bloqueadas en todos los lugares adecuados.
Tienes toda la razón.
Si hablamos de MQL5, puedes olvidarte de los métodos de "optimización" de hace 10-20-30 años. Tienes que escribir el código más legible. Es eso, y no el rollo de los hackers y las puras linduras.
¿Por qué?
Como el compilador pasará por 5-10 ciclos de reordenación del código, es sorprendentemente claro y conciso, por no mencionar el uso de docenas de patrones de optimización.
El compilador MQL5 se divierte con los intentos humanos de hacer +2% de velocidad.
Esto es una obra de arte en realidad. Se calcularon 8 raíces en 4 llamadas del comando ensamblador. Se han calculado dos números dobles en una sola llamada.Si te interesa, comprueba cómo se han reordenado y calculado cálculos matemáticos van sin bifurcarse y un comando (128 bits de datos) calcula dos raíces a la vez
Este código se convierte en el siguiente código SSE en ensamblador:
La conclusión general: las matemáticas han ganado en MQL5 debido a la perfecta optimización. Aquí no pierden las matrices, sino que ganan las matemáticas.
¿Por qué?
Por el contrario, es mucho más fácil con dos "if" que con el operador "or".
Es más fácil trazar una condición primero, y salir de la función si es verdadera, y luego comprobar la otra condición, y también salir si es verdadera, que intentar averiguar el resultado de una condición compleja con "o" lógica (que puede confundirse con "y"), y trazar ambas formas de retorno.
Es bastante gracioso leer más abajo que "la justificación de tal es la depuración", porque significa que tal código es mucho más comprensible (si no, ¿por qué está en depuración?).
"Apoteosis" considero una expresión de fxsaber, sobre la que él mismo no pudo decir cómo funciona, afirmando simplemente que "el código ha sido probado repetidamente, y funciona". Eso, en mi opinión, no debería ser así:
Este código comprueba si se puedeejecutar una orden otfFilingType, y la devuelve si está disponible en strSymbol, en caso contrario es correcta.
No tengo ni idea de cómo funciona. Y sólo confiar en la autoridad de fxsaber.
¿Quizásalguien pueda explicarlo?
Una vez me senté y lo desmonté paso a paso, parece que necesité un bolígrafo y un papel)
Por qué este análisis fue útil - entendí que en caso de cambio de la estructura de la enumeración todo se romperá) ya que se utilizan relaciones de enteros de los valores de la enumeración (que de acuerdo con la idea de las enumeraciones en sí debe ser encapsulado). Yo mismo intento evitarlo, como mucho la proporción más-menos. Para los que tratan con WinAPI, probablemente les resulte familiar.
Para entenderlo, sólo hay que desmontar esa expresión tan poco manejable de los retornados.
Sí, eso es lo que he intentado. Pero no estaba lo suficientemente motivado para desmontarlo...
Absolutamente correcto.
Si hablamos de MQL5, puedes olvidarte de los métodos de "optimización" de hace 10-20-30 años. Tienes que escribir el código más legible. Es eso, y no el rollo de los hackers y las puras linduras.
Exactamente. Hace tiempo que llegué a esta conclusión. Pero no porque crea que el compilador lo hará mejor. Pero porque la principal fuente de problemas en el código es el propio ser humano, lo que significa que hay que escribir el código de forma que sea lo más sencillo y transparente posible.
Si no puedes hacerlo "transparente", tienes que escribir comentarios detallados de por qué es así y no así.
Y el compilador... Incluso si no lo hace con la suficiente eficacia, es menos un problema que un posible error debido a que no se tienen en cuenta algunos aspectos del programa.
El código es muy simple y corto(descripción). Si lo escribes en FP, sería interesante comparar.
Por favor. C# en estilo FP:
FP está bastante torcido, por supuesto (ya que fue escrito por un codificador de FP torcido, en el lenguaje incompleto de FP C#).Pero el objetivo es mostrar que en la jerga moderna de OOP también se puede hacer en FP. Por supuesto, es limitado, no es F# o Haskell, pero nadie prohíbe escribir en estilo FP. Utilice la inmutabilidad, las funciones de orden superior, los cierres, los mapeos, etc. - eres bienvenido a hacerlo todo. Pero esto no hace que el código sea perfecto por alguna razón.
s.w. La estructura general del código imita deliberadamente el original. Aunque en el buen sentido debe ser bastante diferente en FP, sin objetos complejos y foreach imitando Mapa, pero el artista pintó como pudo.
Por favor. C# en estilo FP:
Entiendo que es una cuestión de costumbre y de conocimiento de la sintaxis, pero me cuesta mucho entrar en el código a pesar de ser el autor original.
Foro sobre comercio, sistemas de comercio automatizados y pruebas de estrategias
Opinión interesante sobre OOP
fxsaber, 2021.01.29 13:39
Una nimiedad.
Técnicamente, es probable que sea un OOP. Pero la parte más primitiva. Sin embargo, no podría hacerlo sin él. Posiblemente, la reorganización del cerebro tonto y remachar esto.