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
¿Y cómo vas a hacer que el arrastre se adapte a los diferentes parámetros?
Preferiblemente, que conduzca a una tarea específica. Esta descripción no es muy clara. En mi práctica, el algoritmo no cambia al cambiar los parámetros externos. Se hace universal de antemano para cualquier valor de estos parámetros. Por lo tanto, no está muy claro lo que quiere decir. Descríbalo con un ejemplo concreto.
Gracias a la POO, el programa principal es muy breve y claro. Este es sólo el primer ejemplo que se me ocurre. Si necesita calcular el número de pedidos con frecuencia, las ventajas son evidentes. Es difícil entenderlo a la primera. Pero las funciones, incluso con parámetros, también fueron en su día una dificultad
Probemos con alguna tarea en particular. Si lo ha hecho, por favor, indíquelo.
Tarea específica. El cliente ha pedido un Asesor Experto para dos MAs, que incluiría todas las variantes de arrastre disponibles en la base de código, pero no se ralentizaría en el probador.
El EA también debería tener la posibilidad de actualizarse con nuevas variantes de arrastre en el futuro (a bajo coste).
Gracias a la POO, el programa principal es muy corto y claro. Este es sólo el primer ejemplo que se me ocurre. Si necesitamos calcular el número de pedidos con frecuencia, las ventajas son evidentes. Es difícil entenderlo a la primera. Pero las funciones, incluso con parámetros, también fueron en su día una dificultad
No entiendo, ¿por qué no hacer una función "int Número_órdenes()" que haga siempre el bucle anterior y devuelva el valor del contador "VENDER"?
Por ejemplo:
¿Por qué necesitamos una clase aquí?
Por ejemplo, hay que meter 100 variantes de trailing stop en un Asesor Experto. Cuando se programa de forma procedimental, se obtiene un lío como este:
100 fragmentos de código idénticos. Cuando el programa se está ejecutando, suele incluir sólo un trailing stop. Los 99 if restantes sólo consumen recursos.
Ahora la variante OOP. Durante la inicialización del Asesor Experto, escalamos el array con punteros según el número de barras de arrastre, creamos objetos sólo para las barras de arrastre habilitadas. Como resultado, el siguiente código funcionará siempre:
Si se habilita una barra de arrastre, entonces cnt=1, es decir, no hay nada innecesario.
Haz un array de nombres de funciones, elige el nombre del índice y accede.
La OOP no tiene nada que ver. Esta es una limitación del lenguaje que están tratando de resolver con la POO
No lo he probado, pero por ejemplo no se puede hacer un lenguaje no típico sin una OOP.
No entiendo por qué no hacer una función "int Número_órdenes()" que haga siempre el bucle anterior y devuelva el valor del contador "VENDER"?
Tarea específica. El cliente ha pedido un Asesor Experto para dos MAs, que incluiría todas las variantes de arrastre disponibles en la base de código, pero no se ralentizaría en el probador.
Y con la perspectiva de añadir nuevas variantes de arrastre en el futuro (no es caro).
Refinando la clase, obtendré x.SELL x.BUY x.ALL y lo que sea necesario. Y será muy fácil abordarlos. Clases OOP - para simplificar
Haz un array de nombres de funciones, elige un nombre del índice y llámalo.
No tiene nada que ver con la OOP. Se trata de una limitación del lenguaje que intentan resolver con la ayuda de la POO.
No hay ninguna llamada a la función por el nombre definido como una cadena. Y en aquellos lenguajes en los que existe, se hace a través de un hash de una tabla, es decir, es una terrible desventaja.
Una forma normal de resolver este problema sería utilizar punteros a funciones (sobre esto escribí aquí). Pero por qué usar sólo punteros, hay una manera más conveniente - OOP, que permite no sólo aprovechar los punteros de función, sino también estructurar convenientemente los datos y el código.